RTEMS 4.11
Annotated Report
Mon Jan 10 07:27:35 2011

0004ac94 <TOD_MICROSECONDS_TO_TICKS>:                                 
uint32_t TOD_MICROSECONDS_TO_TICKS(                                   
  uint32_t microseconds                                               
)                                                                     
{                                                                     
  return (microseconds / rtems_configuration_get_microseconds_per_tick());
}                                                                     
   4ac94:	41f9 0005 fd30 	lea 5fd30 <Configuration+0xc>,%a0           <== NOT EXECUTED
#include <rtems/score/tod.h>                                          
                                                                      
uint32_t TOD_MICROSECONDS_TO_TICKS(                                   
  uint32_t microseconds                                               
)                                                                     
{                                                                     
   4ac9a:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return (microseconds / rtems_configuration_get_microseconds_per_tick());
}                                                                     
   4ac9e:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   4aca2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4aca4:	4c50 0000      	remul %a0@,%d0,%d0                          <== NOT EXECUTED
	...                                                                  
                                                                      

00046bc4 <TOD_MILLISECONDS_TO_TICKS>: #include <rtems/score/tod.h> uint32_t TOD_MILLISECONDS_TO_TICKS( uint32_t milliseconds ) {
   46bc4:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return (milliseconds / rtems_configuration_get_milliseconds_per_tick());
   46bc8:	2039 0005 c040 	movel 5c040 <Configuration+0xc>,%d0         <== NOT EXECUTED
#include <rtems/score/tod.h>                                          
                                                                      
uint32_t TOD_MILLISECONDS_TO_TICKS(                                   
  uint32_t milliseconds                                               
)                                                                     
{                                                                     
   46bce:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  return (milliseconds / rtems_configuration_get_milliseconds_per_tick());
   46bd0:	243c 0000 03e8 	movel #1000,%d2                             <== NOT EXECUTED
   46bd6:	4c42 0000      	remul %d2,%d0,%d0                           <== NOT EXECUTED
}                                                                     
   46bda:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
   46bde:	4c40 2002      	remul %d0,%d2,%d2                           <== NOT EXECUTED
   46be2:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   46be4:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
   46be6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004ae60 <TOD_TICKS_PER_SECOND_method>: uint32_t TOD_TICKS_PER_SECOND_method(void) { return (TOD_MICROSECONDS_PER_SECOND / rtems_configuration_get_microseconds_per_tick()); }
   4ae60:	41f9 0005 ce30 	lea 5ce30 <Configuration+0xc>,%a0           <== NOT EXECUTED
#include <rtems/system.h>                                             
#include <rtems/config.h>                                             
#include <rtems/score/tod.h>                                          
                                                                      
uint32_t TOD_TICKS_PER_SECOND_method(void)                            
{                                                                     
   4ae66:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return (TOD_MICROSECONDS_PER_SECOND /                               
      rtems_configuration_get_microseconds_per_tick());               
}                                                                     
   4ae6a:	203c 000f 4240 	movel #1000000,%d0                          <== NOT EXECUTED
   4ae70:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4ae72:	4c50 0000      	remul %a0@,%d0,%d0                          <== NOT EXECUTED
                                                                      

00045f28 <_API_Mutex_Unlock>: #include <rtems/score/apimutex.h> void _API_Mutex_Unlock( API_Mutex_Control *the_mutex ) {
   45f28:	4e56 0000      	linkw %fp,#0                                
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   45f2c:	2039 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d0
   45f32:	5280           	addql #1,%d0                                
   45f34:	206e 0008      	moveal %fp@(8),%a0                          
   45f38:	23c0 0005 c6c8 	movel %d0,5c6c8 <_Thread_Dispatch_disable_level>
  _Thread_Disable_dispatch();                                         
    _CORE_mutex_Surrender(                                            
   45f3e:	42a7           	clrl %sp@-                                  
   45f40:	2f28 0008      	movel %a0@(8),%sp@-                         
   45f44:	4868 0010      	pea %a0@(16)                                
   45f48:	4eb9 0004 61ac 	jsr 461ac <_CORE_mutex_Surrender>           
      &the_mutex->Mutex,                                              
      the_mutex->Object.id,                                           
      NULL                                                            
   );                                                                 
  _Thread_Enable_dispatch();                                          
   45f4e:	4fef 000c      	lea %sp@(12),%sp                            
}                                                                     
   45f52:	4e5e           	unlk %fp                                    
    _CORE_mutex_Surrender(                                            
      &the_mutex->Mutex,                                              
      the_mutex->Object.id,                                           
      NULL                                                            
   );                                                                 
  _Thread_Enable_dispatch();                                          
   45f54:	4ef9 0004 771e 	jmp 4771e <_Thread_Enable_dispatch>         
	...                                                                  
                                                                      

0004d39c <_Barrier_Translate_core_barrier_return_code>: #if defined(RTEMS_DEBUG) if ( the_barrier_status > CORE_BARRIER_STATUS_LAST ) return RTEMS_INTERNAL_ERROR; #endif return _Barrier_Translate_core_barrier_return_code_[the_barrier_status]; }
   4d39c:	41f9 0005 d394 	lea 5d394 <_Barrier_Translate_core_barrier_return_code_>,%a0<== NOT EXECUTED
};                                                                    
                                                                      
rtems_status_code _Barrier_Translate_core_barrier_return_code (       
  CORE_barrier_Status  the_barrier_status                             
)                                                                     
{                                                                     
   4d3a2:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  #if defined(RTEMS_DEBUG)                                            
    if ( the_barrier_status > CORE_BARRIER_STATUS_LAST )              
      return RTEMS_INTERNAL_ERROR;                                    
  #endif                                                              
  return _Barrier_Translate_core_barrier_return_code_[the_barrier_status];
}                                                                     
   4d3a6:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   4d3aa:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4d3ac:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
	...                                                                  
                                                                      

0004c9ec <_CORE_barrier_Release>: #else Objects_Id id __attribute__((unused)), CORE_barrier_API_mp_support_callout api_barrier_mp_support __attribute__((unused)) #endif ) {
   4c9ec:	4e56 fff4      	linkw %fp,#-12                              <== NOT EXECUTED
   4c9f0:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     <== NOT EXECUTED
   4c9f4:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
  Thread_Control *the_thread;                                         
  uint32_t        count;                                              
                                                                      
  count = 0;                                                          
   4c9f8:	4282           	clrl %d2                                    <== NOT EXECUTED
  while ( (the_thread = _Thread_queue_Dequeue(&the_barrier->Wait_queue)) ) {
   4c9fa:	47f9 0004 9638 	lea 49638 <_Thread_queue_Dequeue>,%a3       <== NOT EXECUTED
   4ca00:	6002           	bras 4ca04 <_CORE_barrier_Release+0x18>     <== NOT EXECUTED
#if defined(RTEMS_MULTIPROCESSING)                                    
    if ( !_Objects_Is_local_id( the_thread->Object.id ) )             
      (*api_barrier_mp_support) ( the_thread, id );                   
#endif                                                                
    count++;                                                          
   4ca02:	5282           	addql #1,%d2                                <== NOT EXECUTED
{                                                                     
  Thread_Control *the_thread;                                         
  uint32_t        count;                                              
                                                                      
  count = 0;                                                          
  while ( (the_thread = _Thread_queue_Dequeue(&the_barrier->Wait_queue)) ) {
   4ca04:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4ca06:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   4ca08:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4ca0a:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4ca0c:	66f4           	bnes 4ca02 <_CORE_barrier_Release+0x16>     <== NOT EXECUTED
#endif                                                                
    count++;                                                          
  }                                                                   
  the_barrier->number_of_waiting_threads = 0;                         
  return count;                                                       
}                                                                     
   4ca0e:	2002           	movel %d2,%d0                               <== NOT EXECUTED
    if ( !_Objects_Is_local_id( the_thread->Object.id ) )             
      (*api_barrier_mp_support) ( the_thread, id );                   
#endif                                                                
    count++;                                                          
  }                                                                   
  the_barrier->number_of_waiting_threads = 0;                         
   4ca10:	42aa 0048      	clrl %a2@(72)                               <== NOT EXECUTED
  return count;                                                       
}                                                                     
   4ca14:	4cee 0c04 fff4 	moveml %fp@(-12),%d2/%a2-%a3                <== NOT EXECUTED
   4ca1a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004ca20 <_CORE_barrier_Wait>: Thread_Control *executing; ISR_Level level; executing = _Thread_Executing; executing->Wait.return_code = CORE_BARRIER_STATUS_SUCCESSFUL; _ISR_Disable( level );
   4ca20:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
  Objects_Id                           id,                            
  bool                                 wait,                          
  Watchdog_Interval                    timeout,                       
  CORE_barrier_API_mp_support_callout  api_barrier_mp_support         
)                                                                     
{                                                                     
   4ca26:	4e56 fff4      	linkw %fp,#-12                              <== NOT EXECUTED
  Thread_Control *executing;                                          
  ISR_Level       level;                                              
                                                                      
  executing = _Thread_Executing;                                      
   4ca2a:	2279 0005 eba8 	moveal 5eba8 <_Per_CPU_Information+0xc>,%a1 <== NOT EXECUTED
  Objects_Id                           id,                            
  bool                                 wait,                          
  Watchdog_Interval                    timeout,                       
  CORE_barrier_API_mp_support_callout  api_barrier_mp_support         
)                                                                     
{                                                                     
   4ca30:	48d7 001c      	moveml %d2-%d4,%sp@                         <== NOT EXECUTED
   4ca34:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
  Thread_Control *executing;                                          
  ISR_Level       level;                                              
                                                                      
  executing = _Thread_Executing;                                      
  executing->Wait.return_code = CORE_BARRIER_STATUS_SUCCESSFUL;       
   4ca38:	42a9 0034      	clrl %a1@(52)                               <== NOT EXECUTED
  Objects_Id                           id,                            
  bool                                 wait,                          
  Watchdog_Interval                    timeout,                       
  CORE_barrier_API_mp_support_callout  api_barrier_mp_support         
)                                                                     
{                                                                     
   4ca3c:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
   4ca40:	262e 0014      	movel %fp@(20),%d3                          <== NOT EXECUTED
   4ca44:	282e 0018      	movel %fp@(24),%d4                          <== NOT EXECUTED
  Thread_Control *executing;                                          
  ISR_Level       level;                                              
                                                                      
  executing = _Thread_Executing;                                      
  executing->Wait.return_code = CORE_BARRIER_STATUS_SUCCESSFUL;       
  _ISR_Disable( level );                                              
   4ca48:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   4ca4a:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   4ca4c:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
  the_barrier->number_of_waiting_threads++;                           
   4ca4e:	2028 0048      	movel %a0@(72),%d0                          <== NOT EXECUTED
   4ca52:	5280           	addql #1,%d0                                <== NOT EXECUTED
   4ca54:	2140 0048      	movel %d0,%a0@(72)                          <== NOT EXECUTED
  if ( _CORE_barrier_Is_automatic( &the_barrier->Attributes ) ) {     
   4ca58:	4aa8 0040      	tstl %a0@(64)                               <== NOT EXECUTED
   4ca5c:	6626           	bnes 4ca84 <_CORE_barrier_Wait+0x64>        <== NOT EXECUTED
    if ( the_barrier->number_of_waiting_threads ==                    
   4ca5e:	b0a8 0044      	cmpl %a0@(68),%d0                           <== NOT EXECUTED
   4ca62:	6620           	bnes 4ca84 <_CORE_barrier_Wait+0x64>        <== NOT EXECUTED
	 the_barrier->Attributes.maximum_count) {                            
      executing->Wait.return_code = CORE_BARRIER_STATUS_AUTOMATICALLY_RELEASED;
   4ca64:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4ca66:	2340 0034      	movel %d0,%a1@(52)                          <== NOT EXECUTED
      _ISR_Enable( level );                                           
   4ca6a:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
      _CORE_barrier_Release( the_barrier, id, api_barrier_mp_support );
   4ca6c:	2d44 0010      	movel %d4,%fp@(16)                          <== NOT EXECUTED
   4ca70:	2d42 000c      	movel %d2,%fp@(12)                          <== NOT EXECUTED
  executing->Wait.queue          = &the_barrier->Wait_queue;          
  executing->Wait.id             = id;                                
  _ISR_Enable( level );                                               
                                                                      
  _Thread_queue_Enqueue( &the_barrier->Wait_queue, timeout );         
}                                                                     
   4ca74:	4cd7 001c      	moveml %sp@,%d2-%d4                         <== NOT EXECUTED
  if ( _CORE_barrier_Is_automatic( &the_barrier->Attributes ) ) {     
    if ( the_barrier->number_of_waiting_threads ==                    
	 the_barrier->Attributes.maximum_count) {                            
      executing->Wait.return_code = CORE_BARRIER_STATUS_AUTOMATICALLY_RELEASED;
      _ISR_Enable( level );                                           
      _CORE_barrier_Release( the_barrier, id, api_barrier_mp_support );
   4ca78:	2d48 0008      	movel %a0,%fp@(8)                           <== NOT EXECUTED
  executing->Wait.queue          = &the_barrier->Wait_queue;          
  executing->Wait.id             = id;                                
  _ISR_Enable( level );                                               
                                                                      
  _Thread_queue_Enqueue( &the_barrier->Wait_queue, timeout );         
}                                                                     
   4ca7c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  if ( _CORE_barrier_Is_automatic( &the_barrier->Attributes ) ) {     
    if ( the_barrier->number_of_waiting_threads ==                    
	 the_barrier->Attributes.maximum_count) {                            
      executing->Wait.return_code = CORE_BARRIER_STATUS_AUTOMATICALLY_RELEASED;
      _ISR_Enable( level );                                           
      _CORE_barrier_Release( the_barrier, id, api_barrier_mp_support );
   4ca7e:	4ef9 0004 c9ec 	jmp 4c9ec <_CORE_barrier_Release>           <== NOT EXECUTED
   4ca84:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4ca86:	2140 0030      	movel %d0,%a0@(48)                          <== NOT EXECUTED
      return;                                                         
    }                                                                 
  }                                                                   
                                                                      
  _Thread_queue_Enter_critical_section( &the_barrier->Wait_queue );   
  executing->Wait.queue          = &the_barrier->Wait_queue;          
   4ca8a:	2348 0044      	movel %a0,%a1@(68)                          <== NOT EXECUTED
  executing->Wait.id             = id;                                
   4ca8e:	2342 0020      	movel %d2,%a1@(32)                          <== NOT EXECUTED
  _ISR_Enable( level );                                               
   4ca92:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
                                                                      
  _Thread_queue_Enqueue( &the_barrier->Wait_queue, timeout );         
   4ca94:	2d43 000c      	movel %d3,%fp@(12)                          <== NOT EXECUTED
   4ca98:	203c 0004 9a8c 	movel #301708,%d0                           <== NOT EXECUTED
   4ca9e:	2d48 0008      	movel %a0,%fp@(8)                           <== NOT EXECUTED
}                                                                     
   4caa2:	4cd7 001c      	moveml %sp@,%d2-%d4                         <== NOT EXECUTED
  _Thread_queue_Enter_critical_section( &the_barrier->Wait_queue );   
  executing->Wait.queue          = &the_barrier->Wait_queue;          
  executing->Wait.id             = id;                                
  _ISR_Enable( level );                                               
                                                                      
  _Thread_queue_Enqueue( &the_barrier->Wait_queue, timeout );         
   4caa6:	2d40 0010      	movel %d0,%fp@(16)                          <== NOT EXECUTED
}                                                                     
   4caaa:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  _Thread_queue_Enter_critical_section( &the_barrier->Wait_queue );   
  executing->Wait.queue          = &the_barrier->Wait_queue;          
  executing->Wait.id             = id;                                
  _ISR_Enable( level );                                               
                                                                      
  _Thread_queue_Enqueue( &the_barrier->Wait_queue, timeout );         
   4caac:	4ef9 0004 9778 	jmp 49778 <_Thread_queue_Enqueue_with_handler><== NOT EXECUTED
	...                                                                  
                                                                      

00052ac4 <_CORE_message_queue_Broadcast>: Objects_Id id __attribute__((unused)), CORE_message_queue_API_mp_support_callout api_message_queue_mp_support __attribute__((unused)), #endif uint32_t *count ) {
   52ac4:	4e56 ffe0      	linkw %fp,#-32                              <== NOT EXECUTED
   52ac8:	48d7 3c3c      	moveml %d2-%d5/%a2-%a5,%sp@                 <== NOT EXECUTED
   52acc:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   52ad0:	2a2e 000c      	movel %fp@(12),%d5                          <== NOT EXECUTED
   52ad4:	262e 0010      	movel %fp@(16),%d3                          <== NOT EXECUTED
   52ad8:	286e 001c      	moveal %fp@(28),%a4                         <== NOT EXECUTED
  Thread_Control          *the_thread;                                
  uint32_t                 number_broadcasted;                        
  Thread_Wait_information *waitp;                                     
                                                                      
  if ( size > the_message_queue->maximum_message_size ) {             
   52adc:	b6aa 004c      	cmpl %a2@(76),%d3                           <== NOT EXECUTED
   52ae0:	6244           	bhis 52b26 <_CORE_message_queue_Broadcast+0x62><== NOT EXECUTED
   *  NOTE: This check is critical because threads can block on       
   *        send and receive and this ensures that we are broadcasting
   *        the message to threads waiting to receive -- not to send. 
   */                                                                 
                                                                      
  if ( the_message_queue->number_of_pending_messages != 0 ) {         
   52ae2:	4aaa 0048      	tstl %a2@(72)                               <== NOT EXECUTED
   52ae6:	6610           	bnes 52af8 <_CORE_message_queue_Broadcast+0x34><== NOT EXECUTED
   52ae8:	4282           	clrl %d2                                    <== NOT EXECUTED
  /*                                                                  
   *  There must be no pending messages if there is a thread waiting to
   *  receive a message.                                              
   */                                                                 
  number_broadcasted = 0;                                             
  while ((the_thread =                                                
   52aea:	283c 0005 5074 	movel #348276,%d4                           <== NOT EXECUTED
  const void *source,                                                 
  void       *destination,                                            
  size_t      size                                                    
)                                                                     
{                                                                     
  memcpy(destination, source, size);                                  
   52af0:	4bf9 0005 988c 	lea 5988c <memcpy>,%a5                      <== NOT EXECUTED
   52af6:	601a           	bras 52b12 <_CORE_message_queue_Broadcast+0x4e><== NOT EXECUTED
   *        send and receive and this ensures that we are broadcasting
   *        the message to threads waiting to receive -- not to send. 
   */                                                                 
                                                                      
  if ( the_message_queue->number_of_pending_messages != 0 ) {         
    *count = 0;                                                       
   52af8:	4294           	clrl %a4@                                   <== NOT EXECUTED
   52afa:	6026           	bras 52b22 <_CORE_message_queue_Broadcast+0x5e><== NOT EXECUTED
   52afc:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   */                                                                 
  number_broadcasted = 0;                                             
  while ((the_thread =                                                
          _Thread_queue_Dequeue(&the_message_queue->Wait_queue))) {   
    waitp = &the_thread->Wait;                                        
    number_broadcasted += 1;                                          
   52afe:	5282           	addql #1,%d2                                <== NOT EXECUTED
   52b00:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   52b02:	2f2b 002c      	movel %a3@(44),%sp@-                        <== NOT EXECUTED
   52b06:	4e95           	jsr %a5@                                    <== NOT EXECUTED
      buffer,                                                         
      waitp->return_argument_second.mutable_object,                   
      size                                                            
    );                                                                
                                                                      
    *(size_t *) the_thread->Wait.return_argument = size;              
   52b08:	206b 0028      	moveal %a3@(40),%a0                         <== NOT EXECUTED
   52b0c:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   52b10:	2083           	movel %d3,%a0@                              <== NOT EXECUTED
  /*                                                                  
   *  There must be no pending messages if there is a thread waiting to
   *  receive a message.                                              
   */                                                                 
  number_broadcasted = 0;                                             
  while ((the_thread =                                                
   52b12:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   52b14:	2044           	moveal %d4,%a0                              <== NOT EXECUTED
   52b16:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   52b18:	588f           	addql #4,%sp                                <== NOT EXECUTED
   52b1a:	2640           	moveal %d0,%a3                              <== NOT EXECUTED
   52b1c:	4a80           	tstl %d0                                    <== NOT EXECUTED
   52b1e:	66dc           	bnes 52afc <_CORE_message_queue_Broadcast+0x38><== NOT EXECUTED
      if ( !_Objects_Is_local_id( the_thread->Object.id ) )           
        (*api_message_queue_mp_support) ( the_thread, id );           
    #endif                                                            
                                                                      
  }                                                                   
  *count = number_broadcasted;                                        
   52b20:	2882           	movel %d2,%a4@                              <== NOT EXECUTED
  return CORE_MESSAGE_QUEUE_STATUS_SUCCESSFUL;                        
   52b22:	4280           	clrl %d0                                    <== NOT EXECUTED
   52b24:	6002           	bras 52b28 <_CORE_message_queue_Broadcast+0x64><== NOT EXECUTED
  Thread_Control          *the_thread;                                
  uint32_t                 number_broadcasted;                        
  Thread_Wait_information *waitp;                                     
                                                                      
  if ( size > the_message_queue->maximum_message_size ) {             
    return CORE_MESSAGE_QUEUE_STATUS_INVALID_SIZE;                    
   52b26:	7001           	moveq #1,%d0                                <== NOT EXECUTED
    #endif                                                            
                                                                      
  }                                                                   
  *count = number_broadcasted;                                        
  return CORE_MESSAGE_QUEUE_STATUS_SUCCESSFUL;                        
}                                                                     
   52b28:	4cee 3c3c ffe0 	moveml %fp@(-32),%d2-%d5/%a2-%a5            <== NOT EXECUTED
   52b2e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00052b34 <_CORE_message_queue_Close>: void _CORE_message_queue_Close( CORE_message_queue_Control *the_message_queue, Thread_queue_Flush_callout remote_extract_callout, uint32_t status ) {
   52b34:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   52b38:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
  /*                                                                  
   *  This will flush blocked threads whether they were blocked on    
   *  a send or receive.                                              
   */                                                                 
                                                                      
  _Thread_queue_Flush(                                                
   52b3a:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   52b3e:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
void _CORE_message_queue_Close(                                       
  CORE_message_queue_Control *the_message_queue,                      
  Thread_queue_Flush_callout  remote_extract_callout,                 
  uint32_t                    status                                  
)                                                                     
{                                                                     
   52b42:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
  /*                                                                  
   *  This will flush blocked threads whether they were blocked on    
   *  a send or receive.                                              
   */                                                                 
                                                                      
  _Thread_queue_Flush(                                                
   52b46:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   52b48:	4eb9 0005 53c4 	jsr 553c4 <_Thread_queue_Flush>             <== NOT EXECUTED
   *  This removes all messages from the pending message queue.  Since
   *  we just flushed all waiting threads, we don't have to worry about
   *  the flush satisfying any blocked senders as a side-effect.      
   */                                                                 
                                                                      
  if ( the_message_queue->number_of_pending_messages != 0 )           
   52b4e:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   52b52:	4aaa 0048      	tstl %a2@(72)                               <== NOT EXECUTED
   52b56:	670a           	beqs 52b62 <_CORE_message_queue_Close+0x2e> <== NOT EXECUTED
    (void) _CORE_message_queue_Flush_support( the_message_queue );    
   52b58:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   52b5a:	4eb9 0005 2b90 	jsr 52b90 <_CORE_message_queue_Flush_support><== NOT EXECUTED
   52b60:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  (void) _Workspace_Free( the_message_queue->message_buffers );       
   52b62:	2d6a 005c 0008 	movel %a2@(92),%fp@(8)                      <== NOT EXECUTED
                                                                      
}                                                                     
   52b68:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   52b6c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   */                                                                 
                                                                      
  if ( the_message_queue->number_of_pending_messages != 0 )           
    (void) _CORE_message_queue_Flush_support( the_message_queue );    
                                                                      
  (void) _Workspace_Free( the_message_queue->message_buffers );       
   52b6e:	4ef9 0005 5fb4 	jmp 55fb4 <_Workspace_Free>                 <== NOT EXECUTED
                                                                      

00052b74 <_CORE_message_queue_Flush>: */ uint32_t _CORE_message_queue_Flush( CORE_message_queue_Control *the_message_queue ) {
   52b74:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   52b78:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
  if ( the_message_queue->number_of_pending_messages != 0 )           
   52b7c:	4aa8 0048      	tstl %a0@(72)                               <== NOT EXECUTED
   52b80:	6708           	beqs 52b8a <_CORE_message_queue_Flush+0x16> <== NOT EXECUTED
    return _CORE_message_queue_Flush_support( the_message_queue );    
  else                                                                
    return 0;                                                         
}                                                                     
   52b82:	4e5e           	unlk %fp                                    <== NOT EXECUTED
uint32_t   _CORE_message_queue_Flush(                                 
  CORE_message_queue_Control *the_message_queue                       
)                                                                     
{                                                                     
  if ( the_message_queue->number_of_pending_messages != 0 )           
    return _CORE_message_queue_Flush_support( the_message_queue );    
   52b84:	4ef9 0005 2b90 	jmp 52b90 <_CORE_message_queue_Flush_support><== NOT EXECUTED
  else                                                                
    return 0;                                                         
}                                                                     
   52b8a:	4280           	clrl %d0                                    <== NOT EXECUTED
   52b8c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00052b90 <_CORE_message_queue_Flush_support>: * * For now, though, we are very happy to have a small routine with * fixed execution time that only deals with pending messages. */ _ISR_Disable( level );
   52b90:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
 */                                                                   
                                                                      
uint32_t   _CORE_message_queue_Flush_support(                         
  CORE_message_queue_Control *the_message_queue                       
)                                                                     
{                                                                     
   52b96:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   52b9a:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   52b9e:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   52ba0:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   *                                                                  
   *  For now, though, we are very happy to have a small routine with 
   *  fixed execution time that only deals with pending messages.     
   */                                                                 
                                                                      
  _ISR_Disable( level );                                              
   52ba2:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   52ba4:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   52ba6:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
                                                                      
    count = the_message_queue->number_of_pending_messages;            
    the_message_queue->number_of_pending_messages = 0;                
  _ISR_Enable( level );                                               
  return count;                                                       
}                                                                     
   52ba8:	2268 0050      	moveal %a0@(80),%a1                         <== NOT EXECUTED
   *  fixed execution time that only deals with pending messages.     
   */                                                                 
                                                                      
  _ISR_Disable( level );                                              
    inactive_head = _Chain_Head( &the_message_queue->Inactive_messages );
    inactive_first = inactive_head->next;;                            
   52bac:	2468 0060      	moveal %a0@(96),%a2                         <== NOT EXECUTED
                                                                      
    count = the_message_queue->number_of_pending_messages;            
    the_message_queue->number_of_pending_messages = 0;                
  _ISR_Enable( level );                                               
  return count;                                                       
}                                                                     
   52bb0:	2668 0058      	moveal %a0@(88),%a3                         <== NOT EXECUTED
    inactive_head = _Chain_Head( &the_message_queue->Inactive_messages );
    inactive_first = inactive_head->next;;                            
    message_queue_first = _Chain_First( &the_message_queue->Pending_messages );
    message_queue_last = _Chain_Last( &the_message_queue->Pending_messages );
                                                                      
    inactive_head->next = message_queue_first;                        
   52bb4:	2149 0060      	movel %a1,%a0@(96)                          <== NOT EXECUTED
    inactive_first->previous = message_queue_last;                    
    message_queue_first->previous = inactive_head;                    
                                                                      
    _Chain_Initialize_empty( &the_message_queue->Pending_messages );  
                                                                      
    count = the_message_queue->number_of_pending_messages;            
   52bb8:	2028 0048      	movel %a0@(72),%d0                          <== NOT EXECUTED
    message_queue_first = _Chain_First( &the_message_queue->Pending_messages );
    message_queue_last = _Chain_Last( &the_message_queue->Pending_messages );
                                                                      
    inactive_head->next = message_queue_first;                        
    message_queue_last->next = inactive_first;                        
    inactive_first->previous = message_queue_last;                    
   52bbc:	254b 0004      	movel %a3,%a2@(4)                           <== NOT EXECUTED
    inactive_first = inactive_head->next;;                            
    message_queue_first = _Chain_First( &the_message_queue->Pending_messages );
    message_queue_last = _Chain_Last( &the_message_queue->Pending_messages );
                                                                      
    inactive_head->next = message_queue_first;                        
    message_queue_last->next = inactive_first;                        
   52bc0:	268a           	movel %a2,%a3@                              <== NOT EXECUTED
   *  For now, though, we are very happy to have a small routine with 
   *  fixed execution time that only deals with pending messages.     
   */                                                                 
                                                                      
  _ISR_Disable( level );                                              
    inactive_head = _Chain_Head( &the_message_queue->Inactive_messages );
   52bc2:	45e8 0060      	lea %a0@(96),%a2                            <== NOT EXECUTED
   52bc6:	234a 0004      	movel %a2,%a1@(4)                           <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   52bca:	43e8 0054      	lea %a0@(84),%a1                            <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
   52bce:	45e8 0050      	lea %a0@(80),%a2                            <== NOT EXECUTED
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   52bd2:	2149 0050      	movel %a1,%a0@(80)                          <== NOT EXECUTED
                                                                      
  head->next = tail;                                                  
  head->previous = NULL;                                              
   52bd6:	42a8 0054      	clrl %a0@(84)                               <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
   52bda:	214a 0058      	movel %a2,%a0@(88)                          <== NOT EXECUTED
    message_queue_first->previous = inactive_head;                    
                                                                      
    _Chain_Initialize_empty( &the_message_queue->Pending_messages );  
                                                                      
    count = the_message_queue->number_of_pending_messages;            
    the_message_queue->number_of_pending_messages = 0;                
   52bde:	42a8 0048      	clrl %a0@(72)                               <== NOT EXECUTED
  _ISR_Enable( level );                                               
   52be2:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
  return count;                                                       
}                                                                     
   52be4:	245f           	moveal %sp@+,%a2                            <== NOT EXECUTED
   52be6:	265f           	moveal %sp@+,%a3                            <== NOT EXECUTED
   52be8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004ddd8 <_CORE_message_queue_Initialize>: /* * Round size up to multiple of a pointer for chain init and * check for overflow on adding overhead to each message. */ allocated_message_size = maximum_message_size; if (allocated_message_size & (sizeof(uint32_t) - 1)) {
   4ddd8:	7003           	moveq #3,%d0                                <== NOT EXECUTED
  CORE_message_queue_Control    *the_message_queue,                   
  CORE_message_queue_Attributes *the_message_queue_attributes,        
  uint32_t                       maximum_pending_messages,            
  size_t                         maximum_message_size                 
)                                                                     
{                                                                     
   4ddda:	4e56 fff4      	linkw %fp,#-12                              <== NOT EXECUTED
   4ddde:	222e 0014      	movel %fp@(20),%d1                          <== NOT EXECUTED
   4dde2:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     <== NOT EXECUTED
   4dde6:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   4ddea:	242e 0010      	movel %fp@(16),%d2                          <== NOT EXECUTED
  /*                                                                  
   *  Round size up to multiple of a pointer for chain init and       
   *  check for overflow on adding overhead to each message.          
   */                                                                 
  allocated_message_size = maximum_message_size;                      
  if (allocated_message_size & (sizeof(uint32_t) - 1)) {              
   4ddee:	c081           	andl %d1,%d0                                <== NOT EXECUTED
)                                                                     
{                                                                     
  size_t message_buffering_required;                                  
  size_t allocated_message_size;                                      
                                                                      
  the_message_queue->maximum_pending_messages   = maximum_pending_messages;
   4ddf0:	2542 0044      	movel %d2,%a2@(68)                          <== NOT EXECUTED
  the_message_queue->number_of_pending_messages = 0;                  
   4ddf4:	42aa 0048      	clrl %a2@(72)                               <== NOT EXECUTED
  the_message_queue->maximum_message_size       = maximum_message_size;
   4ddf8:	2541 004c      	movel %d1,%a2@(76)                          <== NOT EXECUTED
  /*                                                                  
   *  Round size up to multiple of a pointer for chain init and       
   *  check for overflow on adding overhead to each message.          
   */                                                                 
  allocated_message_size = maximum_message_size;                      
  if (allocated_message_size & (sizeof(uint32_t) - 1)) {              
   4ddfc:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4ddfe:	670e           	beqs 4de0e <_CORE_message_queue_Initialize+0x36><== NOT EXECUTED
    allocated_message_size += sizeof(uint32_t);                       
   4de00:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   4de02:	5880           	addql #4,%d0                                <== NOT EXECUTED
    allocated_message_size &= ~(sizeof(uint32_t) - 1);                
   4de04:	76fc           	moveq #-4,%d3                               <== NOT EXECUTED
   4de06:	c083           	andl %d3,%d0                                <== NOT EXECUTED
  }                                                                   
                                                                      
  if (allocated_message_size < maximum_message_size)                  
   4de08:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   4de0a:	6272           	bhis 4de7e <_CORE_message_queue_Initialize+0xa6><== NOT EXECUTED
   4de0c:	6002           	bras 4de10 <_CORE_message_queue_Initialize+0x38><== NOT EXECUTED
  /*                                                                  
   *  Round size up to multiple of a pointer for chain init and       
   *  check for overflow on adding overhead to each message.          
   */                                                                 
  allocated_message_size = maximum_message_size;                      
  if (allocated_message_size & (sizeof(uint32_t) - 1)) {              
   4de0e:	2001           	movel %d1,%d0                               <== NOT EXECUTED
  /*                                                                  
   *  Calculate how much total memory is required for message buffering and
   *  check for overflow on the multiplication.                       
   */                                                                 
  message_buffering_required = (size_t) maximum_pending_messages *    
       (allocated_message_size + sizeof(CORE_message_queue_Buffer_control));
   4de10:	2600           	movel %d0,%d3                               <== NOT EXECUTED
   4de12:	0683 0000 0010 	addil #16,%d3                               <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Calculate how much total memory is required for message buffering and
   *  check for overflow on the multiplication.                       
   */                                                                 
  message_buffering_required = (size_t) maximum_pending_messages *    
   4de18:	2203           	movel %d3,%d1                               <== NOT EXECUTED
   4de1a:	4c02 1800      	mulsl %d2,%d1                               <== NOT EXECUTED
       (allocated_message_size + sizeof(CORE_message_queue_Buffer_control));
                                                                      
  if (message_buffering_required < allocated_message_size)            
   4de1e:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   4de20:	625c           	bhis 4de7e <_CORE_message_queue_Initialize+0xa6><== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Attempt to allocate the message memory                          
   */                                                                 
  the_message_queue->message_buffers = (CORE_message_queue_Buffer *)  
     _Workspace_Allocate( message_buffering_required );               
   4de22:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   4de24:	4eb9 0005 076c 	jsr 5076c <_Workspace_Allocate>             <== NOT EXECUTED
                                                                      
  if (the_message_queue->message_buffers == 0)                        
   4de2a:	588f           	addql #4,%sp                                <== NOT EXECUTED
    return false;                                                     
                                                                      
  /*                                                                  
   *  Attempt to allocate the message memory                          
   */                                                                 
  the_message_queue->message_buffers = (CORE_message_queue_Buffer *)  
   4de2c:	2540 005c      	movel %d0,%a2@(92)                          <== NOT EXECUTED
     _Workspace_Allocate( message_buffering_required );               
                                                                      
  if (the_message_queue->message_buffers == 0)                        
   4de30:	674c           	beqs 4de7e <_CORE_message_queue_Initialize+0xa6><== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Initialize the pool of inactive messages, pending messages,     
   *  and set of waiting threads.                                     
   */                                                                 
  _Chain_Initialize (                                                 
   4de32:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4de34:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4de36:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4de38:	486a 0060      	pea %a2@(96)                                <== NOT EXECUTED
   4de3c:	4eb9 0005 20c0 	jsr 520c0 <_Chain_Initialize>               <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   4de42:	41ea 0054      	lea %a2@(84),%a0                            <== NOT EXECUTED
    allocated_message_size + sizeof( CORE_message_queue_Buffer_control )
  );                                                                  
                                                                      
  _Chain_Initialize_empty( &the_message_queue->Pending_messages );    
                                                                      
  _Thread_queue_Initialize(                                           
   4de46:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4de48:	2548 0050      	movel %a0,%a2@(80)                          <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
   4de4c:	41ea 0050      	lea %a2@(80),%a0                            <== NOT EXECUTED
  Chain_Node *tail = _Chain_Tail( the_chain );                        
                                                                      
  head->next = tail;                                                  
  head->previous = NULL;                                              
   4de50:	42aa 0054      	clrl %a2@(84)                               <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
   4de54:	2548 0058      	movel %a0,%a2@(88)                          <== NOT EXECUTED
   4de58:	4878 0006      	pea 6 <EXTENDSFDF>                          <== NOT EXECUTED
   4de5c:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
   4de60:	4878 0080      	pea 80 <DBL_MANT_DIG+0x4b>                  <== NOT EXECUTED
   4de64:	b090           	cmpl %a0@,%d0                               <== NOT EXECUTED
   4de66:	57c0           	seq %d0                                     <== NOT EXECUTED
   4de68:	49c0           	extbl %d0                                   <== NOT EXECUTED
   4de6a:	4480           	negl %d0                                    <== NOT EXECUTED
   4de6c:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4de6e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4de70:	4eb9 0004 fe48 	jsr 4fe48 <_Thread_queue_Initialize>        <== NOT EXECUTED
       THREAD_QUEUE_DISCIPLINE_PRIORITY : THREAD_QUEUE_DISCIPLINE_FIFO,
    STATES_WAITING_FOR_MESSAGE,                                       
    CORE_MESSAGE_QUEUE_STATUS_TIMEOUT                                 
  );                                                                  
                                                                      
  return true;                                                        
   4de76:	4fef 0020      	lea %sp@(32),%sp                            <== NOT EXECUTED
   4de7a:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4de7c:	6002           	bras 4de80 <_CORE_message_queue_Initialize+0xa8><== NOT EXECUTED
   */                                                                 
  the_message_queue->message_buffers = (CORE_message_queue_Buffer *)  
     _Workspace_Allocate( message_buffering_required );               
                                                                      
  if (the_message_queue->message_buffers == 0)                        
    return false;                                                     
   4de7e:	4200           	clrb %d0                                    <== NOT EXECUTED
    STATES_WAITING_FOR_MESSAGE,                                       
    CORE_MESSAGE_QUEUE_STATUS_TIMEOUT                                 
  );                                                                  
                                                                      
  return true;                                                        
}                                                                     
   4de80:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   4de86:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00052104 <_CORE_message_queue_Insert_message>: #endif _CORE_message_queue_Set_message_priority( the_message, submit_type ); #if !defined(RTEMS_SCORE_COREMSG_ENABLE_MESSAGE_PRIORITY) _ISR_Disable( level );
   52104:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
void _CORE_message_queue_Insert_message(                              
  CORE_message_queue_Control        *the_message_queue,               
  CORE_message_queue_Buffer_control *the_message,                     
  CORE_message_queue_Submit_types    submit_type                      
)                                                                     
{                                                                     
   5210a:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   5210e:	226e 0008      	moveal %fp@(8),%a1                          <== NOT EXECUTED
   52112:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   52114:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
   52118:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
  #endif                                                              
                                                                      
  _CORE_message_queue_Set_message_priority( the_message, submit_type );
                                                                      
  #if !defined(RTEMS_SCORE_COREMSG_ENABLE_MESSAGE_PRIORITY)           
    _ISR_Disable( level );                                            
   5211a:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   5211c:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   5211e:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
      SET_NOTIFY();                                                   
      the_message_queue->number_of_pending_messages++;                
   52120:	52a9 0048      	addql #1,%a1@(72)                           <== NOT EXECUTED
      if ( submit_type == CORE_MESSAGE_QUEUE_SEND_REQUEST )           
   52124:	203c 7fff ffff 	movel #2147483647,%d0                       <== NOT EXECUTED
   5212a:	b0ae 0010      	cmpl %fp@(16),%d0                           <== NOT EXECUTED
   5212e:	6616           	bnes 52146 <_CORE_message_queue_Insert_message+0x42><== NOT EXECUTED
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
  Chain_Node *old_last = tail->previous;                              
   52130:	2469 0058      	moveal %a1@(88),%a2                         <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Chain_Append_unprotected(                  
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   52134:	47e9 0054      	lea %a1@(84),%a3                            <== NOT EXECUTED
  Chain_Node *old_last = tail->previous;                              
                                                                      
  the_node->next = tail;                                              
  tail->previous = the_node;                                          
   52138:	2348 0058      	movel %a0,%a1@(88)                          <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Chain_Append_unprotected(                  
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   5213c:	208b           	movel %a3,%a0@                              <== NOT EXECUTED
  Chain_Node *old_last = tail->previous;                              
                                                                      
  the_node->next = tail;                                              
  tail->previous = the_node;                                          
  old_last->next = the_node;                                          
  the_node->previous = old_last;                                      
   5213e:	214a 0004      	movel %a2,%a0@(4)                           <== NOT EXECUTED
  Chain_Node *tail = _Chain_Tail( the_chain );                        
  Chain_Node *old_last = tail->previous;                              
                                                                      
  the_node->next = tail;                                              
  tail->previous = the_node;                                          
  old_last->next = the_node;                                          
   52142:	2488           	movel %a0,%a2@                              <== NOT EXECUTED
   52144:	6016           	bras 5215c <_CORE_message_queue_Insert_message+0x58><== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Chain_Prepend_unprotected(                 
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  _Chain_Insert_unprotected(_Chain_Head(the_chain), the_node);        
   52146:	45e9 0050      	lea %a1@(80),%a2                            <== NOT EXECUTED
   5214a:	214a 0004      	movel %a2,%a0@(4)                           <== NOT EXECUTED
)                                                                     
{                                                                     
  Chain_Node *before_node;                                            
                                                                      
  the_node->previous    = after_node;                                 
  before_node           = after_node->next;                           
   5214e:	2469 0050      	moveal %a1@(80),%a2                         <== NOT EXECUTED
  after_node->next      = the_node;                                   
   52152:	2348 0050      	movel %a0,%a1@(80)                          <== NOT EXECUTED
  the_node->next        = before_node;                                
  before_node->previous = the_node;                                   
   52156:	2548 0004      	movel %a0,%a2@(4)                           <== NOT EXECUTED
  Chain_Node *before_node;                                            
                                                                      
  the_node->previous    = after_node;                                 
  before_node           = after_node->next;                           
  after_node->next      = the_node;                                   
  the_node->next        = before_node;                                
   5215a:	208a           	movel %a2,%a0@                              <== NOT EXECUTED
        _CORE_message_queue_Append_unprotected(the_message_queue, the_message);
      else                                                            
        _CORE_message_queue_Prepend_unprotected(the_message_queue, the_message);
    _ISR_Enable( level );                                             
   5215c:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
     *  the message is actually in the queue at this point.           
     */                                                               
    if ( notify && the_message_queue->notify_handler )                
      (*the_message_queue->notify_handler)(the_message_queue->notify_argument);
  #endif                                                              
}                                                                     
   5215e:	245f           	moveal %sp@+,%a2                            <== NOT EXECUTED
   52160:	265f           	moveal %sp@+,%a3                            <== NOT EXECUTED
   52162:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004de8c <_CORE_message_queue_Seize>: CORE_message_queue_Buffer_control *the_message; Thread_Control *executing; executing = _Thread_Executing; executing->Wait.return_code = CORE_MESSAGE_QUEUE_STATUS_SUCCESSFUL; _ISR_Disable( level );
   4de8c:	223c 0000 0700 	movel #1792,%d1                             <== NOT EXECUTED
  void                            *buffer,                            
  size_t                          *size_p,                            
  bool                             wait,                              
  Watchdog_Interval                timeout                            
)                                                                     
{                                                                     
   4de92:	4e56 ffe0      	linkw %fp,#-32                              <== NOT EXECUTED
  ISR_Level                          level;                           
  CORE_message_queue_Buffer_control *the_message;                     
  Thread_Control                    *executing;                       
                                                                      
  executing = _Thread_Executing;                                      
   4de96:	2079 0006 538c 	moveal 6538c <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
  void                            *buffer,                            
  size_t                          *size_p,                            
  bool                             wait,                              
  Watchdog_Interval                timeout                            
)                                                                     
{                                                                     
   4de9c:	48d7 3c3c      	moveml %d2-%d5/%a2-%a5,%sp@                 <== NOT EXECUTED
   4dea0:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   4dea4:	282e 000c      	movel %fp@(12),%d4                          <== NOT EXECUTED
   4dea8:	242e 0010      	movel %fp@(16),%d2                          <== NOT EXECUTED
   4deac:	226e 0014      	moveal %fp@(20),%a1                         <== NOT EXECUTED
   4deb0:	262e 001c      	movel %fp@(28),%d3                          <== NOT EXECUTED
   4deb4:	1a2e 001b      	moveb %fp@(27),%d5                          <== NOT EXECUTED
  ISR_Level                          level;                           
  CORE_message_queue_Buffer_control *the_message;                     
  Thread_Control                    *executing;                       
                                                                      
  executing = _Thread_Executing;                                      
  executing->Wait.return_code = CORE_MESSAGE_QUEUE_STATUS_SUCCESSFUL; 
   4deb8:	42a8 0034      	clrl %a0@(52)                               <== NOT EXECUTED
  _ISR_Disable( level );                                              
   4debc:	40c0           	movew %sr,%d0                               <== NOT EXECUTED
   4debe:	8280           	orl %d0,%d1                                 <== NOT EXECUTED
   4dec0:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  const Chain_Control *the_chain                                      
)                                                                     
{                                                                     
  return _Chain_Immutable_first( the_chain )                          
    == _Chain_Immutable_tail( the_chain );                            
   4dec2:	220a           	movel %a2,%d1                               <== NOT EXECUTED
   4dec4:	0681 0000 0054 	addil #84,%d1                               <== NOT EXECUTED
  executing->Wait.return_argument = size_p;                           
  /* Wait.count will be filled in with the message priority */        
  _ISR_Enable( level );                                               
                                                                      
  _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout );   
}                                                                     
   4deca:	266a 0050      	moveal %a2@(80),%a3                         <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Get_unprotected(              
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  if ( !_Chain_Is_empty(the_chain))                                   
   4dece:	b28b           	cmpl %a3,%d1                                <== NOT EXECUTED
   4ded0:	6752           	beqs 4df24 <_CORE_message_queue_Seize+0x98> <== NOT EXECUTED
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *old_first = head->next;                                 
  Chain_Node *new_first = old_first->next;                            
   4ded2:	2853           	moveal %a3@,%a4                             <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Get_first_unprotected(        
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
   4ded4:	4bea 0050      	lea %a2@(80),%a5                            <== NOT EXECUTED
  Chain_Node *old_first = head->next;                                 
  Chain_Node *new_first = old_first->next;                            
                                                                      
  head->next = new_first;                                             
   4ded8:	254c 0050      	movel %a4,%a2@(80)                          <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Get_first_unprotected(        
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
   4dedc:	294d 0004      	movel %a5,%a4@(4)                           <== NOT EXECUTED
                                                                      
  executing = _Thread_Executing;                                      
  executing->Wait.return_code = CORE_MESSAGE_QUEUE_STATUS_SUCCESSFUL; 
  _ISR_Disable( level );                                              
  the_message = _CORE_message_queue_Get_pending_message( the_message_queue );
  if ( the_message != NULL ) {                                        
   4dee0:	4a8b           	tstl %a3                                    <== NOT EXECUTED
   4dee2:	6740           	beqs 4df24 <_CORE_message_queue_Seize+0x98> <== NOT EXECUTED
    the_message_queue->number_of_pending_messages -= 1;               
   4dee4:	53aa 0048      	subql #1,%a2@(72)                           <== NOT EXECUTED
    _ISR_Enable( level );                                             
   4dee8:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
                                                                      
    *size_p = the_message->Contents.size;                             
   4deea:	22ab 0008      	movel %a3@(8),%a1@                          <== NOT EXECUTED
    _Thread_Executing->Wait.count =                                   
   4deee:	2079 0006 538c 	moveal 6538c <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
   4def4:	42a8 0024      	clrl %a0@(36)                               <== NOT EXECUTED
  const void *source,                                                 
  void       *destination,                                            
  size_t      size                                                    
)                                                                     
{                                                                     
  memcpy(destination, source, size);                                  
   4def8:	2f11           	movel %a1@,%sp@-                            <== NOT EXECUTED
   4defa:	486b 000c      	pea %a3@(12)                                <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _CORE_message_queue_Free_message_buffer (   
  CORE_message_queue_Control        *the_message_queue,               
  CORE_message_queue_Buffer_control *the_message                      
)                                                                     
{                                                                     
  _Chain_Append( &the_message_queue->Inactive_messages, &the_message->Node );
   4defe:	45ea 0060      	lea %a2@(96),%a2                            <== NOT EXECUTED
  const void *source,                                                 
  void       *destination,                                            
  size_t      size                                                    
)                                                                     
{                                                                     
  memcpy(destination, source, size);                                  
   4df02:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4df04:	4eb9 0005 44fc 	jsr 544fc <memcpy>                          <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _CORE_message_queue_Free_message_buffer (   
  CORE_message_queue_Control        *the_message_queue,               
  CORE_message_queue_Buffer_control *the_message                      
)                                                                     
{                                                                     
  _Chain_Append( &the_message_queue->Inactive_messages, &the_message->Node );
   4df0a:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4df0e:	2d4b 000c      	movel %a3,%fp@(12)                          <== NOT EXECUTED
   4df12:	2d4a 0008      	movel %a2,%fp@(8)                           <== NOT EXECUTED
  executing->Wait.return_argument = size_p;                           
  /* Wait.count will be filled in with the message priority */        
  _ISR_Enable( level );                                               
                                                                      
  _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout );   
}                                                                     
   4df16:	4cee 3c3c ffe0 	moveml %fp@(-32),%d2-%d5/%a2-%a5            <== NOT EXECUTED
   4df1c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4df1e:	4ef9 0004 dd14 	jmp 4dd14 <_Chain_Append>                   <== NOT EXECUTED
      return;                                                         
    }                                                                 
    #endif                                                            
  }                                                                   
                                                                      
  if ( !wait ) {                                                      
   4df24:	4a05           	tstb %d5                                    <== NOT EXECUTED
   4df26:	6612           	bnes 4df3a <_CORE_message_queue_Seize+0xae> <== NOT EXECUTED
    _ISR_Enable( level );                                             
   4df28:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
    executing->Wait.return_code = CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_NOWAIT;
   4df2a:	7004           	moveq #4,%d0                                <== NOT EXECUTED
  executing->Wait.return_argument = size_p;                           
  /* Wait.count will be filled in with the message priority */        
  _ISR_Enable( level );                                               
                                                                      
  _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout );   
}                                                                     
   4df2c:	4cee 3c3c ffe0 	moveml %fp@(-32),%d2-%d5/%a2-%a5            <== NOT EXECUTED
    #endif                                                            
  }                                                                   
                                                                      
  if ( !wait ) {                                                      
    _ISR_Enable( level );                                             
    executing->Wait.return_code = CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_NOWAIT;
   4df32:	2140 0034      	movel %d0,%a0@(52)                          <== NOT EXECUTED
  executing->Wait.return_argument = size_p;                           
  /* Wait.count will be filled in with the message priority */        
  _ISR_Enable( level );                                               
                                                                      
  _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout );   
}                                                                     
   4df36:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4df38:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_queue_Enter_critical_section (      
  Thread_queue_Control *the_thread_queue                              
)                                                                     
{                                                                     
  the_thread_queue->sync_state = THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;
   4df3a:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   4df3c:	2541 0030      	movel %d1,%a2@(48)                          <== NOT EXECUTED
  }                                                                   
                                                                      
  _Thread_queue_Enter_critical_section( &the_message_queue->Wait_queue );
  executing->Wait.queue = &the_message_queue->Wait_queue;             
  executing->Wait.id = id;                                            
  executing->Wait.return_argument_second.mutable_object = buffer;     
   4df40:	2142 002c      	movel %d2,%a0@(44)                          <== NOT EXECUTED
    executing->Wait.return_code = CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_NOWAIT;
    return;                                                           
  }                                                                   
                                                                      
  _Thread_queue_Enter_critical_section( &the_message_queue->Wait_queue );
  executing->Wait.queue = &the_message_queue->Wait_queue;             
   4df44:	214a 0044      	movel %a2,%a0@(68)                          <== NOT EXECUTED
  executing->Wait.id = id;                                            
   4df48:	2144 0020      	movel %d4,%a0@(32)                          <== NOT EXECUTED
  executing->Wait.return_argument_second.mutable_object = buffer;     
  executing->Wait.return_argument = size_p;                           
   4df4c:	2149 0028      	movel %a1,%a0@(40)                          <== NOT EXECUTED
  /* Wait.count will be filled in with the message priority */        
  _ISR_Enable( level );                                               
   4df50:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
                                                                      
  _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout );   
   4df52:	4bf9 0004 ff18 	lea 4ff18 <_Thread_queue_Timeout>,%a5       <== NOT EXECUTED
   4df58:	2d43 000c      	movel %d3,%fp@(12)                          <== NOT EXECUTED
   4df5c:	2d4d 0010      	movel %a5,%fp@(16)                          <== NOT EXECUTED
   4df60:	2d4a 0008      	movel %a2,%fp@(8)                           <== NOT EXECUTED
}                                                                     
   4df64:	4cee 3c3c ffe0 	moveml %fp@(-32),%d2-%d5/%a2-%a5            <== NOT EXECUTED
   4df6a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  executing->Wait.return_argument_second.mutable_object = buffer;     
  executing->Wait.return_argument = size_p;                           
  /* Wait.count will be filled in with the message priority */        
  _ISR_Enable( level );                                               
                                                                      
  _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout );   
   4df6c:	4ef9 0004 fc04 	jmp 4fc04 <_Thread_queue_Enqueue_with_handler><== NOT EXECUTED
	...                                                                  
                                                                      

0004df74 <_CORE_message_queue_Submit>: #endif CORE_message_queue_Submit_types submit_type, bool wait, Watchdog_Interval timeout ) {
   4df74:	4e56 ffec      	linkw %fp,#-20                              <== NOT EXECUTED
   4df78:	48d7 0c1c      	moveml %d2-%d4/%a2-%a3,%sp@                 <== NOT EXECUTED
   4df7c:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   4df80:	282e 000c      	movel %fp@(12),%d4                          <== NOT EXECUTED
   4df84:	242e 0010      	movel %fp@(16),%d2                          <== NOT EXECUTED
   4df88:	262e 001c      	movel %fp@(28),%d3                          <== NOT EXECUTED
  CORE_message_queue_Buffer_control   *the_message;                   
  Thread_Control                      *the_thread;                    
                                                                      
  if ( size > the_message_queue->maximum_message_size ) {             
   4df8c:	b4aa 004c      	cmpl %a2@(76),%d2                           <== NOT EXECUTED
   4df90:	6270           	bhis 4e002 <_CORE_message_queue_Submit+0x8e><== NOT EXECUTED
  }                                                                   
                                                                      
  /*                                                                  
   *  Is there a thread currently waiting on this message queue?      
   */                                                                 
  if ( the_message_queue->number_of_pending_messages == 0 ) {         
   4df92:	4aaa 0048      	tstl %a2@(72)                               <== NOT EXECUTED
   4df96:	662e           	bnes 4dfc6 <_CORE_message_queue_Submit+0x52><== NOT EXECUTED
    the_thread = _Thread_queue_Dequeue( &the_message_queue->Wait_queue );
   4df98:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4df9a:	4eb9 0004 fac4 	jsr 4fac4 <_Thread_queue_Dequeue>           <== NOT EXECUTED
    if ( the_thread ) {                                               
   4dfa0:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Is there a thread currently waiting on this message queue?      
   */                                                                 
  if ( the_message_queue->number_of_pending_messages == 0 ) {         
    the_thread = _Thread_queue_Dequeue( &the_message_queue->Wait_queue );
   4dfa2:	2640           	moveal %d0,%a3                              <== NOT EXECUTED
    if ( the_thread ) {                                               
   4dfa4:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4dfa6:	671e           	beqs 4dfc6 <_CORE_message_queue_Submit+0x52><== NOT EXECUTED
  const void *source,                                                 
  void       *destination,                                            
  size_t      size                                                    
)                                                                     
{                                                                     
  memcpy(destination, source, size);                                  
   4dfa8:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4dfaa:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4dfac:	2f2b 002c      	movel %a3@(44),%sp@-                        <== NOT EXECUTED
   4dfb0:	4eb9 0005 44fc 	jsr 544fc <memcpy>                          <== NOT EXECUTED
      _CORE_message_queue_Copy_buffer(                                
        buffer,                                                       
        the_thread->Wait.return_argument_second.mutable_object,       
        size                                                          
      );                                                              
      *(size_t *) the_thread->Wait.return_argument = size;            
   4dfb6:	206b 0028      	moveal %a3@(40),%a0                         <== NOT EXECUTED
                                                                      
      #if defined(RTEMS_MULTIPROCESSING)                              
        if ( !_Objects_Is_local_id( the_thread->Object.id ) )         
          (*api_message_queue_mp_support) ( the_thread, id );         
      #endif                                                          
      return CORE_MESSAGE_QUEUE_STATUS_SUCCESSFUL;                    
   4dfba:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
      _CORE_message_queue_Copy_buffer(                                
        buffer,                                                       
        the_thread->Wait.return_argument_second.mutable_object,       
        size                                                          
      );                                                              
      *(size_t *) the_thread->Wait.return_argument = size;            
   4dfbe:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
      the_thread->Wait.count = (uint32_t) submit_type;                
   4dfc0:	2743 0024      	movel %d3,%a3@(36)                          <== NOT EXECUTED
   4dfc4:	6038           	bras 4dffe <_CORE_message_queue_Submit+0x8a><== NOT EXECUTED
                                                                      
  /*                                                                  
   *  No one waiting on the message queue at this time, so attempt to 
   *  queue the message up for a future receive.                      
   */                                                                 
  if ( the_message_queue->number_of_pending_messages <                
   4dfc6:	202a 0044      	movel %a2@(68),%d0                          <== NOT EXECUTED
   4dfca:	b0aa 0048      	cmpl %a2@(72),%d0                           <== NOT EXECUTED
   4dfce:	6336           	blss 4e006 <_CORE_message_queue_Submit+0x92><== NOT EXECUTED
_CORE_message_queue_Allocate_message_buffer (                         
    CORE_message_queue_Control *the_message_queue                     
)                                                                     
{                                                                     
   return (CORE_message_queue_Buffer_control *)                       
     _Chain_Get( &the_message_queue->Inactive_messages );             
   4dfd0:	486a 0060      	pea %a2@(96)                                <== NOT EXECUTED
   4dfd4:	4eb9 0004 dd74 	jsr 4dd74 <_Chain_Get>                      <== NOT EXECUTED
   4dfda:	2640           	moveal %d0,%a3                              <== NOT EXECUTED
  const void *source,                                                 
  void       *destination,                                            
  size_t      size                                                    
)                                                                     
{                                                                     
  memcpy(destination, source, size);                                  
   4dfdc:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4dfde:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4dfe0:	486b 000c      	pea %a3@(12)                                <== NOT EXECUTED
   4dfe4:	4eb9 0005 44fc 	jsr 544fc <memcpy>                          <== NOT EXECUTED
    _CORE_message_queue_Copy_buffer(                                  
      buffer,                                                         
      the_message->Contents.buffer,                                   
      size                                                            
    );                                                                
    the_message->Contents.size = size;                                
   4dfea:	2742 0008      	movel %d2,%a3@(8)                           <== NOT EXECUTED
    _CORE_message_queue_Set_message_priority( the_message, submit_type );
                                                                      
    _CORE_message_queue_Insert_message(                               
   4dfee:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4dff0:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   4dff2:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4dff4:	4eb9 0005 2104 	jsr 52104 <_CORE_message_queue_Insert_message><== NOT EXECUTED
       the_message_queue,                                             
       the_message,                                                   
       submit_type                                                    
    );                                                                
    return CORE_MESSAGE_QUEUE_STATUS_SUCCESSFUL;                      
   4dffa:	4fef 001c      	lea %sp@(28),%sp                            <== NOT EXECUTED
   4dffe:	4280           	clrl %d0                                    <== NOT EXECUTED
   4e000:	6006           	bras 4e008 <_CORE_message_queue_Submit+0x94><== NOT EXECUTED
{                                                                     
  CORE_message_queue_Buffer_control   *the_message;                   
  Thread_Control                      *the_thread;                    
                                                                      
  if ( size > the_message_queue->maximum_message_size ) {             
    return CORE_MESSAGE_QUEUE_STATUS_INVALID_SIZE;                    
   4e002:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4e004:	6002           	bras 4e008 <_CORE_message_queue_Submit+0x94><== NOT EXECUTED
    );                                                                
    return CORE_MESSAGE_QUEUE_STATUS_SUCCESSFUL;                      
  }                                                                   
                                                                      
  #if !defined(RTEMS_SCORE_COREMSG_ENABLE_BLOCKING_SEND)              
    return CORE_MESSAGE_QUEUE_STATUS_TOO_MANY;                        
   4e006:	7002           	moveq #2,%d0                                <== NOT EXECUTED
      _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout );
    }                                                                 
                                                                      
    return CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_WAIT;                
  #endif                                                              
}                                                                     
   4e008:	4cee 0c1c ffec 	moveml %fp@(-20),%d2-%d4/%a2-%a3            <== NOT EXECUTED
   4e00e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00045ffc <_CORE_mutex_Initialize>: CORE_mutex_Status _CORE_mutex_Initialize( CORE_mutex_Control *the_mutex, CORE_mutex_Attributes *the_mutex_attributes, uint32_t initial_lock ) {
   45ffc:	4e56 fff4      	linkw %fp,#-12                              
   46000:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     
/* Add this to the RTEMS environment later ?????????                  
  rtems_assert( initial_lock == CORE_MUTEX_LOCKED ||                  
                initial_lock == CORE_MUTEX_UNLOCKED );                
 */                                                                   
                                                                      
  the_mutex->Attributes    = *the_mutex_attributes;                   
   46004:	4878 000e      	pea e <OPER1+0x2>                           
CORE_mutex_Status _CORE_mutex_Initialize(                             
  CORE_mutex_Control           *the_mutex,                            
  CORE_mutex_Attributes        *the_mutex_attributes,                 
  uint32_t                      initial_lock                          
)                                                                     
{                                                                     
   46008:	266e 000c      	moveal %fp@(12),%a3                         
   4600c:	246e 0008      	moveal %fp@(8),%a2                          
/* Add this to the RTEMS environment later ?????????                  
  rtems_assert( initial_lock == CORE_MUTEX_LOCKED ||                  
                initial_lock == CORE_MUTEX_UNLOCKED );                
 */                                                                   
                                                                      
  the_mutex->Attributes    = *the_mutex_attributes;                   
   46010:	2f0b           	movel %a3,%sp@-                             
   46012:	486a 0040      	pea %a2@(64)                                
CORE_mutex_Status _CORE_mutex_Initialize(                             
  CORE_mutex_Control           *the_mutex,                            
  CORE_mutex_Attributes        *the_mutex_attributes,                 
  uint32_t                      initial_lock                          
)                                                                     
{                                                                     
   46016:	242e 0010      	movel %fp@(16),%d2                          
/* Add this to the RTEMS environment later ?????????                  
  rtems_assert( initial_lock == CORE_MUTEX_LOCKED ||                  
                initial_lock == CORE_MUTEX_UNLOCKED );                
 */                                                                   
                                                                      
  the_mutex->Attributes    = *the_mutex_attributes;                   
   4601a:	4eb9 0004 c3f4 	jsr 4c3f4 <memcpy>                          
  the_mutex->lock          = initial_lock;                            
  the_mutex->blocked_count = 0;                                       
                                                                      
  if ( initial_lock == CORE_MUTEX_LOCKED ) {                          
   46020:	4fef 000c      	lea %sp@(12),%sp                            
  rtems_assert( initial_lock == CORE_MUTEX_LOCKED ||                  
                initial_lock == CORE_MUTEX_UNLOCKED );                
 */                                                                   
                                                                      
  the_mutex->Attributes    = *the_mutex_attributes;                   
  the_mutex->lock          = initial_lock;                            
   46024:	2542 004e      	movel %d2,%a2@(78)                          
  the_mutex->blocked_count = 0;                                       
   46028:	42aa 0056      	clrl %a2@(86)                               
                                                                      
  if ( initial_lock == CORE_MUTEX_LOCKED ) {                          
   4602c:	4a82           	tstl %d2                                    
   4602e:	6638           	bnes 46068 <_CORE_mutex_Initialize+0x6c>    
    the_mutex->nest_count = 1;                                        
   46030:	7001           	moveq #1,%d0                                
    the_mutex->holder     = _Thread_Executing;                        
    the_mutex->holder_id  = _Thread_Executing->Object.id;             
    if ( _CORE_mutex_Is_inherit_priority( &the_mutex->Attributes ) || 
   46032:	7202           	moveq #2,%d1                                
  the_mutex->lock          = initial_lock;                            
  the_mutex->blocked_count = 0;                                       
                                                                      
  if ( initial_lock == CORE_MUTEX_LOCKED ) {                          
    the_mutex->nest_count = 1;                                        
    the_mutex->holder     = _Thread_Executing;                        
   46034:	2079 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a0 
  the_mutex->Attributes    = *the_mutex_attributes;                   
  the_mutex->lock          = initial_lock;                            
  the_mutex->blocked_count = 0;                                       
                                                                      
  if ( initial_lock == CORE_MUTEX_LOCKED ) {                          
    the_mutex->nest_count = 1;                                        
   4603a:	2540 0052      	movel %d0,%a2@(82)                          
    the_mutex->holder     = _Thread_Executing;                        
    the_mutex->holder_id  = _Thread_Executing->Object.id;             
   4603e:	2568 0008 005e 	movel %a0@(8),%a2@(94)                      
    STATES_WAITING_FOR_MUTEX,                                         
    CORE_MUTEX_TIMEOUT                                                
  );                                                                  
                                                                      
  return CORE_MUTEX_STATUS_SUCCESSFUL;                                
}                                                                     
   46044:	202a 0046      	movel %a2@(70),%d0                          
  the_mutex->lock          = initial_lock;                            
  the_mutex->blocked_count = 0;                                       
                                                                      
  if ( initial_lock == CORE_MUTEX_LOCKED ) {                          
    the_mutex->nest_count = 1;                                        
    the_mutex->holder     = _Thread_Executing;                        
   46048:	2548 005a      	movel %a0,%a2@(90)                          
    the_mutex->holder_id  = _Thread_Executing->Object.id;             
    if ( _CORE_mutex_Is_inherit_priority( &the_mutex->Attributes ) || 
   4604c:	b280           	cmpl %d0,%d1                                
   4604e:	6708           	beqs 46058 <_CORE_mutex_Initialize+0x5c>    <== NEVER TAKEN
   46050:	123c 0003      	moveb #3,%d1                                
   46054:	b280           	cmpl %d0,%d1                                
   46056:	661c           	bnes 46074 <_CORE_mutex_Initialize+0x78>    <== ALWAYS TAKEN
         _CORE_mutex_Is_priority_ceiling( &the_mutex->Attributes ) ) {
                                                                      
      if ( _Thread_Executing->current_priority <                      
   46058:	202a 004a      	movel %a2@(74),%d0                          <== NOT EXECUTED
   4605c:	b0a8 0014      	cmpl %a0@(20),%d0                           <== NOT EXECUTED
   46060:	6236           	bhis 46098 <_CORE_mutex_Initialize+0x9c>    <== NOT EXECUTED
       _Chain_Prepend_unprotected( &_Thread_Executing->lock_mutex,    
                                   &the_mutex->queue.lock_queue );    
       the_mutex->queue.priority_before = _Thread_Executing->current_priority;
#endif                                                                
                                                                      
      _Thread_Executing->resource_count++;                            
   46062:	52a8 001c      	addql #1,%a0@(28)                           <== NOT EXECUTED
   46066:	600c           	bras 46074 <_CORE_mutex_Initialize+0x78>    <== NOT EXECUTED
    }                                                                 
  } else {                                                            
    the_mutex->nest_count = 0;                                        
   46068:	42aa 0052      	clrl %a2@(82)                               
    the_mutex->holder     = NULL;                                     
   4606c:	42aa 005a      	clrl %a2@(90)                               
    the_mutex->holder_id  = 0;                                        
   46070:	42aa 005e      	clrl %a2@(94)                               
  }                                                                   
                                                                      
  _Thread_queue_Initialize(                                           
   46074:	4878 0005      	pea 5 <COMPARE>                             
   46078:	4878 0400      	pea 400 <D_BIAS+0x2>                        
   4607c:	4aab 0006      	tstl %a3@(6)                                
   46080:	56c0           	sne %d0                                     
   46082:	49c0           	extbl %d0                                   
   46084:	4480           	negl %d0                                    
   46086:	2f00           	movel %d0,%sp@-                             
   46088:	2f0a           	movel %a2,%sp@-                             
   4608a:	4eb9 0004 7d9c 	jsr 47d9c <_Thread_queue_Initialize>        
      THREAD_QUEUE_DISCIPLINE_FIFO : THREAD_QUEUE_DISCIPLINE_PRIORITY,
    STATES_WAITING_FOR_MUTEX,                                         
    CORE_MUTEX_TIMEOUT                                                
  );                                                                  
                                                                      
  return CORE_MUTEX_STATUS_SUCCESSFUL;                                
   46090:	4fef 0010      	lea %sp@(16),%sp                            
   46094:	4280           	clrl %d0                                    
   46096:	6002           	bras 4609a <_CORE_mutex_Initialize+0x9e>    
    if ( _CORE_mutex_Is_inherit_priority( &the_mutex->Attributes ) || 
         _CORE_mutex_Is_priority_ceiling( &the_mutex->Attributes ) ) {
                                                                      
      if ( _Thread_Executing->current_priority <                      
             the_mutex->Attributes.priority_ceiling )                 
       return CORE_MUTEX_STATUS_CEILING_VIOLATED;                     
   46098:	7006           	moveq #6,%d0                                <== NOT EXECUTED
    STATES_WAITING_FOR_MUTEX,                                         
    CORE_MUTEX_TIMEOUT                                                
  );                                                                  
                                                                      
  return CORE_MUTEX_STATUS_SUCCESSFUL;                                
}                                                                     
   4609a:	4cee 0c04 fff4 	moveml %fp@(-12),%d2/%a2-%a3                
   460a0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046108 <_CORE_mutex_Seize>: Objects_Id _id, bool _wait, Watchdog_Interval _timeout, ISR_Level _level ) {
   46108:	4e56 0000      	linkw %fp,#0                                
  _CORE_mutex_Seize_body( _the_mutex, _id, _wait, _timeout, _level ); 
   4610c:	2039 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d0
  Objects_Id           _id,                                           
  bool                 _wait,                                         
  Watchdog_Interval    _timeout,                                      
  ISR_Level            _level                                         
)                                                                     
{                                                                     
   46112:	2f0a           	movel %a2,%sp@-                             
   46114:	246e 0008      	moveal %fp@(8),%a2                          
   46118:	2f02           	movel %d2,%sp@-                             
   4611a:	142e 0013      	moveb %fp@(19),%d2                          
  _CORE_mutex_Seize_body( _the_mutex, _id, _wait, _timeout, _level ); 
   4611e:	4a80           	tstl %d0                                    
   46120:	671c           	beqs 4613e <_CORE_mutex_Seize+0x36>         
   46122:	4a02           	tstb %d2                                    
   46124:	6718           	beqs 4613e <_CORE_mutex_Seize+0x36>         <== NEVER TAKEN
   46126:	7001           	moveq #1,%d0                                
   46128:	b0b9 0005 c830 	cmpl 5c830 <_System_state_Current>,%d0      
   4612e:	640e           	bccs 4613e <_CORE_mutex_Seize+0x36>         
   46130:	4878 0012      	pea 12 <INVALID_OPERATION+0x2>              
   46134:	42a7           	clrl %sp@-                                  
   46136:	42a7           	clrl %sp@-                                  
   46138:	4eb9 0004 675c 	jsr 4675c <_Internal_error_Occurred>        
   4613e:	486e 0018      	pea %fp@(24)                                
   46142:	2f0a           	movel %a2,%sp@-                             
   46144:	4eb9 0004 a044 	jsr 4a044 <_CORE_mutex_Seize_interrupt_trylock>
   4614a:	508f           	addql #8,%sp                                
   4614c:	4a80           	tstl %d0                                    
   4614e:	6750           	beqs 461a0 <_CORE_mutex_Seize+0x98>         
   46150:	4a02           	tstb %d2                                    
   46152:	6614           	bnes 46168 <_CORE_mutex_Seize+0x60>         <== ALWAYS TAKEN
   46154:	202e 0018      	movel %fp@(24),%d0                          <== NOT EXECUTED
   46158:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
   4615a:	2079 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
   46160:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   46162:	2140 0034      	movel %d0,%a0@(52)                          <== NOT EXECUTED
   46166:	6038           	bras 461a0 <_CORE_mutex_Seize+0x98>         <== NOT EXECUTED
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_queue_Enter_critical_section (      
  Thread_queue_Control *the_thread_queue                              
)                                                                     
{                                                                     
  the_thread_queue->sync_state = THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;
   46168:	7001           	moveq #1,%d0                                
   4616a:	2079 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a0 
   46170:	2540 0030      	movel %d0,%a2@(48)                          
   46174:	2039 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d0
   4617a:	5280           	addql #1,%d0                                
   4617c:	216e 000c 0020 	movel %fp@(12),%a0@(32)                     
   46182:	214a 0044      	movel %a2,%a0@(68)                          
   46186:	23c0 0005 c6c8 	movel %d0,5c6c8 <_Thread_Dispatch_disable_level>
   4618c:	202e 0018      	movel %fp@(24),%d0                          
   46190:	46c0           	movew %d0,%sr                               
   46192:	2f2e 0014      	movel %fp@(20),%sp@-                        
   46196:	2f0a           	movel %a2,%sp@-                             
   46198:	4eb9 0004 60a4 	jsr 460a4 <_CORE_mutex_Seize_interrupt_blocking>
   4619e:	508f           	addql #8,%sp                                
}                                                                     
   461a0:	242e fff8      	movel %fp@(-8),%d2                          
   461a4:	246e fffc      	moveal %fp@(-4),%a2                         
   461a8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000460a4 <_CORE_mutex_Seize_interrupt_blocking>: ) { Thread_Control *executing; executing = _Thread_Executing; if ( _CORE_mutex_Is_inherit_priority( &the_mutex->Attributes ) ) {
   460a4:	7002           	moveq #2,%d0                                
                                                                      
void _CORE_mutex_Seize_interrupt_blocking(                            
  CORE_mutex_Control  *the_mutex,                                     
  Watchdog_Interval    timeout                                        
)                                                                     
{                                                                     
   460a6:	4e56 0000      	linkw %fp,#0                                
  Thread_Control   *executing;                                        
                                                                      
  executing = _Thread_Executing;                                      
   460aa:	2279 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a1 
                                                                      
void _CORE_mutex_Seize_interrupt_blocking(                            
  CORE_mutex_Control  *the_mutex,                                     
  Watchdog_Interval    timeout                                        
)                                                                     
{                                                                     
   460b0:	2f0a           	movel %a2,%sp@-                             
   460b2:	246e 0008      	moveal %fp@(8),%a2                          
   460b6:	2f02           	movel %d2,%sp@-                             
   460b8:	242e 000c      	movel %fp@(12),%d2                          
  Thread_Control   *executing;                                        
                                                                      
  executing = _Thread_Executing;                                      
  if ( _CORE_mutex_Is_inherit_priority( &the_mutex->Attributes ) ) {  
   460bc:	b0aa 0046      	cmpl %a2@(70),%d0                           
   460c0:	661e           	bnes 460e0 <_CORE_mutex_Seize_interrupt_blocking+0x3c>
    if ( the_mutex->holder->current_priority > executing->current_priority ) {
   460c2:	206a 005a      	moveal %a2@(90),%a0                         
   460c6:	2029 0014      	movel %a1@(20),%d0                          
   460ca:	b0a8 0014      	cmpl %a0@(20),%d0                           
   460ce:	6410           	bccs 460e0 <_CORE_mutex_Seize_interrupt_blocking+0x3c><== NEVER TAKEN
      _Thread_Change_priority(                                        
   460d0:	42a7           	clrl %sp@-                                  
   460d2:	2f00           	movel %d0,%sp@-                             
   460d4:	2f08           	movel %a0,%sp@-                             
   460d6:	4eb9 0004 7284 	jsr 47284 <_Thread_Change_priority>         
   460dc:	4fef 000c      	lea %sp@(12),%sp                            
        false                                                         
      );                                                              
    }                                                                 
  }                                                                   
                                                                      
  the_mutex->blocked_count++;                                         
   460e0:	52aa 0056      	addql #1,%a2@(86)                           
  _Thread_queue_Enqueue( &the_mutex->Wait_queue, timeout );           
   460e4:	4879 0004 7e6c 	pea 47e6c <_Thread_queue_Timeout>           
   460ea:	2f02           	movel %d2,%sp@-                             
   460ec:	2f0a           	movel %a2,%sp@-                             
   460ee:	4eb9 0004 7b58 	jsr 47b58 <_Thread_queue_Enqueue_with_handler>
                                                                      
  _Thread_Enable_dispatch();                                          
}                                                                     
   460f4:	242e fff8      	movel %fp@(-8),%d2                          
  }                                                                   
                                                                      
  the_mutex->blocked_count++;                                         
  _Thread_queue_Enqueue( &the_mutex->Wait_queue, timeout );           
                                                                      
  _Thread_Enable_dispatch();                                          
   460f8:	4fef 000c      	lea %sp@(12),%sp                            
}                                                                     
   460fc:	246e fffc      	moveal %fp@(-4),%a2                         
   46100:	4e5e           	unlk %fp                                    
  }                                                                   
                                                                      
  the_mutex->blocked_count++;                                         
  _Thread_queue_Enqueue( &the_mutex->Wait_queue, timeout );           
                                                                      
  _Thread_Enable_dispatch();                                          
   46102:	4ef9 0004 771e 	jmp 4771e <_Thread_Enable_dispatch>         
                                                                      

0004a044 <_CORE_mutex_Seize_interrupt_trylock>: #if defined(__RTEMS_DO_NOT_INLINE_CORE_MUTEX_SEIZE__) int _CORE_mutex_Seize_interrupt_trylock( CORE_mutex_Control *the_mutex, ISR_Level *level_p ) {
   4a044:	4e56 fff4      	linkw %fp,#-12                              
{                                                                     
  Thread_Control   *executing;                                        
                                                                      
  /* disabled when you get here */                                    
                                                                      
  executing = _Thread_Executing;                                      
   4a048:	2279 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a1 
   4a04e:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     
   4a052:	206e 0008      	moveal %fp@(8),%a0                          
   4a056:	246e 000c      	moveal %fp@(12),%a2                         
  executing->Wait.return_code = CORE_MUTEX_STATUS_SUCCESSFUL;         
   4a05a:	42a9 0034      	clrl %a1@(52)                               
  if ( !_CORE_mutex_Is_locked( the_mutex ) ) {                        
   4a05e:	4aa8 004e      	tstl %a0@(78)                               
   4a062:	6700 009e      	beqw 4a102 <_CORE_mutex_Seize_interrupt_trylock+0xbe>
    the_mutex->lock       = CORE_MUTEX_LOCKED;                        
    the_mutex->holder     = executing;                                
    the_mutex->holder_id  = executing->Object.id;                     
    the_mutex->nest_count = 1;                                        
   4a066:	7001           	moveq #1,%d0                                
    if ( _CORE_mutex_Is_inherit_priority( &the_mutex->Attributes ) || 
   4a068:	7202           	moveq #2,%d1                                
  executing = _Thread_Executing;                                      
  executing->Wait.return_code = CORE_MUTEX_STATUS_SUCCESSFUL;         
  if ( !_CORE_mutex_Is_locked( the_mutex ) ) {                        
    the_mutex->lock       = CORE_MUTEX_LOCKED;                        
    the_mutex->holder     = executing;                                
    the_mutex->holder_id  = executing->Object.id;                     
   4a06a:	2169 0008 005e 	movel %a1@(8),%a0@(94)                      
    the_mutex->nest_count = 1;                                        
   4a070:	2140 0052      	movel %d0,%a0@(82)                          
  return _CORE_mutex_Seize_interrupt_trylock_body( the_mutex, level_p );
}                                                                     
   4a074:	2028 0046      	movel %a0@(70),%d0                          
  /* disabled when you get here */                                    
                                                                      
  executing = _Thread_Executing;                                      
  executing->Wait.return_code = CORE_MUTEX_STATUS_SUCCESSFUL;         
  if ( !_CORE_mutex_Is_locked( the_mutex ) ) {                        
    the_mutex->lock       = CORE_MUTEX_LOCKED;                        
   4a078:	42a8 004e      	clrl %a0@(78)                               
    the_mutex->holder     = executing;                                
   4a07c:	2149 005a      	movel %a1,%a0@(90)                          
    the_mutex->holder_id  = executing->Object.id;                     
    the_mutex->nest_count = 1;                                        
    if ( _CORE_mutex_Is_inherit_priority( &the_mutex->Attributes ) || 
   4a080:	b280           	cmpl %d0,%d1                                
   4a082:	6706           	beqs 4a08a <_CORE_mutex_Seize_interrupt_trylock+0x46>
   4a084:	7403           	moveq #3,%d2                                
   4a086:	b480           	cmpl %d0,%d2                                
   4a088:	6612           	bnes 4a09c <_CORE_mutex_Seize_interrupt_trylock+0x58><== ALWAYS TAKEN
       _Chain_Prepend_unprotected( &executing->lock_mutex,            
                                   &the_mutex->queue.lock_queue );    
       the_mutex->queue.priority_before = executing->current_priority;
#endif                                                                
                                                                      
      executing->resource_count++;                                    
   4a08a:	2229 001c      	movel %a1@(28),%d1                          
   4a08e:	2401           	movel %d1,%d2                               
   4a090:	5282           	addql #1,%d2                                
   4a092:	2342 001c      	movel %d2,%a1@(28)                          
    }                                                                 
                                                                      
    if ( !_CORE_mutex_Is_priority_ceiling( &the_mutex->Attributes ) ) {
   4a096:	7403           	moveq #3,%d2                                
   4a098:	b480           	cmpl %d0,%d2                                
   4a09a:	6708           	beqs 4a0a4 <_CORE_mutex_Seize_interrupt_trylock+0x60><== NEVER TAKEN
      _ISR_Enable( *level_p );                                        
   4a09c:	2012           	movel %a2@,%d0                              
   4a09e:	46c0           	movew %d0,%sr                               
   4a0a0:	6000 008a      	braw 4a12c <_CORE_mutex_Seize_interrupt_trylock+0xe8>
       */                                                             
    {                                                                 
      Priority_Control  ceiling;                                      
      Priority_Control  current;                                      
                                                                      
      ceiling = the_mutex->Attributes.priority_ceiling;               
   4a0a4:	2028 004a      	movel %a0@(74),%d0                          <== NOT EXECUTED
      current = executing->current_priority;                          
   4a0a8:	2669 0014      	moveal %a1@(20),%a3                         <== NOT EXECUTED
      if ( current == ceiling ) {                                     
   4a0ac:	b08b           	cmpl %a3,%d0                                <== NOT EXECUTED
   4a0ae:	6606           	bnes 4a0b6 <_CORE_mutex_Seize_interrupt_trylock+0x72><== NOT EXECUTED
        _ISR_Enable( *level_p );                                      
   4a0b0:	2012           	movel %a2@,%d0                              <== NOT EXECUTED
   4a0b2:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
   4a0b4:	6076           	bras 4a12c <_CORE_mutex_Seize_interrupt_trylock+0xe8><== NOT EXECUTED
        return 0;                                                     
      }                                                               
                                                                      
      if ( current > ceiling ) {                                      
   4a0b6:	b08b           	cmpl %a3,%d0                                <== NOT EXECUTED
   4a0b8:	642e           	bccs 4a0e8 <_CORE_mutex_Seize_interrupt_trylock+0xa4><== NOT EXECUTED
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   4a0ba:	2039 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   4a0c0:	5280           	addql #1,%d0                                <== NOT EXECUTED
   4a0c2:	23c0 0005 c6c8 	movel %d0,5c6c8 <_Thread_Dispatch_disable_level><== NOT EXECUTED
        _Thread_Disable_dispatch();                                   
        _ISR_Enable( *level_p );                                      
   4a0c8:	2012           	movel %a2@,%d0                              <== NOT EXECUTED
   4a0ca:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
        _Thread_Change_priority(                                      
   4a0cc:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4a0ce:	2f28 004a      	movel %a0@(74),%sp@-                        <== NOT EXECUTED
   4a0d2:	2f28 005a      	movel %a0@(90),%sp@-                        <== NOT EXECUTED
   4a0d6:	4eb9 0004 7284 	jsr 47284 <_Thread_Change_priority>         <== NOT EXECUTED
          the_mutex->holder,                                          
          the_mutex->Attributes.priority_ceiling,                     
         false                                                        
        );                                                            
        _Thread_Enable_dispatch();                                    
   4a0dc:	4eb9 0004 771e 	jsr 4771e <_Thread_Enable_dispatch>         <== NOT EXECUTED
   4a0e2:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4a0e6:	6044           	bras 4a12c <_CORE_mutex_Seize_interrupt_trylock+0xe8><== NOT EXECUTED
        return 0;                                                     
      }                                                               
      /* if ( current < ceiling ) */ {                                
        executing->Wait.return_code = CORE_MUTEX_STATUS_CEILING_VIOLATED;
   4a0e8:	7006           	moveq #6,%d0                                <== NOT EXECUTED
        the_mutex->lock       = CORE_MUTEX_UNLOCKED;                  
   4a0ea:	7401           	moveq #1,%d2                                <== NOT EXECUTED
        );                                                            
        _Thread_Enable_dispatch();                                    
        return 0;                                                     
      }                                                               
      /* if ( current < ceiling ) */ {                                
        executing->Wait.return_code = CORE_MUTEX_STATUS_CEILING_VIOLATED;
   4a0ec:	2340 0034      	movel %d0,%a1@(52)                          <== NOT EXECUTED
        the_mutex->lock       = CORE_MUTEX_UNLOCKED;                  
   4a0f0:	2142 004e      	movel %d2,%a0@(78)                          <== NOT EXECUTED
        the_mutex->nest_count = 0;     /* undo locking above */       
   4a0f4:	42a8 0052      	clrl %a0@(82)                               <== NOT EXECUTED
        executing->resource_count--;   /* undo locking above */       
   4a0f8:	2341 001c      	movel %d1,%a1@(28)                          <== NOT EXECUTED
        _ISR_Enable( *level_p );                                      
   4a0fc:	2012           	movel %a2@,%d0                              <== NOT EXECUTED
   4a0fe:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
   4a100:	602a           	bras 4a12c <_CORE_mutex_Seize_interrupt_trylock+0xe8><== NOT EXECUTED
  /*                                                                  
   *  At this point, we know the mutex was not available.  If this thread
   *  is the thread that has locked the mutex, let's see if we are allowed
   *  to nest access.                                                 
   */                                                                 
  if ( _Thread_Is_executing( the_mutex->holder ) ) {                  
   4a102:	2668 005a      	moveal %a0@(90),%a3                         
   4a106:	b3cb           	cmpal %a3,%a1                               
   4a108:	6626           	bnes 4a130 <_CORE_mutex_Seize_interrupt_trylock+0xec>
    switch ( the_mutex->Attributes.lock_nesting_behavior ) {          
   4a10a:	2028 0040      	movel %a0@(64),%d0                          
   4a10e:	6708           	beqs 4a118 <_CORE_mutex_Seize_interrupt_trylock+0xd4><== NEVER TAKEN
   4a110:	7201           	moveq #1,%d1                                
   4a112:	b280           	cmpl %d0,%d1                                
   4a114:	661a           	bnes 4a130 <_CORE_mutex_Seize_interrupt_trylock+0xec><== ALWAYS TAKEN
   4a116:	600a           	bras 4a122 <_CORE_mutex_Seize_interrupt_trylock+0xde><== NOT EXECUTED
      case CORE_MUTEX_NESTING_ACQUIRES:                               
        the_mutex->nest_count++;                                      
   4a118:	52a8 0052      	addql #1,%a0@(82)                           <== NOT EXECUTED
        _ISR_Enable( *level_p );                                      
   4a11c:	2012           	movel %a2@,%d0                              <== NOT EXECUTED
   4a11e:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
   4a120:	600a           	bras 4a12c <_CORE_mutex_Seize_interrupt_trylock+0xe8><== NOT EXECUTED
        return 0;                                                     
      case CORE_MUTEX_NESTING_IS_ERROR:                               
        executing->Wait.return_code = CORE_MUTEX_STATUS_NESTING_NOT_ALLOWED;
   4a122:	7402           	moveq #2,%d2                                <== NOT EXECUTED
   4a124:	2742 0034      	movel %d2,%a3@(52)                          <== NOT EXECUTED
        _ISR_Enable( *level_p );                                      
   4a128:	2012           	movel %a2@,%d0                              <== NOT EXECUTED
   4a12a:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
        return 0;                                                     
   4a12c:	4280           	clrl %d0                                    
   4a12e:	6002           	bras 4a132 <_CORE_mutex_Seize_interrupt_trylock+0xee>
                                                                      
  /*                                                                  
   *  The mutex is not available and the caller must deal with the possibility
   *  of blocking.                                                    
   */                                                                 
  return 1;                                                           
   4a130:	7001           	moveq #1,%d0                                
   4a132:	4cee 0c04 fff4 	moveml %fp@(-12),%d2/%a2-%a3                
   4a138:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000461ac <_CORE_mutex_Surrender>: #else Objects_Id id __attribute__((unused)), CORE_mutex_API_mp_support_callout api_mutex_mp_support __attribute__((unused)) #endif ) {
   461ac:	4e56 0000      	linkw %fp,#0                                
   461b0:	2f0a           	movel %a2,%sp@-                             
   461b2:	246e 0008      	moveal %fp@(8),%a2                          
  Thread_Control *the_thread;                                         
  Thread_Control *holder;                                             
                                                                      
  holder = the_mutex->holder;                                         
   461b6:	206a 005a      	moveal %a2@(90),%a0                         
   *  allowed when the mutex in quetion is FIFO or simple Priority    
   *  discipline.  But Priority Ceiling or Priority Inheritance mutexes
   *  must be released by the thread which acquired them.             
   */                                                                 
                                                                      
  if ( the_mutex->Attributes.only_owner_release ) {                   
   461ba:	4a2a 0044      	tstb %a2@(68)                               
   461be:	670a           	beqs 461ca <_CORE_mutex_Surrender+0x1e>     
    if ( !_Thread_Is_executing( holder ) )                            
   461c0:	b1f9 0005 c884 	cmpal 5c884 <_Per_CPU_Information+0xc>,%a0  
   461c6:	6600 00ba      	bnew 46282 <_CORE_mutex_Surrender+0xd6>     
      return CORE_MUTEX_STATUS_NOT_OWNER_OF_RESOURCE;                 
  }                                                                   
                                                                      
  /* XXX already unlocked -- not right status */                      
                                                                      
  if ( !the_mutex->nest_count )                                       
   461ca:	202a 0052      	movel %a2@(82),%d0                          
   461ce:	6700 00b6      	beqw 46286 <_CORE_mutex_Surrender+0xda>     
    return CORE_MUTEX_STATUS_SUCCESSFUL;                              
                                                                      
  the_mutex->nest_count--;                                            
   461d2:	5380           	subql #1,%d0                                
   461d4:	2540 0052      	movel %d0,%a2@(82)                          
                                                                      
  if ( the_mutex->nest_count != 0 ) {                                 
   461d8:	6600 00ac      	bnew 46286 <_CORE_mutex_Surrender+0xda>     
    }                                                                 
  } else                                                              
    the_mutex->lock = CORE_MUTEX_UNLOCKED;                            
                                                                      
  return CORE_MUTEX_STATUS_SUCCESSFUL;                                
}                                                                     
   461dc:	202a 0046      	movel %a2@(70),%d0                          
                                                                      
  /*                                                                  
   *  Formally release the mutex before possibly transferring it to a 
   *  blocked thread.                                                 
   */                                                                 
  if ( _CORE_mutex_Is_inherit_priority( &the_mutex->Attributes ) ||   
   461e0:	7202           	moveq #2,%d1                                
   461e2:	b280           	cmpl %d0,%d1                                
   461e4:	6708           	beqs 461ee <_CORE_mutex_Surrender+0x42>     
   461e6:	123c 0003      	moveb #3,%d1                                
   461ea:	b280           	cmpl %d0,%d1                                
   461ec:	6628           	bnes 46216 <_CORE_mutex_Surrender+0x6a>     <== ALWAYS TAKEN
      _CORE_mutex_Pop_priority( the_mutex, holder );                  
                                                                      
    if ( pop_status != CORE_MUTEX_STATUS_SUCCESSFUL )                 
      return pop_status;                                              
                                                                      
    holder->resource_count--;                                         
   461ee:	2028 001c      	movel %a0@(28),%d0                          
   461f2:	5380           	subql #1,%d0                                
   461f4:	2140 001c      	movel %d0,%a0@(28)                          
    /*                                                                
     *  Whether or not someone is waiting for the mutex, an           
     *  inherited priority must be lowered if this is the last        
     *  mutex (i.e. resource) this task has.                          
     */                                                               
    if ( holder->resource_count == 0 &&                               
   461f8:	661c           	bnes 46216 <_CORE_mutex_Surrender+0x6a>     
         holder->real_priority != holder->current_priority ) {        
   461fa:	2028 0018      	movel %a0@(24),%d0                          
    /*                                                                
     *  Whether or not someone is waiting for the mutex, an           
     *  inherited priority must be lowered if this is the last        
     *  mutex (i.e. resource) this task has.                          
     */                                                               
    if ( holder->resource_count == 0 &&                               
   461fe:	b0a8 0014      	cmpl %a0@(20),%d0                           
   46202:	6712           	beqs 46216 <_CORE_mutex_Surrender+0x6a>     
         holder->real_priority != holder->current_priority ) {        
      _Thread_Change_priority( holder, holder->real_priority, true ); 
   46204:	4878 0001      	pea 1 <ADD>                                 
   46208:	2f00           	movel %d0,%sp@-                             
   4620a:	2f08           	movel %a0,%sp@-                             
   4620c:	4eb9 0004 7284 	jsr 47284 <_Thread_Change_priority>         
   46212:	4fef 000c      	lea %sp@(12),%sp                            
    }                                                                 
  }                                                                   
  the_mutex->holder    = NULL;                                        
   46216:	42aa 005a      	clrl %a2@(90)                               
  the_mutex->holder_id = 0;                                           
   4621a:	42aa 005e      	clrl %a2@(94)                               
                                                                      
  /*                                                                  
   *  Now we check if another thread was waiting for this mutex.  If so,
   *  transfer the mutex to that thread.                              
   */                                                                 
  if ( ( the_thread = _Thread_queue_Dequeue( &the_mutex->Wait_queue ) ) ) {
   4621e:	2f0a           	movel %a2,%sp@-                             
   46220:	4eb9 0004 7a18 	jsr 47a18 <_Thread_queue_Dequeue>           
   46226:	588f           	addql #4,%sp                                
   46228:	2040           	moveal %d0,%a0                              
   4622a:	4a80           	tstl %d0                                    
   4622c:	674a           	beqs 46278 <_CORE_mutex_Surrender+0xcc>     
                                                                      
    } else                                                            
#endif                                                                
    {                                                                 
                                                                      
      the_mutex->holder     = the_thread;                             
   4622e:	2540 005a      	movel %d0,%a2@(90)                          
      the_mutex->holder_id  = the_thread->Object.id;                  
      the_mutex->nest_count = 1;                                      
   46232:	7001           	moveq #1,%d0                                
                                                                      
      switch ( the_mutex->Attributes.discipline ) {                   
   46234:	7202           	moveq #2,%d1                                
    } else                                                            
#endif                                                                
    {                                                                 
                                                                      
      the_mutex->holder     = the_thread;                             
      the_mutex->holder_id  = the_thread->Object.id;                  
   46236:	2568 0008 005e 	movel %a0@(8),%a2@(94)                      
      the_mutex->nest_count = 1;                                      
   4623c:	2540 0052      	movel %d0,%a2@(82)                          
                                                                      
      switch ( the_mutex->Attributes.discipline ) {                   
   46240:	202a 0046      	movel %a2@(70),%d0                          
   46244:	b280           	cmpl %d0,%d1                                
   46246:	670a           	beqs 46252 <_CORE_mutex_Surrender+0xa6>     <== ALWAYS TAKEN
   46248:	123c 0003      	moveb #3,%d1                                <== NOT EXECUTED
   4624c:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   4624e:	6636           	bnes 46286 <_CORE_mutex_Surrender+0xda>     <== NOT EXECUTED
   46250:	6006           	bras 46258 <_CORE_mutex_Surrender+0xac>     <== NOT EXECUTED
        case CORE_MUTEX_DISCIPLINES_FIFO:                             
        case CORE_MUTEX_DISCIPLINES_PRIORITY:                         
          break;                                                      
        case CORE_MUTEX_DISCIPLINES_PRIORITY_INHERIT:                 
          _CORE_mutex_Push_priority( the_mutex, the_thread );         
          the_thread->resource_count++;                               
   46252:	52a8 001c      	addql #1,%a0@(28)                           
   46256:	602e           	bras 46286 <_CORE_mutex_Surrender+0xda>     
          break;                                                      
        case CORE_MUTEX_DISCIPLINES_PRIORITY_CEILING:                 
          _CORE_mutex_Push_priority( the_mutex, the_thread );         
          the_thread->resource_count++;                               
          if (the_mutex->Attributes.priority_ceiling <                
   46258:	202a 004a      	movel %a2@(74),%d0                          <== NOT EXECUTED
          _CORE_mutex_Push_priority( the_mutex, the_thread );         
          the_thread->resource_count++;                               
          break;                                                      
        case CORE_MUTEX_DISCIPLINES_PRIORITY_CEILING:                 
          _CORE_mutex_Push_priority( the_mutex, the_thread );         
          the_thread->resource_count++;                               
   4625c:	52a8 001c      	addql #1,%a0@(28)                           <== NOT EXECUTED
          if (the_mutex->Attributes.priority_ceiling <                
   46260:	b0a8 0014      	cmpl %a0@(20),%d0                           <== NOT EXECUTED
   46264:	6420           	bccs 46286 <_CORE_mutex_Surrender+0xda>     <== NOT EXECUTED
              the_thread->current_priority){                          
              _Thread_Change_priority(                                
   46266:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   46268:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4626a:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   4626c:	4eb9 0004 7284 	jsr 47284 <_Thread_Change_priority>         <== NOT EXECUTED
   46272:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   46276:	600e           	bras 46286 <_CORE_mutex_Surrender+0xda>     <== NOT EXECUTED
          }                                                           
          break;                                                      
      }                                                               
    }                                                                 
  } else                                                              
    the_mutex->lock = CORE_MUTEX_UNLOCKED;                            
   46278:	7001           	moveq #1,%d0                                
   4627a:	2540 004e      	movel %d0,%a2@(78)                          
                                                                      
  return CORE_MUTEX_STATUS_SUCCESSFUL;                                
   4627e:	4200           	clrb %d0                                    
   46280:	6006           	bras 46288 <_CORE_mutex_Surrender+0xdc>     
   *  must be released by the thread which acquired them.             
   */                                                                 
                                                                      
  if ( the_mutex->Attributes.only_owner_release ) {                   
    if ( !_Thread_Is_executing( holder ) )                            
      return CORE_MUTEX_STATUS_NOT_OWNER_OF_RESOURCE;                 
   46282:	7003           	moveq #3,%d0                                <== NOT EXECUTED
   46284:	6002           	bras 46288 <_CORE_mutex_Surrender+0xdc>     <== NOT EXECUTED
      }                                                               
    }                                                                 
  } else                                                              
    the_mutex->lock = CORE_MUTEX_UNLOCKED;                            
                                                                      
  return CORE_MUTEX_STATUS_SUCCESSFUL;                                
   46286:	4280           	clrl %d0                                    
}                                                                     
   46288:	246e fffc      	moveal %fp@(-4),%a2                         
   4628c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000462e4 <_CORE_semaphore_Surrender>: CORE_semaphore_Status _CORE_semaphore_Surrender( CORE_semaphore_Control *the_semaphore, Objects_Id id, CORE_semaphore_API_mp_support_callout api_semaphore_mp_support ) {
   462e4:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   462e8:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   462ea:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
  ISR_Level       level;                                              
  CORE_semaphore_Status status;                                       
                                                                      
  status = CORE_SEMAPHORE_STATUS_SUCCESSFUL;                          
                                                                      
  if ( (the_thread = _Thread_queue_Dequeue(&the_semaphore->Wait_queue)) ) {
   462ee:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   462f0:	4eb9 0004 7a18 	jsr 47a18 <_Thread_queue_Dequeue>           <== NOT EXECUTED
   462f6:	588f           	addql #4,%sp                                <== NOT EXECUTED
   462f8:	4a80           	tstl %d0                                    <== NOT EXECUTED
   462fa:	6624           	bnes 46320 <_CORE_semaphore_Surrender+0x3c> <== NOT EXECUTED
    if ( !_Objects_Is_local_id( the_thread->Object.id ) )             
      (*api_semaphore_mp_support) ( the_thread, id );                 
#endif                                                                
                                                                      
  } else {                                                            
    _ISR_Disable( level );                                            
   462fc:	303c 0700      	movew #1792,%d0                             <== NOT EXECUTED
   46300:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   46302:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   46304:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
      if ( the_semaphore->count < the_semaphore->Attributes.maximum_count )
   46306:	202a 0048      	movel %a2@(72),%d0                          <== NOT EXECUTED
   4630a:	b0aa 0040      	cmpl %a2@(64),%d0                           <== NOT EXECUTED
   4630e:	640a           	bccs 4631a <_CORE_semaphore_Surrender+0x36> <== NOT EXECUTED
        the_semaphore->count += 1;                                    
   46310:	5280           	addql #1,%d0                                <== NOT EXECUTED
   46312:	2540 0048      	movel %d0,%a2@(72)                          <== NOT EXECUTED
{                                                                     
  Thread_Control *the_thread;                                         
  ISR_Level       level;                                              
  CORE_semaphore_Status status;                                       
                                                                      
  status = CORE_SEMAPHORE_STATUS_SUCCESSFUL;                          
   46316:	4280           	clrl %d0                                    <== NOT EXECUTED
   46318:	6002           	bras 4631c <_CORE_semaphore_Surrender+0x38> <== NOT EXECUTED
  } else {                                                            
    _ISR_Disable( level );                                            
      if ( the_semaphore->count < the_semaphore->Attributes.maximum_count )
        the_semaphore->count += 1;                                    
      else                                                            
        status = CORE_SEMAPHORE_MAXIMUM_COUNT_EXCEEDED;               
   4631a:	7004           	moveq #4,%d0                                <== NOT EXECUTED
    _ISR_Enable( level );                                             
   4631c:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
   4631e:	6002           	bras 46322 <_CORE_semaphore_Surrender+0x3e> <== NOT EXECUTED
{                                                                     
  Thread_Control *the_thread;                                         
  ISR_Level       level;                                              
  CORE_semaphore_Status status;                                       
                                                                      
  status = CORE_SEMAPHORE_STATUS_SUCCESSFUL;                          
   46320:	4280           	clrl %d0                                    <== NOT EXECUTED
        status = CORE_SEMAPHORE_MAXIMUM_COUNT_EXCEEDED;               
    _ISR_Enable( level );                                             
  }                                                                   
                                                                      
  return status;                                                      
}                                                                     
   46322:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   46326:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00046618 <_Chain_Append_with_empty_check>: ) { ISR_Level level; bool was_empty; _ISR_Disable( level );
   46618:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
                                                                      
bool _Chain_Append_with_empty_check(                                  
  Chain_Control *chain,                                               
  Chain_Node *node                                                    
)                                                                     
{                                                                     
   4661e:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   46622:	226e 0008      	moveal %fp@(8),%a1                          <== NOT EXECUTED
   46626:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   46628:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
   4662c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  ISR_Level level;                                                    
  bool was_empty;                                                     
                                                                      
  _ISR_Disable( level );                                              
   4662e:	40c2           	movew %sr,%d2                               <== NOT EXECUTED
   46630:	8082           	orl %d2,%d0                                 <== NOT EXECUTED
   46632:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  const Chain_Control *the_chain                                      
)                                                                     
{                                                                     
  return _Chain_Immutable_first( the_chain )                          
    == _Chain_Immutable_tail( the_chain );                            
   46634:	2209           	movel %a1,%d1                               <== NOT EXECUTED
   46636:	5881           	addql #4,%d1                                <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  const Chain_Control *the_chain                                      
)                                                                     
{                                                                     
  return _Chain_Immutable_first( the_chain )                          
   46638:	b291           	cmpl %a1@,%d1                               <== NOT EXECUTED
   4663a:	57c0           	seq %d0                                     <== NOT EXECUTED
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
  Chain_Node *old_last = tail->previous;                              
   4663c:	2469 0008      	moveal %a1@(8),%a2                          <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  const Chain_Control *the_chain                                      
)                                                                     
{                                                                     
  return _Chain_Immutable_first( the_chain )                          
   46640:	4480           	negl %d0                                    <== NOT EXECUTED
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
  Chain_Node *old_last = tail->previous;                              
                                                                      
  the_node->next = tail;                                              
  tail->previous = the_node;                                          
   46642:	2348 0008      	movel %a0,%a1@(8)                           <== NOT EXECUTED
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
  Chain_Node *old_last = tail->previous;                              
                                                                      
  the_node->next = tail;                                              
   46646:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
  tail->previous = the_node;                                          
  old_last->next = the_node;                                          
  the_node->previous = old_last;                                      
   46648:	214a 0004      	movel %a2,%a0@(4)                           <== NOT EXECUTED
  Chain_Node *tail = _Chain_Tail( the_chain );                        
  Chain_Node *old_last = tail->previous;                              
                                                                      
  the_node->next = tail;                                              
  tail->previous = the_node;                                          
  old_last->next = the_node;                                          
   4664c:	2488           	movel %a0,%a2@                              <== NOT EXECUTED
  was_empty = _Chain_Append_with_empty_check_unprotected( chain, node );
  _ISR_Enable( level );                                               
   4664e:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
                                                                      
  return was_empty;                                                   
}                                                                     
   46650:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
   46652:	245f           	moveal %sp@+,%a2                            <== NOT EXECUTED
   46654:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000466b8 <_Chain_Get_with_empty_check>: ) { ISR_Level level; bool is_empty_now; _ISR_Disable( level );
   466b8:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
                                                                      
bool _Chain_Get_with_empty_check(                                     
  Chain_Control *chain,                                               
  Chain_Node **node                                                   
)                                                                     
{                                                                     
   466be:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   466c2:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   466c6:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   466c8:	266e 000c      	moveal %fp@(12),%a3                         <== NOT EXECUTED
   466cc:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
  ISR_Level level;                                                    
  bool is_empty_now;                                                  
                                                                      
  _ISR_Disable( level );                                              
   466ce:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   466d0:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   466d2:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
  Chain_Node **the_node                                               
)                                                                     
{                                                                     
  bool is_empty_now = true;                                           
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   466d4:	2008           	movel %a0,%d0                               <== NOT EXECUTED
   466d6:	5880           	addql #4,%d0                                <== NOT EXECUTED
  Chain_Node *old_first = head->next;                                 
   466d8:	2450           	moveal %a0@,%a2                             <== NOT EXECUTED
                                                                      
  if ( old_first != tail ) {                                          
   466da:	b08a           	cmpl %a2,%d0                                <== NOT EXECUTED
   466dc:	6712           	beqs 466f0 <_Chain_Get_with_empty_check+0x38><== NOT EXECUTED
    Chain_Node *new_first = old_first->next;                          
   466de:	2252           	moveal %a2@,%a1                             <== NOT EXECUTED
    head->next = new_first;                                           
    new_first->previous = head;                                       
                                                                      
    *the_node = old_first;                                            
                                                                      
    is_empty_now = new_first == tail;                                 
   466e0:	b089           	cmpl %a1,%d0                                <== NOT EXECUTED
   466e2:	57c0           	seq %d0                                     <== NOT EXECUTED
  Chain_Node *old_first = head->next;                                 
                                                                      
  if ( old_first != tail ) {                                          
    Chain_Node *new_first = old_first->next;                          
                                                                      
    head->next = new_first;                                           
   466e4:	2089           	movel %a1,%a0@                              <== NOT EXECUTED
    new_first->previous = head;                                       
                                                                      
    *the_node = old_first;                                            
                                                                      
    is_empty_now = new_first == tail;                                 
   466e6:	4480           	negl %d0                                    <== NOT EXECUTED
                                                                      
  if ( old_first != tail ) {                                          
    Chain_Node *new_first = old_first->next;                          
                                                                      
    head->next = new_first;                                           
    new_first->previous = head;                                       
   466e8:	2348 0004      	movel %a0,%a1@(4)                           <== NOT EXECUTED
                                                                      
    *the_node = old_first;                                            
   466ec:	268a           	movel %a2,%a3@                              <== NOT EXECUTED
   466ee:	6004           	bras 466f4 <_Chain_Get_with_empty_check+0x3c><== NOT EXECUTED
                                                                      
    is_empty_now = new_first == tail;                                 
  } else                                                              
    *the_node = NULL;                                                 
   466f0:	4293           	clrl %a3@                                   <== NOT EXECUTED
RTEMS_INLINE_ROUTINE bool _Chain_Get_with_empty_check_unprotected(    
  Chain_Control *the_chain,                                           
  Chain_Node **the_node                                               
)                                                                     
{                                                                     
  bool is_empty_now = true;                                           
   466f2:	7001           	moveq #1,%d0                                <== NOT EXECUTED
  is_empty_now = _Chain_Get_with_empty_check_unprotected( chain, node );
  _ISR_Enable( level );                                               
   466f4:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
                                                                      
  return is_empty_now;                                                
}                                                                     
   466f6:	245f           	moveal %sp@+,%a2                            <== NOT EXECUTED
   466f8:	265f           	moveal %sp@+,%a3                            <== NOT EXECUTED
   466fa:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00046764 <_Chain_Prepend_with_empty_check>: ) { ISR_Level level; bool was_empty; _ISR_Disable( level );
   46764:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
                                                                      
bool _Chain_Prepend_with_empty_check(                                 
  Chain_Control *chain,                                               
  Chain_Node *node                                                    
)                                                                     
{                                                                     
   4676a:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4676e:	226e 0008      	moveal %fp@(8),%a1                          <== NOT EXECUTED
   46772:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   46774:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
  ISR_Level level;                                                    
  bool was_empty;                                                     
                                                                      
  _ISR_Disable( level );                                              
   46778:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   4677a:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   4677c:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
  was_empty = _Chain_Prepend_with_empty_check_unprotected( chain, node );
  _ISR_Enable( level );                                               
                                                                      
  return was_empty;                                                   
}                                                                     
   4677e:	2451           	moveal %a1@,%a2                             <== NOT EXECUTED
  Chain_Node *the_node                                                
)                                                                     
{                                                                     
  Chain_Node *before_node;                                            
                                                                      
  the_node->previous    = after_node;                                 
   46780:	2149 0004      	movel %a1,%a0@(4)                           <== NOT EXECUTED
  before_node           = after_node->next;                           
  after_node->next      = the_node;                                   
   46784:	22c8           	movel %a0,%a1@+                             <== NOT EXECUTED
  the_node->next        = before_node;                                
  before_node->previous = the_node;                                   
   46786:	2548 0004      	movel %a0,%a2@(4)                           <== NOT EXECUTED
  Chain_Node *before_node;                                            
                                                                      
  the_node->previous    = after_node;                                 
  before_node           = after_node->next;                           
  after_node->next      = the_node;                                   
  the_node->next        = before_node;                                
   4678a:	208a           	movel %a2,%a0@                              <== NOT EXECUTED
  ISR_Level level;                                                    
  bool was_empty;                                                     
                                                                      
  _ISR_Disable( level );                                              
  was_empty = _Chain_Prepend_with_empty_check_unprotected( chain, node );
  _ISR_Enable( level );                                               
   4678c:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  const Chain_Control *the_chain                                      
)                                                                     
{                                                                     
  return _Chain_Immutable_first( the_chain )                          
   4678e:	b3ca           	cmpal %a2,%a1                               <== NOT EXECUTED
   46790:	57c0           	seq %d0                                     <== NOT EXECUTED
                                                                      
  return was_empty;                                                   
}                                                                     
   46792:	245f           	moveal %sp@+,%a2                            <== NOT EXECUTED
   46794:	4480           	negl %d0                                    <== NOT EXECUTED
   46796:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

000450a0 <_Event_Seize>: executing = _Thread_Executing; executing->Wait.return_code = RTEMS_SUCCESSFUL; api = executing->API_Extensions[ THREAD_API_RTEMS ]; _ISR_Disable( level );
   450a0:	203c 0000 0700 	movel #1792,%d0                             
  rtems_event_set  event_in,                                          
  rtems_option     option_set,                                        
  rtems_interval   ticks,                                             
  rtems_event_set *event_out                                          
)                                                                     
{                                                                     
   450a6:	4e56 ffec      	linkw %fp,#-20                              
   450aa:	226e 0010      	moveal %fp@(16),%a1                         
   450ae:	48d7 0c1c      	moveml %d2-%d4/%a2-%a3,%sp@                 
  rtems_event_set                   pending_events;                   
  ISR_Level                         level;                            
  RTEMS_API_Control                *api;                              
  Thread_blocking_operation_States  sync_state;                       
                                                                      
  executing = _Thread_Executing;                                      
   450b2:	2479 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a2 
  rtems_event_set  event_in,                                          
  rtems_option     option_set,                                        
  rtems_interval   ticks,                                             
  rtems_event_set *event_out                                          
)                                                                     
{                                                                     
   450b8:	242e 0008      	movel %fp@(8),%d2                           
   450bc:	262e 000c      	movel %fp@(12),%d3                          
   450c0:	206e 0014      	moveal %fp@(20),%a0                         
  ISR_Level                         level;                            
  RTEMS_API_Control                *api;                              
  Thread_blocking_operation_States  sync_state;                       
                                                                      
  executing = _Thread_Executing;                                      
  executing->Wait.return_code = RTEMS_SUCCESSFUL;                     
   450c4:	42aa 0034      	clrl %a2@(52)                               
                                                                      
  api = executing->API_Extensions[ THREAD_API_RTEMS ];                
   450c8:	266a 00fc      	moveal %a2@(252),%a3                        
                                                                      
  _ISR_Disable( level );                                              
   450cc:	40c1           	movew %sr,%d1                               
   450ce:	8081           	orl %d1,%d0                                 
   450d0:	46c0           	movew %d0,%sr                               
  pending_events = api->pending_events;                               
   450d2:	2813           	movel %a3@,%d4                              
RTEMS_INLINE_ROUTINE rtems_event_set _Event_sets_Get(                 
  rtems_event_set the_event_set,                                      
  rtems_event_set the_event_condition                                 
)                                                                     
{                                                                     
   return ( the_event_set & the_event_condition );                    
   450d4:	2002           	movel %d2,%d0                               
   450d6:	c084           	andl %d4,%d0                                
  seized_events  = _Event_sets_Get( pending_events, event_in );       
                                                                      
  if ( !_Event_sets_Is_empty( seized_events ) &&                      
   450d8:	6716           	beqs 450f0 <_Event_Seize+0x50>              
   450da:	b480           	cmpl %d0,%d2                                
   450dc:	6706           	beqs 450e4 <_Event_Seize+0x44>              <== ALWAYS TAKEN
       (seized_events == event_in || _Options_Is_any( option_set )) ) {
   450de:	0803 0001      	btst #1,%d3                                 <== NOT EXECUTED
   450e2:	670c           	beqs 450f0 <_Event_Seize+0x50>              <== NOT EXECUTED
RTEMS_INLINE_ROUTINE rtems_event_set _Event_sets_Clear(               
 rtems_event_set the_event_set,                                       
 rtems_event_set the_mask                                             
)                                                                     
{                                                                     
   return ( the_event_set & ~(the_mask) );                            
   450e4:	2400           	movel %d0,%d2                               
   450e6:	4682           	notl %d2                                    
   450e8:	c484           	andl %d4,%d2                                
   450ea:	2682           	movel %d2,%a3@                              
    api->pending_events =                                             
      _Event_sets_Clear( pending_events, seized_events );             
    _ISR_Enable( level );                                             
   450ec:	46c1           	movew %d1,%sr                               
   450ee:	600e           	bras 450fe <_Event_Seize+0x5e>              
    *event_out = seized_events;                                       
    return;                                                           
  }                                                                   
                                                                      
  if ( _Options_Is_no_wait( option_set ) ) {                          
   450f0:	0803 0000      	btst #0,%d3                                 
   450f4:	670e           	beqs 45104 <_Event_Seize+0x64>              <== ALWAYS TAKEN
    _ISR_Enable( level );                                             
   450f6:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
    executing->Wait.return_code = RTEMS_UNSATISFIED;                  
   450f8:	720d           	moveq #13,%d1                               <== NOT EXECUTED
   450fa:	2541 0034      	movel %d1,%a2@(52)                          <== NOT EXECUTED
    *event_out = seized_events;                                       
   450fe:	2080           	movel %d0,%a0@                              
    return;                                                           
   45100:	6000 0096      	braw 45198 <_Event_Seize+0xf8>              
   *                                                                  
   *  NOTE: Since interrupts are disabled, this isn't that much of an 
   *        issue but better safe than sorry.                         
   */                                                                 
  executing->Wait.option            = (uint32_t) option_set;          
  executing->Wait.count             = (uint32_t) event_in;            
   45104:	2542 0024      	movel %d2,%a2@(36)                          
  executing->Wait.return_argument   = event_out;                      
                                                                      
  _Event_Sync_state = THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;     
   45108:	7401           	moveq #1,%d2                                
   *  set properly when we are marked as in the event critical section.
   *                                                                  
   *  NOTE: Since interrupts are disabled, this isn't that much of an 
   *        issue but better safe than sorry.                         
   */                                                                 
  executing->Wait.option            = (uint32_t) option_set;          
   4510a:	2543 0030      	movel %d3,%a2@(48)                          
  executing->Wait.count             = (uint32_t) event_in;            
  executing->Wait.return_argument   = event_out;                      
   4510e:	2548 0028      	movel %a0,%a2@(40)                          
                                                                      
  _Event_Sync_state = THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;     
   45112:	23c2 0005 c8b8 	movel %d2,5c8b8 <_Event_Sync_state>         
                                                                      
  _ISR_Enable( level );                                               
   45118:	46c1           	movew %d1,%sr                               
                                                                      
  if ( ticks ) {                                                      
   4511a:	4a89           	tstl %a1                                    
   4511c:	6730           	beqs 4514e <_Event_Seize+0xae>              
    _Watchdog_Initialize(                                             
   4511e:	202a 0008      	movel %a2@(8),%d0                           
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
  the_watchdog->routine   = routine;                                  
   45122:	223c 0004 52fc 	movel #283388,%d1                           
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   45128:	42aa 0050      	clrl %a2@(80)                               
  the_watchdog->routine   = routine;                                  
   4512c:	2541 0064      	movel %d1,%a2@(100)                         
  the_watchdog->id        = id;                                       
   45130:	2540 0068      	movel %d0,%a2@(104)                         
  the_watchdog->user_data = user_data;                                
   45134:	42aa 006c      	clrl %a2@(108)                              
  Watchdog_Control      *the_watchdog,                                
  Watchdog_Interval      units                                        
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
   45138:	2549 0054      	movel %a1,%a2@(84)                          
                                                                      
  _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );           
   4513c:	486a 0048      	pea %a2@(72)                                
   45140:	4879 0005 c7a8 	pea 5c7a8 <_Watchdog_Ticks_chain>           
   45146:	4eb9 0004 8440 	jsr 48440 <_Watchdog_Insert>                
   4514c:	508f           	addql #8,%sp                                
      NULL                                                            
    );                                                                
    _Watchdog_Insert_ticks( &executing->Timer, ticks );               
  }                                                                   
                                                                      
  _Thread_Set_state( executing, STATES_WAITING_FOR_EVENT );           
   4514e:	4878 0100      	pea 100 <DBL_MANT_DIG+0xcb>                 
   45152:	2f0a           	movel %a2,%sp@-                             
   45154:	4eb9 0004 7ecc 	jsr 47ecc <_Thread_Set_state>               
                                                                      
  _ISR_Disable( level );                                              
   4515a:	203c 0000 0700 	movel #1792,%d0                             
   45160:	40c1           	movew %sr,%d1                               
   45162:	8081           	orl %d1,%d0                                 
   45164:	46c0           	movew %d0,%sr                               
                                                                      
  sync_state = _Event_Sync_state;                                     
  _Event_Sync_state = THREAD_BLOCKING_OPERATION_SYNCHRONIZED;         
  if ( sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED ) {   
   45166:	7401           	moveq #1,%d2                                
   45168:	508f           	addql #8,%sp                                
                                                                      
  _Thread_Set_state( executing, STATES_WAITING_FOR_EVENT );           
                                                                      
  _ISR_Disable( level );                                              
                                                                      
  sync_state = _Event_Sync_state;                                     
   4516a:	2039 0005 c8b8 	movel 5c8b8 <_Event_Sync_state>,%d0         
  _Event_Sync_state = THREAD_BLOCKING_OPERATION_SYNCHRONIZED;         
   45170:	42b9 0005 c8b8 	clrl 5c8b8 <_Event_Sync_state>              
  if ( sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED ) {   
   45176:	b480           	cmpl %d0,%d2                                
   45178:	6604           	bnes 4517e <_Event_Seize+0xde>              <== NEVER TAKEN
    _ISR_Enable( level );                                             
   4517a:	46c1           	movew %d1,%sr                               
   4517c:	601a           	bras 45198 <_Event_Seize+0xf8>              
   *  An interrupt completed the thread's blocking request.           
   *  The blocking thread was satisfied by an ISR or timed out.       
   *                                                                  
   *  WARNING! Returning with interrupts disabled!                    
   */                                                                 
  _Thread_blocking_operation_Cancel( sync_state, executing, level );  
   4517e:	2d4a 000c      	movel %a2,%fp@(12)                          <== NOT EXECUTED
   45182:	2d41 0010      	movel %d1,%fp@(16)                          <== NOT EXECUTED
}                                                                     
   45186:	4cee 0c1c ffec 	moveml %fp@(-20),%d2-%d4/%a2-%a3            <== NOT EXECUTED
   *  An interrupt completed the thread's blocking request.           
   *  The blocking thread was satisfied by an ISR or timed out.       
   *                                                                  
   *  WARNING! Returning with interrupts disabled!                    
   */                                                                 
  _Thread_blocking_operation_Cancel( sync_state, executing, level );  
   4518c:	2d40 0008      	movel %d0,%fp@(8)                           <== NOT EXECUTED
}                                                                     
   45190:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   *  An interrupt completed the thread's blocking request.           
   *  The blocking thread was satisfied by an ISR or timed out.       
   *                                                                  
   *  WARNING! Returning with interrupts disabled!                    
   */                                                                 
  _Thread_blocking_operation_Cancel( sync_state, executing, level );  
   45192:	4ef9 0004 7234 	jmp 47234 <_Thread_blocking_operation_Cancel><== NOT EXECUTED
}                                                                     
   45198:	4cee 0c1c ffec 	moveml %fp@(-20),%d2-%d4/%a2-%a3            
   4519e:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

000451f8 <_Event_Surrender>: api = the_thread->API_Extensions[ THREAD_API_RTEMS ]; option_set = (rtems_option) the_thread->Wait.option; _ISR_Disable( level );
   451f8:	203c 0000 0700 	movel #1792,%d0                             
 */                                                                   
                                                                      
void _Event_Surrender(                                                
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
   451fe:	4e56 ffe8      	linkw %fp,#-24                              
   45202:	48d7 0c3c      	moveml %d2-%d5/%a2-%a3,%sp@                 
   45206:	246e 0008      	moveal %fp@(8),%a2                          
  rtems_event_set     event_condition;                                
  rtems_event_set     seized_events;                                  
  rtems_option        option_set;                                     
  RTEMS_API_Control  *api;                                            
                                                                      
  api = the_thread->API_Extensions[ THREAD_API_RTEMS ];               
   4520a:	206a 00fc      	moveal %a2@(252),%a0                        
                                                                      
  option_set = (rtems_option) the_thread->Wait.option;                
   4520e:	282a 0030      	movel %a2@(48),%d4                          
                                                                      
  _ISR_Disable( level );                                              
   45212:	40c1           	movew %sr,%d1                               
   45214:	8081           	orl %d1,%d0                                 
   45216:	46c0           	movew %d0,%sr                               
  pending_events  = api->pending_events;                              
  event_condition = (rtems_event_set) the_thread->Wait.count;         
   45218:	262a 0024      	movel %a2@(36),%d3                          
RTEMS_INLINE_ROUTINE rtems_event_set _Event_sets_Get(                 
  rtems_event_set the_event_set,                                      
  rtems_event_set the_event_condition                                 
)                                                                     
{                                                                     
   return ( the_event_set & the_event_condition );                    
   4521c:	2003           	movel %d3,%d0                               
  api = the_thread->API_Extensions[ THREAD_API_RTEMS ];               
                                                                      
  option_set = (rtems_option) the_thread->Wait.option;                
                                                                      
  _ISR_Disable( level );                                              
  pending_events  = api->pending_events;                              
   4521e:	2410           	movel %a0@,%d2                              
   45220:	c082           	andl %d2,%d0                                
  seized_events = _Event_sets_Get( pending_events, event_condition ); 
                                                                      
  /*                                                                  
   *  No events were seized in this operation                         
   */                                                                 
  if ( _Event_sets_Is_empty( seized_events ) ) {                      
   45222:	6606           	bnes 4522a <_Event_Surrender+0x32>          
    _ISR_Enable( level );                                             
   45224:	46c1           	movew %d1,%sr                               
    return;                                                           
   45226:	6000 00ca      	braw 452f2 <_Event_Surrender+0xfa>          
                                                                      
  /*                                                                  
   *  If we are in an ISR and sending to the current thread, then     
   *  we have a critical section issue to deal with.                  
   */                                                                 
  if ( _ISR_Is_in_progress() &&                                       
   4522a:	4ab9 0005 c880 	tstl 5c880 <_Per_CPU_Information+0x8>       
   45230:	674a           	beqs 4527c <_Event_Surrender+0x84>          <== ALWAYS TAKEN
   45232:	b5f9 0005 c884 	cmpal 5c884 <_Per_CPU_Information+0xc>,%a2  <== NOT EXECUTED
   45238:	6642           	bnes 4527c <_Event_Surrender+0x84>          <== NOT EXECUTED
       _Thread_Is_executing( the_thread ) &&                          
       ((_Event_Sync_state == THREAD_BLOCKING_OPERATION_TIMEOUT) ||   
   4523a:	2279 0005 c8b8 	moveal 5c8b8 <_Event_Sync_state>,%a1        <== NOT EXECUTED
  /*                                                                  
   *  If we are in an ISR and sending to the current thread, then     
   *  we have a critical section issue to deal with.                  
   */                                                                 
  if ( _ISR_Is_in_progress() &&                                       
       _Thread_Is_executing( the_thread ) &&                          
   45240:	7a02           	moveq #2,%d5                                <== NOT EXECUTED
   45242:	ba89           	cmpl %a1,%d5                                <== NOT EXECUTED
   45244:	670e           	beqs 45254 <_Event_Surrender+0x5c>          <== NOT EXECUTED
       ((_Event_Sync_state == THREAD_BLOCKING_OPERATION_TIMEOUT) ||   
        (_Event_Sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED)) ) {
   45246:	2279 0005 c8b8 	moveal 5c8b8 <_Event_Sync_state>,%a1        <== NOT EXECUTED
   *  If we are in an ISR and sending to the current thread, then     
   *  we have a critical section issue to deal with.                  
   */                                                                 
  if ( _ISR_Is_in_progress() &&                                       
       _Thread_Is_executing( the_thread ) &&                          
       ((_Event_Sync_state == THREAD_BLOCKING_OPERATION_TIMEOUT) ||   
   4524c:	1a3c 0001      	moveb #1,%d5                                <== NOT EXECUTED
   45250:	ba89           	cmpl %a1,%d5                                <== NOT EXECUTED
   45252:	6628           	bnes 4527c <_Event_Surrender+0x84>          <== NOT EXECUTED
        (_Event_Sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED)) ) {
    if ( seized_events == event_condition || _Options_Is_any(option_set) ) {
   45254:	b680           	cmpl %d0,%d3                                <== NOT EXECUTED
   45256:	6706           	beqs 4525e <_Event_Surrender+0x66>          <== NOT EXECUTED
   45258:	0804 0001      	btst #1,%d4                                 <== NOT EXECUTED
   4525c:	671a           	beqs 45278 <_Event_Surrender+0x80>          <== NOT EXECUTED
RTEMS_INLINE_ROUTINE rtems_event_set _Event_sets_Clear(               
 rtems_event_set the_event_set,                                       
 rtems_event_set the_mask                                             
)                                                                     
{                                                                     
   return ( the_event_set & ~(the_mask) );                            
   4525e:	2600           	movel %d0,%d3                               <== NOT EXECUTED
   45260:	4683           	notl %d3                                    <== NOT EXECUTED
   45262:	c682           	andl %d2,%d3                                <== NOT EXECUTED
   45264:	2083           	movel %d3,%a0@                              <== NOT EXECUTED
      api->pending_events = _Event_sets_Clear( pending_events,seized_events );
      the_thread->Wait.count = 0;                                     
      *(rtems_event_set *)the_thread->Wait.return_argument = seized_events;
   45266:	206a 0028      	moveal %a2@(40),%a0                         <== NOT EXECUTED
       _Thread_Is_executing( the_thread ) &&                          
       ((_Event_Sync_state == THREAD_BLOCKING_OPERATION_TIMEOUT) ||   
        (_Event_Sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED)) ) {
    if ( seized_events == event_condition || _Options_Is_any(option_set) ) {
      api->pending_events = _Event_sets_Clear( pending_events,seized_events );
      the_thread->Wait.count = 0;                                     
   4526a:	42aa 0024      	clrl %a2@(36)                               <== NOT EXECUTED
      *(rtems_event_set *)the_thread->Wait.return_argument = seized_events;
   4526e:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
      _Event_Sync_state = THREAD_BLOCKING_OPERATION_SATISFIED;        
   45270:	7003           	moveq #3,%d0                                <== NOT EXECUTED
   45272:	23c0 0005 c8b8 	movel %d0,5c8b8 <_Event_Sync_state>         <== NOT EXECUTED
    }                                                                 
    _ISR_Enable( level );                                             
   45278:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
    return;                                                           
   4527a:	6076           	bras 452f2 <_Event_Surrender+0xfa>          <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE bool _States_Is_waiting_for_event (              
  States_Control the_states                                           
)                                                                     
{                                                                     
   return (the_states & STATES_WAITING_FOR_EVENT);                    
   4527c:	2a2a 0010      	movel %a2@(16),%d5                          
   45280:	0285 0000 0100 	andil #256,%d5                              
  }                                                                   
                                                                      
  /*                                                                  
   *  Otherwise, this is a normal send to another thread              
   */                                                                 
  if ( _States_Is_waiting_for_event( the_thread->current_state ) ) {  
   45286:	6768           	beqs 452f0 <_Event_Surrender+0xf8>          <== NEVER TAKEN
    if ( seized_events == event_condition || _Options_Is_any( option_set ) ) {
   45288:	b680           	cmpl %d0,%d3                                
   4528a:	6706           	beqs 45292 <_Event_Surrender+0x9a>          <== ALWAYS TAKEN
   4528c:	0804 0001      	btst #1,%d4                                 <== NOT EXECUTED
   45290:	675e           	beqs 452f0 <_Event_Surrender+0xf8>          <== NOT EXECUTED
   45292:	2600           	movel %d0,%d3                               
   45294:	4683           	notl %d3                                    
   45296:	c682           	andl %d2,%d3                                
   45298:	2083           	movel %d3,%a0@                              
      api->pending_events = _Event_sets_Clear( pending_events, seized_events );
      the_thread->Wait.count = 0;                                     
      *(rtems_event_set *)the_thread->Wait.return_argument = seized_events;
   4529a:	206a 0028      	moveal %a2@(40),%a0                         
   *  Otherwise, this is a normal send to another thread              
   */                                                                 
  if ( _States_Is_waiting_for_event( the_thread->current_state ) ) {  
    if ( seized_events == event_condition || _Options_Is_any( option_set ) ) {
      api->pending_events = _Event_sets_Clear( pending_events, seized_events );
      the_thread->Wait.count = 0;                                     
   4529e:	42aa 0024      	clrl %a2@(36)                               
      *(rtems_event_set *)the_thread->Wait.return_argument = seized_events;
   452a2:	2080           	movel %d0,%a0@                              
                                                                      
      _ISR_Flash( level );                                            
   452a4:	203c 0000 0700 	movel #1792,%d0                             
   452aa:	46c1           	movew %d1,%sr                               
   452ac:	8081           	orl %d1,%d0                                 
   452ae:	46c0           	movew %d0,%sr                               
   452b0:	47f9 0004 73c0 	lea 473c0 <_Thread_Clear_state>,%a3         
                                                                      
      if ( !_Watchdog_Is_active( &the_thread->Timer ) ) {             
   452b6:	7a02           	moveq #2,%d5                                
   452b8:	baaa 0050      	cmpl %a2@(80),%d5                           
   452bc:	6710           	beqs 452ce <_Event_Surrender+0xd6>          
        _ISR_Enable( level );                                         
   452be:	46c1           	movew %d1,%sr                               
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unblock (                           
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
  _Thread_Clear_state( the_thread, STATES_BLOCKED );                  
   452c0:	2f3c 1003 fff8 	movel #268697592,%sp@-                      
   452c6:	2f0a           	movel %a2,%sp@-                             
   452c8:	4e93           	jsr %a3@                                    
   452ca:	508f           	addql #8,%sp                                
   452cc:	6024           	bras 452f2 <_Event_Surrender+0xfa>          
RTEMS_INLINE_ROUTINE void _Watchdog_Deactivate(                       
  Watchdog_Control *the_watchdog                                      
)                                                                     
{                                                                     
                                                                      
  the_watchdog->state = WATCHDOG_REMOVE_IT;                           
   452ce:	7003           	moveq #3,%d0                                
   452d0:	2540 0050      	movel %d0,%a2@(80)                          
        _Thread_Unblock( the_thread );                                
      } else {                                                        
        _Watchdog_Deactivate( &the_thread->Timer );                   
        _ISR_Enable( level );                                         
   452d4:	46c1           	movew %d1,%sr                               
        (void) _Watchdog_Remove( &the_thread->Timer );                
   452d6:	486a 0048      	pea %a2@(72)                                
   452da:	4eb9 0004 8568 	jsr 48568 <_Watchdog_Remove>                
   452e0:	2f3c 1003 fff8 	movel #268697592,%sp@-                      
   452e6:	2f0a           	movel %a2,%sp@-                             
   452e8:	4e93           	jsr %a3@                                    
   452ea:	4fef 000c      	lea %sp@(12),%sp                            
   452ee:	6002           	bras 452f2 <_Event_Surrender+0xfa>          
        _Thread_Unblock( the_thread );                                
      }                                                               
      return;                                                         
    }                                                                 
  }                                                                   
  _ISR_Enable( level );                                               
   452f0:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
}                                                                     
   452f2:	4cee 0c3c ffe8 	moveml %fp@(-24),%d2-%d5/%a2-%a3            
   452f8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000452fc <_Event_Timeout>: void _Event_Timeout( Objects_Id id, void *ignored ) {
   452fc:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   45300:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   45302:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  Thread_Control    *the_thread;                                      
  Objects_Locations  location;                                        
  ISR_Level          level;                                           
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   45304:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   45308:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4530c:	4eb9 0004 7744 	jsr 47744 <_Thread_Get>                     <== NOT EXECUTED
  switch ( location ) {                                               
   45312:	508f           	addql #8,%sp                                <== NOT EXECUTED
   45314:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   45318:	6656           	bnes 45370 <_Event_Timeout+0x74>            <== NOT EXECUTED
       *                                                              
       *  If it is not satisfied, then it is "nothing happened" and   
       *  this is the "timeout" transition.  After a request is satisfied,
       *  a timeout is not allowed to occur.                          
       */                                                             
      _ISR_Disable( level );                                          
   4531a:	223c 0000 0700 	movel #1792,%d1                             <== NOT EXECUTED
   45320:	40c2           	movew %sr,%d2                               <== NOT EXECUTED
   45322:	8282           	orl %d2,%d1                                 <== NOT EXECUTED
   45324:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
            _ISR_Enable( level );                                     
            return;                                                   
          }                                                           
        #endif                                                        
                                                                      
        the_thread->Wait.count = 0;                                   
   45326:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   45328:	42a8 0024      	clrl %a0@(36)                               <== NOT EXECUTED
        if ( _Thread_Is_executing( the_thread ) ) {                   
   4532c:	b0b9 0005 c884 	cmpl 5c884 <_Per_CPU_Information+0xc>,%d0   <== NOT EXECUTED
   45332:	6614           	bnes 45348 <_Event_Timeout+0x4c>            <== NOT EXECUTED
          if ( _Event_Sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED )
   45334:	2239 0005 c8b8 	movel 5c8b8 <_Event_Sync_state>,%d1         <== NOT EXECUTED
   4533a:	7601           	moveq #1,%d3                                <== NOT EXECUTED
   4533c:	b681           	cmpl %d1,%d3                                <== NOT EXECUTED
   4533e:	6608           	bnes 45348 <_Event_Timeout+0x4c>            <== NOT EXECUTED
            _Event_Sync_state = THREAD_BLOCKING_OPERATION_TIMEOUT;    
   45340:	7202           	moveq #2,%d1                                <== NOT EXECUTED
   45342:	23c1 0005 c8b8 	movel %d1,5c8b8 <_Event_Sync_state>         <== NOT EXECUTED
        }                                                             
                                                                      
        the_thread->Wait.return_code = RTEMS_TIMEOUT;                 
   45348:	7606           	moveq #6,%d3                                <== NOT EXECUTED
   4534a:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4534c:	2143 0034      	movel %d3,%a0@(52)                          <== NOT EXECUTED
      _ISR_Enable( level );                                           
   45350:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
   45352:	2f3c 1003 fff8 	movel #268697592,%sp@-                      <== NOT EXECUTED
   45358:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4535a:	4eb9 0004 73c0 	jsr 473c0 <_Thread_Clear_state>             <== NOT EXECUTED
      _Thread_Unblock( the_thread );                                  
      _Thread_Unnest_dispatch();                                      
      break;                                                          
   45360:	508f           	addql #8,%sp                                <== NOT EXECUTED
 */                                                                   
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unnest_dispatch( void )             
{                                                                     
  RTEMS_COMPILER_MEMORY_BARRIER();                                    
  _Thread_Dispatch_disable_level -= 1;                                
   45362:	2039 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   45368:	5380           	subql #1,%d0                                <== NOT EXECUTED
   4536a:	23c0 0005 c6c8 	movel %d0,5c6c8 <_Thread_Dispatch_disable_level><== NOT EXECUTED
    case OBJECTS_REMOTE:  /* impossible */                            
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
}                                                                     
   45370:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   45374:	262e fff8      	movel %fp@(-8),%d3                          <== NOT EXECUTED
   45378:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004a1a0 <_Heap_Allocate_aligned_with_boundary>: Heap_Control *heap, uintptr_t alloc_size, uintptr_t alignment, uintptr_t boundary ) {
   4a1a0:	4e56 ffbc      	linkw %fp,#-68                              
   4a1a4:	202e 000c      	movel %fp@(12),%d0                          
   4a1a8:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 
   4a1ac:	246e 0008      	moveal %fp@(8),%a2                          
  Heap_Statistics *const stats = &heap->stats;                        
  uintptr_t const block_size_floor = alloc_size + HEAP_BLOCK_HEADER_SIZE
   4a1b0:	2e00           	movel %d0,%d7                               
   4a1b2:	5887           	addql #4,%d7                                
  Heap_Control *heap,                                                 
  uintptr_t alloc_size,                                               
  uintptr_t alignment,                                                
  uintptr_t boundary                                                  
)                                                                     
{                                                                     
   4a1b4:	222e 0010      	movel %fp@(16),%d1                          
   4a1b8:	2a2e 0014      	movel %fp@(20),%d5                          
  Heap_Statistics *const stats = &heap->stats;                        
  uintptr_t const block_size_floor = alloc_size + HEAP_BLOCK_HEADER_SIZE
    - HEAP_ALLOC_BONUS;                                               
  uintptr_t const page_size = heap->page_size;                        
   4a1bc:	2c2a 0010      	movel %a2@(16),%d6                          
  Heap_Block *block = NULL;                                           
  uintptr_t alloc_begin = 0;                                          
  uint32_t search_count = 0;                                          
  bool search_again = false;                                          
                                                                      
  if ( block_size_floor < alloc_size ) {                              
   4a1c0:	b087           	cmpl %d7,%d0                                
   4a1c2:	6200 014e      	bhiw 4a312 <_Heap_Allocate_aligned_with_boundary+0x172>
    /* Integer overflow occured */                                    
    return NULL;                                                      
  }                                                                   
                                                                      
  if ( boundary != 0 ) {                                              
   4a1c6:	4a85           	tstl %d5                                    
   4a1c8:	670c           	beqs 4a1d6 <_Heap_Allocate_aligned_with_boundary+0x36><== ALWAYS TAKEN
    if ( boundary < alloc_size ) {                                    
   4a1ca:	b085           	cmpl %d5,%d0                                <== NOT EXECUTED
   4a1cc:	6200 0144      	bhiw 4a312 <_Heap_Allocate_aligned_with_boundary+0x172><== NOT EXECUTED
      return NULL;                                                    
    }                                                                 
                                                                      
    if ( alignment == 0 ) {                                           
   4a1d0:	4a81           	tstl %d1                                    <== NOT EXECUTED
   4a1d2:	6602           	bnes 4a1d6 <_Heap_Allocate_aligned_with_boundary+0x36><== NOT EXECUTED
      alignment = page_size;                                          
   4a1d4:	2206           	movel %d6,%d1                               <== NOT EXECUTED
  uintptr_t const block_begin = (uintptr_t) block;                    
  uintptr_t const block_size = _Heap_Block_size( block );             
  uintptr_t const block_end = block_begin + block_size;               
                                                                      
  uintptr_t const alloc_begin_floor = _Heap_Alloc_area_of_block( block );
  uintptr_t const alloc_begin_ceiling = block_end - min_block_size    
   4a1d6:	2406           	movel %d6,%d2                               
    + HEAP_BLOCK_HEADER_SIZE + page_size - 1;                         
                                                                      
  uintptr_t alloc_end = block_end + HEAP_ALLOC_BONUS;                 
   4a1d8:	7804           	moveq #4,%d4                                
  uintptr_t const block_begin = (uintptr_t) block;                    
  uintptr_t const block_size = _Heap_Block_size( block );             
  uintptr_t const block_end = block_begin + block_size;               
                                                                      
  uintptr_t const alloc_begin_floor = _Heap_Alloc_area_of_block( block );
  uintptr_t const alloc_begin_ceiling = block_end - min_block_size    
   4a1da:	5e82           	addql #7,%d2                                
    + HEAP_BLOCK_HEADER_SIZE + page_size - 1;                         
                                                                      
  uintptr_t alloc_end = block_end + HEAP_ALLOC_BONUS;                 
   4a1dc:	9880           	subl %d0,%d4                                
                                                                      
  do {                                                                
    Heap_Block *const free_list_tail = _Heap_Free_list_tail( heap );  
                                                                      
    block = _Heap_Free_list_first( heap );                            
    while ( block != free_list_tail ) {                               
   4a1de:	4283           	clrl %d3                                    
  if ( stats->max_search < search_count ) {                           
    stats->max_search = search_count;                                 
  }                                                                   
                                                                      
  return (void *) alloc_begin;                                        
}                                                                     
   4a1e0:	206a 0008      	moveal %a2@(8),%a0                          
  uintptr_t const block_begin = (uintptr_t) block;                    
  uintptr_t const block_size = _Heap_Block_size( block );             
  uintptr_t const block_end = block_begin + block_size;               
                                                                      
  uintptr_t const alloc_begin_floor = _Heap_Alloc_area_of_block( block );
  uintptr_t const alloc_begin_ceiling = block_end - min_block_size    
   4a1e4:	2d42 fff8      	movel %d2,%fp@(-8)                          
    + HEAP_BLOCK_HEADER_SIZE + page_size - 1;                         
                                                                      
  uintptr_t alloc_end = block_end + HEAP_ALLOC_BONUS;                 
   4a1e8:	2d44 fff4      	movel %d4,%fp@(-12)                         
   4a1ec:	2d47 ffe4      	movel %d7,%fp@(-28)                         
   4a1f0:	2d46 ffec      	movel %d6,%fp@(-20)                         
                                                                      
  do {                                                                
    Heap_Block *const free_list_tail = _Heap_Free_list_tail( heap );  
                                                                      
    block = _Heap_Free_list_first( heap );                            
    while ( block != free_list_tail ) {                               
   4a1f4:	6000 00ea      	braw 4a2e0 <_Heap_Allocate_aligned_with_boundary+0x140>
      /*                                                              
       * The HEAP_PREV_BLOCK_USED flag is always set in the block size_and_flag
       * field.  Thus the value is about one unit larger than the real block
       * size.  The greater than operator takes this into account.    
       */                                                             
      if ( block->size_and_flag > block_size_floor ) {                
   4a1f8:	2428 0004      	movel %a0@(4),%d2                           
   4a1fc:	b4ae ffe4      	cmpl %fp@(-28),%d2                          
   4a200:	6300 00d2      	blsw 4a2d4 <_Heap_Allocate_aligned_with_boundary+0x134>
   4a204:	43e8 0008      	lea %a0@(8),%a1                             
        if ( alignment == 0 ) {                                       
   4a208:	4a81           	tstl %d1                                    
   4a20a:	6606           	bnes 4a212 <_Heap_Allocate_aligned_with_boundary+0x72>
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Alloc_area_of_block(             
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block + HEAP_BLOCK_HEADER_SIZE;                  
   4a20c:	2409           	movel %a1,%d2                               
   4a20e:	6000 00c6      	braw 4a2d6 <_Heap_Allocate_aligned_with_boundary+0x136>
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   4a212:	7cfe           	moveq #-2,%d6                               
  uintptr_t alignment,                                                
  uintptr_t boundary                                                  
)                                                                     
{                                                                     
  uintptr_t const page_size = heap->page_size;                        
  uintptr_t const min_block_size = heap->min_block_size;              
   4a214:	266a 0014      	moveal %a2@(20),%a3                         
   4a218:	c486           	andl %d6,%d2                                
  uintptr_t const block_size = _Heap_Block_size( block );             
  uintptr_t const block_end = block_begin + block_size;               
                                                                      
  uintptr_t const alloc_begin_floor = _Heap_Alloc_area_of_block( block );
  uintptr_t const alloc_begin_ceiling = block_end - min_block_size    
    + HEAP_BLOCK_HEADER_SIZE + page_size - 1;                         
   4a21a:	282e fff8      	movel %fp@(-8),%d4                          
   4a21e:	988b           	subl %a3,%d4                                
  uintptr_t const page_size = heap->page_size;                        
  uintptr_t const min_block_size = heap->min_block_size;              
                                                                      
  uintptr_t const block_begin = (uintptr_t) block;                    
  uintptr_t const block_size = _Heap_Block_size( block );             
  uintptr_t const block_end = block_begin + block_size;               
   4a220:	d488           	addl %a0,%d2                                
                                                                      
  uintptr_t const alloc_begin_floor = _Heap_Alloc_area_of_block( block );
  uintptr_t const alloc_begin_ceiling = block_end - min_block_size    
   4a222:	2c04           	movel %d4,%d6                               
   4a224:	dc82           	addl %d2,%d6                                
    + HEAP_BLOCK_HEADER_SIZE + page_size - 1;                         
                                                                      
  uintptr_t alloc_end = block_end + HEAP_ALLOC_BONUS;                 
  uintptr_t alloc_begin = alloc_end - alloc_size;                     
   4a226:	d4ae fff4      	addl %fp@(-12),%d2                          
   4a22a:	2d42 fffc      	movel %d2,%fp@(-4)                          
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Align_down(                      
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  return value - (value % alignment);                                 
   4a22e:	4c41 2007      	remul %d1,%d7,%d2                           
   4a232:	242e fffc      	movel %fp@(-4),%d2                          
   4a236:	9487           	subl %d7,%d2                                
                                                                      
  alloc_begin = _Heap_Align_down( alloc_begin, alignment );           
                                                                      
  /* Ensure that the we have a valid new block at the end */          
  if ( alloc_begin > alloc_begin_ceiling ) {                          
   4a238:	bc82           	cmpl %d2,%d6                                
   4a23a:	640a           	bccs 4a246 <_Heap_Allocate_aligned_with_boundary+0xa6><== ALWAYS TAKEN
   4a23c:	2806           	movel %d6,%d4                               <== NOT EXECUTED
   4a23e:	4c41 4002      	remul %d1,%d2,%d4                           <== NOT EXECUTED
   4a242:	9c82           	subl %d2,%d6                                <== NOT EXECUTED
   4a244:	2406           	movel %d6,%d2                               <== NOT EXECUTED
  }                                                                   
                                                                      
  alloc_end = alloc_begin + alloc_size;                               
                                                                      
  /* Ensure boundary constaint */                                     
  if ( boundary != 0 ) {                                              
   4a246:	4a85           	tstl %d5                                    
   4a248:	675c           	beqs 4a2a6 <_Heap_Allocate_aligned_with_boundary+0x106><== ALWAYS TAKEN
  /* Ensure that the we have a valid new block at the end */          
  if ( alloc_begin > alloc_begin_ceiling ) {                          
    alloc_begin = _Heap_Align_down( alloc_begin_ceiling, alignment ); 
  }                                                                   
                                                                      
  alloc_end = alloc_begin + alloc_size;                               
   4a24a:	2c02           	movel %d2,%d6                               <== NOT EXECUTED
   4a24c:	dc80           	addl %d0,%d6                                <== NOT EXECUTED
                                                                      
  /* Ensure boundary constaint */                                     
  if ( boundary != 0 ) {                                              
    uintptr_t const boundary_floor = alloc_begin_floor + alloc_size;  
   4a24e:	49f1 0800      	lea %a1@(00000000,%d0:l),%a4                <== NOT EXECUTED
  /* Ensure that the we have a valid new block at the end */          
  if ( alloc_begin > alloc_begin_ceiling ) {                          
    alloc_begin = _Heap_Align_down( alloc_begin_ceiling, alignment ); 
  }                                                                   
                                                                      
  alloc_end = alloc_begin + alloc_size;                               
   4a252:	2d46 fff0      	movel %d6,%fp@(-16)                         <== NOT EXECUTED
   4a256:	2a6e fff0      	moveal %fp@(-16),%a5                        <== NOT EXECUTED
   4a25a:	4c45 6004      	remul %d5,%d4,%d6                           <== NOT EXECUTED
                                                                      
  /* Ensure boundary constaint */                                     
  if ( boundary != 0 ) {                                              
    uintptr_t const boundary_floor = alloc_begin_floor + alloc_size;  
   4a25e:	2d4c fffc      	movel %a4,%fp@(-4)                          <== NOT EXECUTED
   4a262:	2e2e ffe4      	movel %fp@(-28),%d7                         <== NOT EXECUTED
   4a266:	9bc4           	subal %d4,%a5                               <== NOT EXECUTED
   4a268:	284d           	moveal %a5,%a4                              <== NOT EXECUTED
   4a26a:	2d43 ffe8      	movel %d3,%fp@(-24)                         <== NOT EXECUTED
   4a26e:	282e fff0      	movel %fp@(-16),%d4                         <== NOT EXECUTED
   4a272:	6022           	bras 4a296 <_Heap_Allocate_aligned_with_boundary+0xf6><== NOT EXECUTED
    uintptr_t boundary_line = _Heap_Align_down( alloc_end, boundary );
                                                                      
    while ( alloc_begin < boundary_line && boundary_line < alloc_end ) {
      if ( boundary_line < boundary_floor ) {                         
   4a274:	b9ee fffc      	cmpal %fp@(-4),%a4                          <== NOT EXECUTED
   4a278:	6552           	bcss 4a2cc <_Heap_Allocate_aligned_with_boundary+0x12c><== NOT EXECUTED
        return 0;                                                     
      }                                                               
      alloc_begin = boundary_line - alloc_size;                       
   4a27a:	240c           	movel %a4,%d2                               <== NOT EXECUTED
   4a27c:	9480           	subl %d0,%d2                                <== NOT EXECUTED
   4a27e:	2802           	movel %d2,%d4                               <== NOT EXECUTED
   4a280:	4c41 4003      	remul %d1,%d3,%d4                           <== NOT EXECUTED
   4a284:	9483           	subl %d3,%d2                                <== NOT EXECUTED
      alloc_begin = _Heap_Align_down( alloc_begin, alignment );       
      alloc_end = alloc_begin + alloc_size;                           
   4a286:	2802           	movel %d2,%d4                               <== NOT EXECUTED
   4a288:	d880           	addl %d0,%d4                                <== NOT EXECUTED
   4a28a:	2c04           	movel %d4,%d6                               <== NOT EXECUTED
   4a28c:	2a44           	moveal %d4,%a5                              <== NOT EXECUTED
   4a28e:	4c45 6003      	remul %d5,%d3,%d6                           <== NOT EXECUTED
   4a292:	9bc3           	subal %d3,%a5                               <== NOT EXECUTED
   4a294:	284d           	moveal %a5,%a4                              <== NOT EXECUTED
  /* Ensure boundary constaint */                                     
  if ( boundary != 0 ) {                                              
    uintptr_t const boundary_floor = alloc_begin_floor + alloc_size;  
    uintptr_t boundary_line = _Heap_Align_down( alloc_end, boundary );
                                                                      
    while ( alloc_begin < boundary_line && boundary_line < alloc_end ) {
   4a296:	b9c2           	cmpal %d2,%a4                               <== NOT EXECUTED
   4a298:	6304           	blss 4a29e <_Heap_Allocate_aligned_with_boundary+0xfe><== NOT EXECUTED
   4a29a:	b88c           	cmpl %a4,%d4                                <== NOT EXECUTED
   4a29c:	62d6           	bhis 4a274 <_Heap_Allocate_aligned_with_boundary+0xd4><== NOT EXECUTED
   4a29e:	262e ffe8      	movel %fp@(-24),%d3                         <== NOT EXECUTED
   4a2a2:	2d47 ffe4      	movel %d7,%fp@(-28)                         <== NOT EXECUTED
      boundary_line = _Heap_Align_down( alloc_end, boundary );        
    }                                                                 
  }                                                                   
                                                                      
  /* Ensure that the we have a valid new block at the beginning */    
  if ( alloc_begin >= alloc_begin_floor ) {                           
   4a2a6:	b3c2           	cmpal %d2,%a1                               
   4a2a8:	622a           	bhis 4a2d4 <_Heap_Allocate_aligned_with_boundary+0x134><== NEVER TAKEN
   4a2aa:	2c2e ffec      	movel %fp@(-20),%d6                         
   4a2ae:	2802           	movel %d2,%d4                               
   4a2b0:	327c fff8      	moveaw #-8,%a1                              
   4a2b4:	93c8           	subal %a0,%a1                               
  uintptr_t alloc_begin,                                              
  uintptr_t page_size                                                 
)                                                                     
{                                                                     
  return (Heap_Block *) (_Heap_Align_down( alloc_begin, page_size )   
    - HEAP_BLOCK_HEADER_SIZE);                                        
   4a2b6:	d3c2           	addal %d2,%a1                               
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Align_down(                      
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  return value - (value % alignment);                                 
   4a2b8:	4c46 4007      	remul %d6,%d7,%d4                           
    uintptr_t const alloc_block_begin =                               
      (uintptr_t) _Heap_Block_of_alloc_area( alloc_begin, page_size );
    uintptr_t const free_size = alloc_block_begin - block_begin;      
   4a2bc:	93c7           	subal %d7,%a1                               
                                                                      
    if ( free_size >= min_block_size || free_size == 0 ) {            
   4a2be:	b7c9           	cmpal %a1,%a3                               
   4a2c0:	6314           	blss 4a2d6 <_Heap_Allocate_aligned_with_boundary+0x136><== ALWAYS TAKEN
      return alloc_begin;                                             
    }                                                                 
  }                                                                   
                                                                      
  return 0;                                                           
   4a2c2:	4a89           	tstl %a1                                    <== NOT EXECUTED
   4a2c4:	57c4           	seq %d4                                     <== NOT EXECUTED
   4a2c6:	49c4           	extbl %d4                                   <== NOT EXECUTED
   4a2c8:	c484           	andl %d4,%d2                                <== NOT EXECUTED
   4a2ca:	600a           	bras 4a2d6 <_Heap_Allocate_aligned_with_boundary+0x136><== NOT EXECUTED
   4a2cc:	262e ffe8      	movel %fp@(-24),%d3                         <== NOT EXECUTED
   4a2d0:	2d47 ffe4      	movel %d7,%fp@(-28)                         <== NOT EXECUTED
   4a2d4:	4282           	clrl %d2                                    
          );                                                          
        }                                                             
      }                                                               
                                                                      
      /* Statistics */                                                
      ++search_count;                                                 
   4a2d6:	5283           	addql #1,%d3                                
                                                                      
      if ( alloc_begin != 0 ) {                                       
   4a2d8:	4a82           	tstl %d2                                    
   4a2da:	660e           	bnes 4a2ea <_Heap_Allocate_aligned_with_boundary+0x14a>
        break;                                                        
      }                                                               
                                                                      
      block = block->next;                                            
   4a2dc:	2068 0008      	moveal %a0@(8),%a0                          
                                                                      
  do {                                                                
    Heap_Block *const free_list_tail = _Heap_Free_list_tail( heap );  
                                                                      
    block = _Heap_Free_list_first( heap );                            
    while ( block != free_list_tail ) {                               
   4a2e0:	b5c8           	cmpal %a0,%a2                               
   4a2e2:	6600 ff14      	bnew 4a1f8 <_Heap_Allocate_aligned_with_boundary+0x58>
   4a2e6:	4282           	clrl %d2                                    
   4a2e8:	601a           	bras 4a304 <_Heap_Allocate_aligned_with_boundary+0x164>
    search_again = _Heap_Protection_free_delayed_blocks( heap, alloc_begin );
  } while ( search_again );                                           
                                                                      
  if ( alloc_begin != 0 ) {                                           
    /* Statistics */                                                  
    ++stats->allocs;                                                  
   4a2ea:	52aa 0048      	addql #1,%a2@(72)                           
    stats->searches += search_count;                                  
   4a2ee:	d7aa 004c      	addl %d3,%a2@(76)                           
                                                                      
    block = _Heap_Block_allocate( heap, block, alloc_begin, alloc_size );
   4a2f2:	2f00           	movel %d0,%sp@-                             
   4a2f4:	2f02           	movel %d2,%sp@-                             
   4a2f6:	2f08           	movel %a0,%sp@-                             
   4a2f8:	2f0a           	movel %a2,%sp@-                             
   4a2fa:	4eb9 0004 666e 	jsr 4666e <_Heap_Block_allocate>            
   4a300:	4fef 0010      	lea %sp@(16),%sp                            
      boundary                                                        
    );                                                                
  }                                                                   
                                                                      
  /* Statistics */                                                    
  if ( stats->max_search < search_count ) {                           
   4a304:	b6aa 0044      	cmpl %a2@(68),%d3                           
   4a308:	6304           	blss 4a30e <_Heap_Allocate_aligned_with_boundary+0x16e>
    stats->max_search = search_count;                                 
   4a30a:	2543 0044      	movel %d3,%a2@(68)                          
  }                                                                   
                                                                      
  return (void *) alloc_begin;                                        
   4a30e:	2002           	movel %d2,%d0                               
   4a310:	6002           	bras 4a314 <_Heap_Allocate_aligned_with_boundary+0x174>
    return NULL;                                                      
  }                                                                   
                                                                      
  if ( boundary != 0 ) {                                              
    if ( boundary < alloc_size ) {                                    
      return NULL;                                                    
   4a312:	4280           	clrl %d0                                    <== NOT EXECUTED
  if ( stats->max_search < search_count ) {                           
    stats->max_search = search_count;                                 
  }                                                                   
                                                                      
  return (void *) alloc_begin;                                        
}                                                                     
   4a314:	4cee 3cfc ffbc 	moveml %fp@(-68),%d2-%d7/%a2-%a5            
   4a31a:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

0004666e <_Heap_Block_allocate>: - HEAP_BLOCK_HEADER_SIZE); } RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block ) { return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;
   4666e:	70fe           	moveq #-2,%d0                               
  Heap_Control *heap,                                                 
  Heap_Block *block,                                                  
  uintptr_t alloc_begin,                                              
  uintptr_t alloc_size                                                
)                                                                     
{                                                                     
   46670:	4e56 ffe0      	linkw %fp,#-32                              
   46674:	222e 0010      	movel %fp@(16),%d1                          
   46678:	48d7 3c3c      	moveml %d2-%d5/%a2-%a5,%sp@                 
   4667c:	246e 000c      	moveal %fp@(12),%a2                         
  block->size_and_flag = size | flag;                                 
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE bool _Heap_Is_prev_used( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & HEAP_PREV_BLOCK_USED;                 
   46680:	7801           	moveq #1,%d4                                
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Alloc_area_of_block(             
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block + HEAP_BLOCK_HEADER_SIZE;                  
   46682:	2841           	moveal %d1,%a4                              
   46684:	518c           	subql #8,%a4                                
  Heap_Statistics *const stats = &heap->stats;                        
                                                                      
  uintptr_t const alloc_area_begin = _Heap_Alloc_area_of_block( block );
  uintptr_t const alloc_area_offset = alloc_begin - alloc_area_begin; 
   46686:	260c           	movel %a4,%d3                               
   46688:	968a           	subl %a2,%d3                                
  }                                                                   
                                                                      
  _Heap_Protection_block_initialize( heap, block );                   
                                                                      
  return block;                                                       
}                                                                     
   4668a:	242a 0004      	movel %a2@(4),%d2                           
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   4668e:	c082           	andl %d2,%d0                                
  Heap_Control *heap,                                                 
  Heap_Block *block,                                                  
  uintptr_t alloc_begin,                                              
  uintptr_t alloc_size                                                
)                                                                     
{                                                                     
   46690:	266e 0008      	moveal %fp@(8),%a3                          
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(                      
  const Heap_Block *block,                                            
  uintptr_t offset                                                    
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block + offset);                 
   46694:	4bf2 0800      	lea %a2@(00000000,%d0:l),%a5                
  block->size_and_flag = size | flag;                                 
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE bool _Heap_Is_prev_used( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & HEAP_PREV_BLOCK_USED;                 
   46698:	c8ad 0004      	andl %a5@(4),%d4                            
   4669c:	2a2e 0014      	movel %fp@(20),%d5                          
                                                                      
  Heap_Block *free_list_anchor = NULL;                                
                                                                      
  _HAssert( alloc_area_begin <= alloc_begin );                        
                                                                      
  if ( _Heap_Is_free( block ) ) {                                     
   466a0:	4a84           	tstl %d4                                    
   466a2:	6620           	bnes 466c4 <_Heap_Block_allocate+0x56>      <== NEVER TAKEN
  return _Heap_Free_list_tail(heap)->prev;                            
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE void _Heap_Free_list_remove( Heap_Block *block ) 
{                                                                     
  Heap_Block *next = block->next;                                     
   466a4:	282a 0008      	movel %a2@(8),%d4                           
  Heap_Block *prev = block->prev;                                     
                                                                      
  prev->next = next;                                                  
  next->prev = prev;                                                  
   466a8:	2244           	moveal %d4,%a1                              
    free_list_anchor = block->prev;                                   
   466aa:	206a 000c      	moveal %a2@(12),%a0                         
RTEMS_INLINE_ROUTINE void _Heap_Free_list_remove( Heap_Block *block ) 
{                                                                     
  Heap_Block *next = block->next;                                     
  Heap_Block *prev = block->prev;                                     
                                                                      
  prev->next = next;                                                  
   466ae:	2144 0008      	movel %d4,%a0@(8)                           
  next->prev = prev;                                                  
   466b2:	2348 000c      	movel %a0,%a1@(12)                          
                                                                      
    _Heap_Free_list_remove( block );                                  
                                                                      
    /* Statistics */                                                  
    --stats->free_blocks;                                             
   466b6:	53ab 0038      	subql #1,%a3@(56)                           
    ++stats->used_blocks;                                             
   466ba:	52ab 0040      	addql #1,%a3@(64)                           
    stats->free_size -= _Heap_Block_size( block );                    
   466be:	91ab 0030      	subl %d0,%a3@(48)                           
   466c2:	6002           	bras 466c6 <_Heap_Block_allocate+0x58>      
  } else {                                                            
    free_list_anchor = _Heap_Free_list_head( heap );                  
   466c4:	204b           	moveal %a3,%a0                              <== NOT EXECUTED
  }                                                                   
                                                                      
  if ( alloc_area_offset < heap->page_size ) {                        
   466c6:	202b 0010      	movel %a3@(16),%d0                          
   466ca:	b083           	cmpl %d3,%d0                                
   466cc:	6316           	blss 466e4 <_Heap_Block_allocate+0x76>      
  Heap_Block *block,                                                  
  Heap_Block *free_list_anchor,                                       
  uintptr_t alloc_size                                                
)                                                                     
{                                                                     
  _Heap_Block_split( heap, block, free_list_anchor, alloc_size );     
   466ce:	2243           	moveal %d3,%a1                              
   466d0:	4871 5800      	pea %a1@(00000000,%d5:l)                    
   466d4:	2f08           	movel %a0,%sp@-                             
   466d6:	2f0a           	movel %a2,%sp@-                             
   466d8:	2f0b           	movel %a3,%sp@-                             
   466da:	4eba fd5c      	jsr %pc@(46438 <_Heap_Block_split>)         
   466de:	4fef 0010      	lea %sp@(16),%sp                            
   466e2:	605e           	bras 46742 <_Heap_Block_allocate+0xd4>      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Align_down(                      
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  return value - (value % alignment);                                 
   466e4:	4c40 1003      	remul %d0,%d3,%d1                           
  uintptr_t block_end = block_begin + block_size;                     
                                                                      
  Heap_Block *const new_block =                                       
    _Heap_Block_of_alloc_area( alloc_begin, heap->page_size );        
  uintptr_t const new_block_begin = (uintptr_t) new_block;            
  uintptr_t const new_block_size = block_end - new_block_begin;       
   466e8:	220d           	movel %a5,%d1                               
  uintptr_t alloc_begin,                                              
  uintptr_t page_size                                                 
)                                                                     
{                                                                     
  return (Heap_Block *) (_Heap_Align_down( alloc_begin, page_size )   
    - HEAP_BLOCK_HEADER_SIZE);                                        
   466ea:	99c3           	subal %d3,%a4                               
                                                                      
  block_end = new_block_begin;                                        
  block_size = block_end - block_begin;                               
   466ec:	200c           	movel %a4,%d0                               
   466ee:	908a           	subl %a2,%d0                                
                                                                      
  _HAssert( block_size >= heap->min_block_size );                     
  _HAssert( new_block_size >= heap->min_block_size );                 
                                                                      
  /* Statistics */                                                    
  stats->free_size += block_size;                                     
   466f0:	d1ab 0030      	addl %d0,%a3@(48)                           
  uintptr_t block_end = block_begin + block_size;                     
                                                                      
  Heap_Block *const new_block =                                       
    _Heap_Block_of_alloc_area( alloc_begin, heap->page_size );        
  uintptr_t const new_block_begin = (uintptr_t) new_block;            
  uintptr_t const new_block_size = block_end - new_block_begin;       
   466f4:	928c           	subl %a4,%d1                                
  _HAssert( new_block_size >= heap->min_block_size );                 
                                                                      
  /* Statistics */                                                    
  stats->free_size += block_size;                                     
                                                                      
  if ( _Heap_Is_prev_used( block ) ) {                                
   466f6:	0802 0000      	btst #0,%d2                                 
   466fa:	671c           	beqs 46718 <_Heap_Block_allocate+0xaa>      <== NEVER TAKEN
RTEMS_INLINE_ROUTINE void _Heap_Free_list_insert_after(               
  Heap_Block *block_before,                                           
  Heap_Block *new_block                                               
)                                                                     
{                                                                     
  Heap_Block *next = block_before->next;                              
   466fc:	2a68 0008      	moveal %a0@(8),%a5                          
                                                                      
  new_block->next = next;                                             
  new_block->prev = block_before;                                     
   46700:	2548 000c      	movel %a0,%a2@(12)                          
  Heap_Block *new_block                                               
)                                                                     
{                                                                     
  Heap_Block *next = block_before->next;                              
                                                                      
  new_block->next = next;                                             
   46704:	254d 0008      	movel %a5,%a2@(8)                           
  new_block->prev = block_before;                                     
  block_before->next = new_block;                                     
  next->prev = new_block;                                             
   46708:	2b4a 000c      	movel %a2,%a5@(12)                          
{                                                                     
  Heap_Block *next = block_before->next;                              
                                                                      
  new_block->next = next;                                             
  new_block->prev = block_before;                                     
  block_before->next = new_block;                                     
   4670c:	214a 0008      	movel %a2,%a0@(8)                           
    _Heap_Free_list_insert_after( free_list_anchor, block );          
                                                                      
    free_list_anchor = block;                                         
                                                                      
    /* Statistics */                                                  
    ++stats->free_blocks;                                             
   46710:	52ab 0038      	addql #1,%a3@(56)                           
   46714:	204a           	moveal %a2,%a0                              
   46716:	600a           	bras 46722 <_Heap_Block_allocate+0xb4>      
                                                                      
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Prev_block(                    
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block - block->prev_size);       
   46718:	95d2           	subal %a2@,%a2                              <== NOT EXECUTED
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   4671a:	74fe           	moveq #-2,%d2                               <== NOT EXECUTED
   4671c:	c4aa 0004      	andl %a2@(4),%d2                            <== NOT EXECUTED
  } else {                                                            
    Heap_Block *const prev_block = _Heap_Prev_block( block );         
    uintptr_t const prev_block_size = _Heap_Block_size( prev_block ); 
                                                                      
    block = prev_block;                                               
    block_size += prev_block_size;                                    
   46720:	d082           	addl %d2,%d0                                <== NOT EXECUTED
  }                                                                   
                                                                      
  block->size_and_flag = block_size | HEAP_PREV_BLOCK_USED;           
   46722:	7401           	moveq #1,%d2                                
   46724:	8480           	orl %d0,%d2                                 
                                                                      
  new_block->prev_size = block_size;                                  
   46726:	2880           	movel %d0,%a4@                              
                                                                      
    block = prev_block;                                               
    block_size += prev_block_size;                                    
  }                                                                   
                                                                      
  block->size_and_flag = block_size | HEAP_PREV_BLOCK_USED;           
   46728:	2542 0004      	movel %d2,%a2@(4)                           
                                                                      
  new_block->prev_size = block_size;                                  
  new_block->size_and_flag = new_block_size;                          
                                                                      
  _Heap_Block_split( heap, new_block, free_list_anchor, alloc_size ); 
   4672c:	244c           	moveal %a4,%a2                              
  }                                                                   
                                                                      
  block->size_and_flag = block_size | HEAP_PREV_BLOCK_USED;           
                                                                      
  new_block->prev_size = block_size;                                  
  new_block->size_and_flag = new_block_size;                          
   4672e:	2941 0004      	movel %d1,%a4@(4)                           
                                                                      
  _Heap_Block_split( heap, new_block, free_list_anchor, alloc_size ); 
   46732:	2f05           	movel %d5,%sp@-                             
   46734:	2f08           	movel %a0,%sp@-                             
   46736:	2f0c           	movel %a4,%sp@-                             
   46738:	2f0b           	movel %a3,%sp@-                             
   4673a:	4eba fcfc      	jsr %pc@(46438 <_Heap_Block_split>)         
   4673e:	4fef 0010      	lea %sp@(16),%sp                            
      alloc_size                                                      
    );                                                                
  }                                                                   
                                                                      
  /* Statistics */                                                    
  if ( stats->min_free_size > stats->free_size ) {                    
   46742:	202b 0030      	movel %a3@(48),%d0                          
   46746:	b0ab 0034      	cmpl %a3@(52),%d0                           
   4674a:	6404           	bccs 46750 <_Heap_Block_allocate+0xe2>      <== NEVER TAKEN
    stats->min_free_size = stats->free_size;                          
   4674c:	2740 0034      	movel %d0,%a3@(52)                          
  }                                                                   
                                                                      
  _Heap_Protection_block_initialize( heap, block );                   
                                                                      
  return block;                                                       
}                                                                     
   46750:	200a           	movel %a2,%d0                               
   46752:	4cee 3c3c ffe0 	moveml %fp@(-32),%d2-%d5/%a2-%a5            
   46758:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046438 <_Heap_Block_split>: - HEAP_BLOCK_HEADER_SIZE); } RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block ) { return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;
   46438:	70fe           	moveq #-2,%d0                               
  Heap_Control *heap,                                                 
  Heap_Block *block,                                                  
  Heap_Block *free_list_anchor,                                       
  uintptr_t alloc_size                                                
)                                                                     
{                                                                     
   4643a:	4e56 ffe0      	linkw %fp,#-32                              
   4643e:	48d7 1c7c      	moveml %d2-%d6/%a2-%a4,%sp@                 
   46442:	246e 0008      	moveal %fp@(8),%a2                          
   46446:	266e 000c      	moveal %fp@(12),%a3                         
  Heap_Statistics *const stats = &heap->stats;                        
                                                                      
  uintptr_t const page_size = heap->page_size;                        
  uintptr_t const min_block_size = heap->min_block_size;              
   4644a:	282a 0014      	movel %a2@(20),%d4                          
  uintptr_t const min_alloc_size = min_block_size - HEAP_BLOCK_HEADER_SIZE;
   4644e:	2044           	moveal %d4,%a0                              
   46450:	5188           	subql #8,%a0                                
  }                                                                   
                                                                      
  _Heap_Protection_block_initialize( heap, block );                   
                                                                      
  return block;                                                       
}                                                                     
   46452:	262b 0004      	movel %a3@(4),%d3                           
  Heap_Control *heap,                                                 
  Heap_Block *block,                                                  
  Heap_Block *free_list_anchor,                                       
  uintptr_t alloc_size                                                
)                                                                     
{                                                                     
   46456:	286e 0010      	moveal %fp@(16),%a4                         
  Heap_Statistics *const stats = &heap->stats;                        
                                                                      
  uintptr_t const page_size = heap->page_size;                        
   4645a:	222a 0010      	movel %a2@(16),%d1                          
  return heap->stats.size;                                            
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Max( uintptr_t a, uintptr_t b )  
{                                                                     
  return a > b ? a : b;                                               
   4645e:	242e 0014      	movel %fp@(20),%d2                          
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   46462:	c083           	andl %d3,%d0                                
  return heap->stats.size;                                            
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Max( uintptr_t a, uintptr_t b )  
{                                                                     
  return a > b ? a : b;                                               
   46464:	b1c2           	cmpal %d2,%a0                               
   46466:	6302           	blss 4646a <_Heap_Block_split+0x32>         
   46468:	2408           	movel %a0,%d2                               
  uintptr_t const min_block_size = heap->min_block_size;              
  uintptr_t const min_alloc_size = min_block_size - HEAP_BLOCK_HEADER_SIZE;
                                                                      
  uintptr_t const block_size = _Heap_Block_size( block );             
                                                                      
  uintptr_t const used_size =                                         
   4646a:	5082           	addql #8,%d2                                
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Align_up(                        
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  uintptr_t remainder = value % alignment;                            
   4646c:	2c02           	movel %d2,%d6                               
   4646e:	4c41 6005      	remul %d1,%d5,%d6                           
                                                                      
  if ( remainder != 0 ) {                                             
   46472:	4a85           	tstl %d5                                    
   46474:	6706           	beqs 4647c <_Heap_Block_split+0x44>         
    return value - remainder + alignment;                             
   46476:	d282           	addl %d2,%d1                                
   46478:	9285           	subl %d5,%d1                                
   4647a:	6002           	bras 4647e <_Heap_Block_split+0x46>         
  } else {                                                            
    return value;                                                     
   4647c:	2202           	movel %d2,%d1                               
    _Heap_Max( alloc_size, min_alloc_size ) + HEAP_BLOCK_HEADER_SIZE; 
  uintptr_t const used_block_size = _Heap_Align_up( used_size, page_size );
                                                                      
  uintptr_t const free_size = block_size + HEAP_ALLOC_BONUS - used_size;
   4647e:	2240           	moveal %d0,%a1                              
   46480:	5889           	addql #4,%a1                                
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(                      
  const Heap_Block *block,                                            
  uintptr_t offset                                                    
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block + offset);                 
   46482:	41f3 0800      	lea %a3@(00000000,%d0:l),%a0                
   46486:	93c2           	subal %d2,%a1                               
  uintptr_t const free_size_limit = min_block_size + HEAP_ALLOC_BONUS;
   46488:	5884           	addql #4,%d4                                
  Heap_Block *next_block = _Heap_Block_at( block, block_size );       
                                                                      
  _HAssert( used_size <= block_size + HEAP_ALLOC_BONUS );             
  _HAssert( used_size + free_size == block_size + HEAP_ALLOC_BONUS ); 
                                                                      
  if ( free_size >= free_size_limit ) {                               
   4648a:	b889           	cmpl %a1,%d4                                
   4648c:	626a           	bhis 464f8 <_Heap_Block_split+0xc0>         
RTEMS_INLINE_ROUTINE void _Heap_Block_set_size(                       
  Heap_Block *block,                                                  
  uintptr_t size                                                      
)                                                                     
{                                                                     
  uintptr_t flag = block->size_and_flag & HEAP_PREV_BLOCK_USED;       
   4648e:	7401           	moveq #1,%d2                                
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(                      
  const Heap_Block *block,                                            
  uintptr_t offset                                                    
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block + offset);                 
   46490:	43f3 1800      	lea %a3@(00000000,%d1:l),%a1                
    Heap_Block *const free_block = _Heap_Block_at( block, used_block_size );
    uintptr_t free_block_size = block_size - used_block_size;         
   46494:	9081           	subl %d1,%d0                                
RTEMS_INLINE_ROUTINE void _Heap_Block_set_size(                       
  Heap_Block *block,                                                  
  uintptr_t size                                                      
)                                                                     
{                                                                     
  uintptr_t flag = block->size_and_flag & HEAP_PREV_BLOCK_USED;       
   46496:	c682           	andl %d2,%d3                                
                                                                      
  block->size_and_flag = size | flag;                                 
   46498:	8283           	orl %d3,%d1                                 
   4649a:	2741 0004      	movel %d1,%a3@(4)                           
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   4649e:	72fe           	moveq #-2,%d1                               
    _HAssert( used_block_size + free_block_size == block_size );      
                                                                      
    _Heap_Block_set_size( block, used_block_size );                   
                                                                      
    /* Statistics */                                                  
    stats->free_size += free_block_size;                              
   464a0:	d1aa 0030      	addl %d0,%a2@(48)                           
   464a4:	c2a8 0004      	andl %a0@(4),%d1                            
  block->size_and_flag = size | flag;                                 
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE bool _Heap_Is_prev_used( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & HEAP_PREV_BLOCK_USED;                 
   464a8:	c4b0 1804      	andl %a0@(00000004,%d1:l),%d2               
                                                                      
    if ( _Heap_Is_used( next_block ) ) {                              
   464ac:	671a           	beqs 464c8 <_Heap_Block_split+0x90>         <== NEVER TAKEN
RTEMS_INLINE_ROUTINE void _Heap_Free_list_insert_after(               
  Heap_Block *block_before,                                           
  Heap_Block *new_block                                               
)                                                                     
{                                                                     
  Heap_Block *next = block_before->next;                              
   464ae:	266c 0008      	moveal %a4@(8),%a3                          
                                                                      
  new_block->next = next;                                             
  new_block->prev = block_before;                                     
   464b2:	234c 000c      	movel %a4,%a1@(12)                          
  Heap_Block *new_block                                               
)                                                                     
{                                                                     
  Heap_Block *next = block_before->next;                              
                                                                      
  new_block->next = next;                                             
   464b6:	234b 0008      	movel %a3,%a1@(8)                           
  new_block->prev = block_before;                                     
  block_before->next = new_block;                                     
  next->prev = new_block;                                             
   464ba:	2749 000c      	movel %a1,%a3@(12)                          
{                                                                     
  Heap_Block *next = block_before->next;                              
                                                                      
  new_block->next = next;                                             
  new_block->prev = block_before;                                     
  block_before->next = new_block;                                     
   464be:	2949 0008      	movel %a1,%a4@(8)                           
      _Heap_Free_list_insert_after( free_list_anchor, free_block );   
                                                                      
      /* Statistics */                                                
      ++stats->free_blocks;                                           
   464c2:	52aa 0038      	addql #1,%a2@(56)                           
   464c6:	601e           	bras 464e6 <_Heap_Block_split+0xae>         
RTEMS_INLINE_ROUTINE void _Heap_Free_list_replace(                    
  Heap_Block *old_block,                                              
  Heap_Block *new_block                                               
)                                                                     
{                                                                     
  Heap_Block *next = old_block->next;                                 
   464c8:	2468 0008      	moveal %a0@(8),%a2                          <== NOT EXECUTED
    } else {                                                          
      uintptr_t const next_block_size = _Heap_Block_size( next_block );
                                                                      
      _Heap_Free_list_replace( next_block, free_block );              
                                                                      
      free_block_size += next_block_size;                             
   464cc:	d081           	addl %d1,%d0                                <== NOT EXECUTED
  Heap_Block *prev = old_block->prev;                                 
   464ce:	2068 000c      	moveal %a0@(12),%a0                         <== NOT EXECUTED
                                                                      
  new_block->next = next;                                             
   464d2:	234a 0008      	movel %a2,%a1@(8)                           <== NOT EXECUTED
  new_block->prev = prev;                                             
   464d6:	2348 000c      	movel %a0,%a1@(12)                          <== NOT EXECUTED
                                                                      
  next->prev = new_block;                                             
  prev->next = new_block;                                             
   464da:	2149 0008      	movel %a1,%a0@(8)                           <== NOT EXECUTED
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(                      
  const Heap_Block *block,                                            
  uintptr_t offset                                                    
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block + offset);                 
   464de:	41f1 0800      	lea %a1@(00000000,%d0:l),%a0                <== NOT EXECUTED
  Heap_Block *prev = old_block->prev;                                 
                                                                      
  new_block->next = next;                                             
  new_block->prev = prev;                                             
                                                                      
  next->prev = new_block;                                             
   464e2:	2549 000c      	movel %a1,%a2@(12)                          <== NOT EXECUTED
                                                                      
      next_block = _Heap_Block_at( free_block, free_block_size );     
    }                                                                 
                                                                      
    free_block->size_and_flag = free_block_size | HEAP_PREV_BLOCK_USED;
   464e6:	7201           	moveq #1,%d1                                
                                                                      
    next_block->prev_size = free_block_size;                          
    next_block->size_and_flag &= ~HEAP_PREV_BLOCK_USED;               
   464e8:	74fe           	moveq #-2,%d2                               
      free_block_size += next_block_size;                             
                                                                      
      next_block = _Heap_Block_at( free_block, free_block_size );     
    }                                                                 
                                                                      
    free_block->size_and_flag = free_block_size | HEAP_PREV_BLOCK_USED;
   464ea:	8280           	orl %d0,%d1                                 
                                                                      
    next_block->prev_size = free_block_size;                          
   464ec:	2080           	movel %d0,%a0@                              
      free_block_size += next_block_size;                             
                                                                      
      next_block = _Heap_Block_at( free_block, free_block_size );     
    }                                                                 
                                                                      
    free_block->size_and_flag = free_block_size | HEAP_PREV_BLOCK_USED;
   464ee:	2341 0004      	movel %d1,%a1@(4)                           
                                                                      
    next_block->prev_size = free_block_size;                          
    next_block->size_and_flag &= ~HEAP_PREV_BLOCK_USED;               
   464f2:	c5a8 0004      	andl %d2,%a0@(4)                            
   464f6:	6006           	bras 464fe <_Heap_Block_split+0xc6>         
                                                                      
    _Heap_Protection_block_initialize( heap, free_block );            
  } else {                                                            
    next_block->size_and_flag |= HEAP_PREV_BLOCK_USED;                
   464f8:	7001           	moveq #1,%d0                                
   464fa:	81a8 0004      	orl %d0,%a0@(4)                             
  }                                                                   
}                                                                     
   464fe:	4cd7 1c7c      	moveml %sp@,%d2-%d6/%a2-%a4                 
   46502:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004a61c <_Heap_Extend>: Heap_Control *heap, void *extend_area_begin_ptr, uintptr_t extend_area_size, uintptr_t *extended_size_ptr ) {
   4a61c:	4e56 ffcc      	linkw %fp,#-52                              <== NOT EXECUTED
   4a620:	202e 0010      	movel %fp@(16),%d0                          <== NOT EXECUTED
   4a624:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 <== NOT EXECUTED
   4a628:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   4a62c:	262e 000c      	movel %fp@(12),%d3                          <== NOT EXECUTED
  Heap_Block *extend_first_block = NULL;                              
  Heap_Block *extend_last_block = NULL;                               
  uintptr_t const page_size = heap->page_size;                        
  uintptr_t const min_block_size = heap->min_block_size;              
  uintptr_t const extend_area_begin = (uintptr_t) extend_area_begin_ptr;
  uintptr_t const extend_area_end = extend_area_begin + extend_area_size;
   4a630:	2403           	movel %d3,%d2                               <== NOT EXECUTED
   4a632:	d480           	addl %d0,%d2                                <== NOT EXECUTED
  uintptr_t const free_size = stats->free_size;                       
   4a634:	206a 0030      	moveal %a2@(48),%a0                         <== NOT EXECUTED
  uintptr_t extend_area_size,                                         
  uintptr_t *extended_size_ptr                                        
)                                                                     
{                                                                     
  Heap_Statistics *const stats = &heap->stats;                        
  Heap_Block *const first_block = heap->first_block;                  
   4a638:	282a 0020      	movel %a2@(32),%d4                          <== NOT EXECUTED
  Heap_Block *merge_above_block = NULL;                               
  Heap_Block *link_below_block = NULL;                                
  Heap_Block *link_above_block = NULL;                                
  Heap_Block *extend_first_block = NULL;                              
  Heap_Block *extend_last_block = NULL;                               
  uintptr_t const page_size = heap->page_size;                        
   4a63c:	2a2a 0010      	movel %a2@(16),%d5                          <== NOT EXECUTED
  uintptr_t const min_block_size = heap->min_block_size;              
   4a640:	222a 0014      	movel %a2@(20),%d1                          <== NOT EXECUTED
  Heap_Block *start_block = first_block;                              
  Heap_Block *merge_below_block = NULL;                               
  Heap_Block *merge_above_block = NULL;                               
  Heap_Block *link_below_block = NULL;                                
  Heap_Block *link_above_block = NULL;                                
  Heap_Block *extend_first_block = NULL;                              
   4a644:	42ae fffc      	clrl %fp@(-4)                               <== NOT EXECUTED
  Heap_Block *extend_last_block = NULL;                               
   4a648:	42ae fff8      	clrl %fp@(-8)                               <== NOT EXECUTED
  uintptr_t const page_size = heap->page_size;                        
  uintptr_t const min_block_size = heap->min_block_size;              
  uintptr_t const extend_area_begin = (uintptr_t) extend_area_begin_ptr;
  uintptr_t const extend_area_end = extend_area_begin + extend_area_size;
  uintptr_t const free_size = stats->free_size;                       
   4a64c:	2d48 fff4      	movel %a0,%fp@(-12)                         <== NOT EXECUTED
  uintptr_t extend_first_block_size = 0;                              
  uintptr_t extended_size = 0;                                        
  bool extend_area_ok = false;                                        
                                                                      
  if ( extend_area_end < extend_area_begin ) {                        
   4a650:	b682           	cmpl %d2,%d3                                <== NOT EXECUTED
   4a652:	6200 01aa      	bhiw 4a7fe <_Heap_Extend+0x1e2>             <== NOT EXECUTED
    return false;                                                     
  }                                                                   
                                                                      
  extend_area_ok = _Heap_Get_first_and_last_block(                    
   4a656:	486e fff8      	pea %fp@(-8)                                <== NOT EXECUTED
   4a65a:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4a65e:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   4a660:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   4a662:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4a664:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4a666:	4eb9 0004 681a 	jsr 4681a <_Heap_Get_first_and_last_block>  <== NOT EXECUTED
    page_size,                                                        
    min_block_size,                                                   
    &extend_first_block,                                              
    &extend_last_block                                                
  );                                                                  
  if (!extend_area_ok ) {                                             
   4a66c:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
   4a670:	4a00           	tstb %d0                                    <== NOT EXECUTED
   4a672:	6700 018a      	beqw 4a7fe <_Heap_Extend+0x1e2>             <== NOT EXECUTED
   4a676:	2044           	moveal %d4,%a0                              <== NOT EXECUTED
   4a678:	9bcd           	subal %a5,%a5                               <== NOT EXECUTED
   4a67a:	4281           	clrl %d1                                    <== NOT EXECUTED
   4a67c:	97cb           	subal %a3,%a3                               <== NOT EXECUTED
   4a67e:	99cc           	subal %a4,%a4                               <== NOT EXECUTED
    return false;                                                     
  }                                                                   
                                                                      
  do {                                                                
    uintptr_t const sub_area_begin = (start_block != first_block) ?   
      (uintptr_t) start_block : heap->area_begin;                     
   4a680:	b888           	cmpl %a0,%d4                                <== NOT EXECUTED
   4a682:	6704           	beqs 4a688 <_Heap_Extend+0x6c>              <== NOT EXECUTED
   4a684:	2248           	moveal %a0,%a1                              <== NOT EXECUTED
   4a686:	6004           	bras 4a68c <_Heap_Extend+0x70>              <== NOT EXECUTED
   4a688:	226a 0018      	moveal %a2@(24),%a1                         <== NOT EXECUTED
    uintptr_t const sub_area_end = start_block->prev_size;            
   4a68c:	2010           	movel %a0@,%d0                              <== NOT EXECUTED
    Heap_Block *const end_block =                                     
      _Heap_Block_of_alloc_area( sub_area_end, page_size );           
                                                                      
    if (                                                              
   4a68e:	b680           	cmpl %d0,%d3                                <== NOT EXECUTED
   4a690:	6406           	bccs 4a698 <_Heap_Extend+0x7c>              <== NOT EXECUTED
      sub_area_end > extend_area_begin && extend_area_end > sub_area_begin
   4a692:	b3c2           	cmpal %d2,%a1                               <== NOT EXECUTED
   4a694:	6500 0168      	bcsw 4a7fe <_Heap_Extend+0x1e2>             <== NOT EXECUTED
    ) {                                                               
      return false;                                                   
    }                                                                 
                                                                      
    if ( extend_area_end == sub_area_begin ) {                        
   4a698:	b3c2           	cmpal %d2,%a1                               <== NOT EXECUTED
   4a69a:	6706           	beqs 4a6a2 <_Heap_Extend+0x86>              <== NOT EXECUTED
      merge_below_block = start_block;                                
    } else if ( extend_area_end < sub_area_end ) {                    
   4a69c:	b082           	cmpl %d2,%d0                                <== NOT EXECUTED
   4a69e:	6206           	bhis 4a6a6 <_Heap_Extend+0x8a>              <== NOT EXECUTED
   4a6a0:	6006           	bras 4a6a8 <_Heap_Extend+0x8c>              <== NOT EXECUTED
      sub_area_end > extend_area_begin && extend_area_end > sub_area_begin
    ) {                                                               
      return false;                                                   
    }                                                                 
                                                                      
    if ( extend_area_end == sub_area_begin ) {                        
   4a6a2:	2848           	moveal %a0,%a4                              <== NOT EXECUTED
   4a6a4:	6002           	bras 4a6a8 <_Heap_Extend+0x8c>              <== NOT EXECUTED
      merge_below_block = start_block;                                
    } else if ( extend_area_end < sub_area_end ) {                    
   4a6a6:	2208           	movel %a0,%d1                               <== NOT EXECUTED
   4a6a8:	2e00           	movel %d0,%d7                               <== NOT EXECUTED
   4a6aa:	2240           	moveal %d0,%a1                              <== NOT EXECUTED
   4a6ac:	5189           	subql #8,%a1                                <== NOT EXECUTED
   4a6ae:	4c45 7006      	remul %d5,%d6,%d7                           <== NOT EXECUTED
  uintptr_t alloc_begin,                                              
  uintptr_t page_size                                                 
)                                                                     
{                                                                     
  return (Heap_Block *) (_Heap_Align_down( alloc_begin, page_size )   
    - HEAP_BLOCK_HEADER_SIZE);                                        
   4a6b2:	93c6           	subal %d6,%a1                               <== NOT EXECUTED
      link_below_block = start_block;                                 
    }                                                                 
                                                                      
    if ( sub_area_end == extend_area_begin ) {                        
   4a6b4:	b680           	cmpl %d0,%d3                                <== NOT EXECUTED
   4a6b6:	6606           	bnes 4a6be <_Heap_Extend+0xa2>              <== NOT EXECUTED
      start_block->prev_size = extend_area_end;                       
   4a6b8:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_of_alloc_area(           
  uintptr_t alloc_begin,                                              
  uintptr_t page_size                                                 
)                                                                     
{                                                                     
  return (Heap_Block *) (_Heap_Align_down( alloc_begin, page_size )   
   4a6ba:	2649           	moveal %a1,%a3                              <== NOT EXECUTED
   4a6bc:	6006           	bras 4a6c4 <_Heap_Extend+0xa8>              <== NOT EXECUTED
                                                                      
      merge_above_block = end_block;                                  
    } else if ( sub_area_end < extend_area_begin ) {                  
   4a6be:	b680           	cmpl %d0,%d3                                <== NOT EXECUTED
   4a6c0:	6302           	blss 4a6c4 <_Heap_Extend+0xa8>              <== NOT EXECUTED
   4a6c2:	2a49           	moveal %a1,%a5                              <== NOT EXECUTED
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   4a6c4:	70fe           	moveq #-2,%d0                               <== NOT EXECUTED
   4a6c6:	c0a9 0004      	andl %a1@(4),%d0                            <== NOT EXECUTED
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(                      
  const Heap_Block *block,                                            
  uintptr_t offset                                                    
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block + offset);                 
   4a6ca:	41f1 0800      	lea %a1@(00000000,%d0:l),%a0                <== NOT EXECUTED
      link_above_block = end_block;                                   
    }                                                                 
                                                                      
    start_block = _Heap_Block_at( end_block, _Heap_Block_size( end_block ) );
  } while ( start_block != first_block );                             
   4a6ce:	b888           	cmpl %a0,%d4                                <== NOT EXECUTED
   4a6d0:	66ae           	bnes 4a680 <_Heap_Extend+0x64>              <== NOT EXECUTED
                                                                      
  if ( extend_area_begin < heap->area_begin ) {                       
   4a6d2:	b6aa 0018      	cmpl %a2@(24),%d3                           <== NOT EXECUTED
   4a6d6:	6406           	bccs 4a6de <_Heap_Extend+0xc2>              <== NOT EXECUTED
    heap->area_begin = extend_area_begin;                             
   4a6d8:	2543 0018      	movel %d3,%a2@(24)                          <== NOT EXECUTED
   4a6dc:	600a           	bras 4a6e8 <_Heap_Extend+0xcc>              <== NOT EXECUTED
  } else if ( heap->area_end < extend_area_end ) {                    
   4a6de:	b4aa 001c      	cmpl %a2@(28),%d2                           <== NOT EXECUTED
   4a6e2:	6304           	blss 4a6e8 <_Heap_Extend+0xcc>              <== NOT EXECUTED
    heap->area_end = extend_area_end;                                 
   4a6e4:	2542 001c      	movel %d2,%a2@(28)                          <== NOT EXECUTED
  }                                                                   
                                                                      
  extend_first_block_size =                                           
    (uintptr_t) extend_last_block - (uintptr_t) extend_first_block;   
   4a6e8:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
    heap->area_begin = extend_area_begin;                             
  } else if ( heap->area_end < extend_area_end ) {                    
    heap->area_end = extend_area_end;                                 
  }                                                                   
                                                                      
  extend_first_block_size =                                           
   4a6ec:	2008           	movel %a0,%d0                               <== NOT EXECUTED
    (uintptr_t) extend_last_block - (uintptr_t) extend_first_block;   
                                                                      
  extend_first_block->prev_size = extend_area_end;                    
  extend_first_block->size_and_flag =                                 
    extend_first_block_size | HEAP_PREV_BLOCK_USED;                   
   4a6ee:	7801           	moveq #1,%d4                                <== NOT EXECUTED
  } else if ( heap->area_end < extend_area_end ) {                    
    heap->area_end = extend_area_end;                                 
  }                                                                   
                                                                      
  extend_first_block_size =                                           
    (uintptr_t) extend_last_block - (uintptr_t) extend_first_block;   
   4a6f0:	226e fffc      	moveal %fp@(-4),%a1                         <== NOT EXECUTED
    heap->area_begin = extend_area_begin;                             
  } else if ( heap->area_end < extend_area_end ) {                    
    heap->area_end = extend_area_end;                                 
  }                                                                   
                                                                      
  extend_first_block_size =                                           
   4a6f4:	9089           	subl %a1,%d0                                <== NOT EXECUTED
    (uintptr_t) extend_last_block - (uintptr_t) extend_first_block;   
                                                                      
  extend_first_block->prev_size = extend_area_end;                    
  extend_first_block->size_and_flag =                                 
    extend_first_block_size | HEAP_PREV_BLOCK_USED;                   
   4a6f6:	8880           	orl %d0,%d4                                 <== NOT EXECUTED
  }                                                                   
                                                                      
  extend_first_block_size =                                           
    (uintptr_t) extend_last_block - (uintptr_t) extend_first_block;   
                                                                      
  extend_first_block->prev_size = extend_area_end;                    
   4a6f8:	2282           	movel %d2,%a1@                              <== NOT EXECUTED
  extend_first_block->size_and_flag =                                 
    extend_first_block_size | HEAP_PREV_BLOCK_USED;                   
   4a6fa:	2344 0004      	movel %d4,%a1@(4)                           <== NOT EXECUTED
  _Heap_Protection_block_initialize( heap, extend_first_block );      
                                                                      
  extend_last_block->prev_size = extend_first_block_size;             
   4a6fe:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
  extend_last_block->size_and_flag = 0;                               
   4a700:	42a8 0004      	clrl %a0@(4)                                <== NOT EXECUTED
  _Heap_Protection_block_initialize( heap, extend_last_block );       
                                                                      
  if ( (uintptr_t) extend_first_block < (uintptr_t) heap->first_block ) {
   4a704:	b3ea 0020      	cmpal %a2@(32),%a1                          <== NOT EXECUTED
   4a708:	6406           	bccs 4a710 <_Heap_Extend+0xf4>              <== NOT EXECUTED
    heap->first_block = extend_first_block;                           
   4a70a:	2549 0020      	movel %a1,%a2@(32)                          <== NOT EXECUTED
   4a70e:	600a           	bras 4a71a <_Heap_Extend+0xfe>              <== NOT EXECUTED
  } else if ( (uintptr_t) extend_last_block > (uintptr_t) heap->last_block ) {
   4a710:	b1ea 0024      	cmpal %a2@(36),%a0                          <== NOT EXECUTED
   4a714:	6304           	blss 4a71a <_Heap_Extend+0xfe>              <== NOT EXECUTED
    heap->last_block = extend_last_block;                             
   4a716:	2548 0024      	movel %a0,%a2@(36)                          <== NOT EXECUTED
  }                                                                   
                                                                      
  if ( merge_below_block != NULL ) {                                  
   4a71a:	4a8c           	tstl %a4                                    <== NOT EXECUTED
   4a71c:	6732           	beqs 4a750 <_Heap_Extend+0x134>             <== NOT EXECUTED
  Heap_Control *heap,                                                 
  uintptr_t extend_area_begin,                                        
  Heap_Block *first_block                                             
)                                                                     
{                                                                     
  uintptr_t const page_size = heap->page_size;                        
   4a71e:	202a 0010      	movel %a2@(16),%d0                          <== NOT EXECUTED
  uintptr_t const new_first_block_alloc_begin =                       
    _Heap_Align_up( extend_area_begin + HEAP_BLOCK_HEADER_SIZE, page_size );
   4a722:	5083           	addql #8,%d3                                <== NOT EXECUTED
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Align_up(                        
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  uintptr_t remainder = value % alignment;                            
   4a724:	2803           	movel %d3,%d4                               <== NOT EXECUTED
   4a726:	4c40 4001      	remul %d0,%d1,%d4                           <== NOT EXECUTED
                                                                      
  if ( remainder != 0 ) {                                             
   4a72a:	4a81           	tstl %d1                                    <== NOT EXECUTED
   4a72c:	6704           	beqs 4a732 <_Heap_Extend+0x116>             <== NOT EXECUTED
    return value - remainder + alignment;                             
   4a72e:	d680           	addl %d0,%d3                                <== NOT EXECUTED
   4a730:	9681           	subl %d1,%d3                                <== NOT EXECUTED
  uintptr_t const new_first_block_begin =                             
   4a732:	2043           	moveal %d3,%a0                              <== NOT EXECUTED
   4a734:	5188           	subql #8,%a0                                <== NOT EXECUTED
    new_first_block_alloc_begin - HEAP_BLOCK_HEADER_SIZE;             
  uintptr_t const first_block_begin = (uintptr_t) first_block;        
  uintptr_t const new_first_block_size =                              
   4a736:	200c           	movel %a4,%d0                               <== NOT EXECUTED
   4a738:	9088           	subl %a0,%d0                                <== NOT EXECUTED
    first_block_begin - new_first_block_begin;                        
  Heap_Block *const new_first_block = (Heap_Block *) new_first_block_begin;
                                                                      
  new_first_block->prev_size = first_block->prev_size;                
  new_first_block->size_and_flag = new_first_block_size | HEAP_PREV_BLOCK_USED;
   4a73a:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   4a73c:	8280           	orl %d0,%d1                                 <== NOT EXECUTED
  uintptr_t const first_block_begin = (uintptr_t) first_block;        
  uintptr_t const new_first_block_size =                              
    first_block_begin - new_first_block_begin;                        
  Heap_Block *const new_first_block = (Heap_Block *) new_first_block_begin;
                                                                      
  new_first_block->prev_size = first_block->prev_size;                
   4a73e:	2094           	movel %a4@,%a0@                             <== NOT EXECUTED
  new_first_block->size_and_flag = new_first_block_size | HEAP_PREV_BLOCK_USED;
   4a740:	2141 0004      	movel %d1,%a0@(4)                           <== NOT EXECUTED
                                                                      
  _Heap_Free_block( heap, new_first_block );                          
   4a744:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   4a746:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4a748:	4eba feb6      	jsr %pc@(4a600 <_Heap_Free_block>)          <== NOT EXECUTED
   4a74c:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4a74e:	6012           	bras 4a762 <_Heap_Extend+0x146>             <== NOT EXECUTED
    heap->last_block = extend_last_block;                             
  }                                                                   
                                                                      
  if ( merge_below_block != NULL ) {                                  
    _Heap_Merge_below( heap, extend_area_begin, merge_below_block );  
  } else if ( link_below_block != NULL ) {                            
   4a750:	4a81           	tstl %d1                                    <== NOT EXECUTED
   4a752:	670e           	beqs 4a762 <_Heap_Extend+0x146>             <== NOT EXECUTED
    _Heap_Link_below(                                                 
   4a754:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
{                                                                     
  uintptr_t const last_block_begin = (uintptr_t) last_block;          
  uintptr_t const link_begin = (uintptr_t) link;                      
                                                                      
  last_block->size_and_flag =                                         
    (link_begin - last_block_begin) | HEAP_PREV_BLOCK_USED;           
   4a758:	7801           	moveq #1,%d4                                <== NOT EXECUTED
   4a75a:	9288           	subl %a0,%d1                                <== NOT EXECUTED
   4a75c:	8881           	orl %d1,%d4                                 <== NOT EXECUTED
   4a75e:	2144 0004      	movel %d4,%a0@(4)                           <== NOT EXECUTED
      link_below_block,                                               
      extend_last_block                                               
    );                                                                
  }                                                                   
                                                                      
  if ( merge_above_block != NULL ) {                                  
   4a762:	4a8b           	tstl %a3                                    <== NOT EXECUTED
   4a764:	6734           	beqs 4a79a <_Heap_Extend+0x17e>             <== NOT EXECUTED
)                                                                     
{                                                                     
  uintptr_t const page_size = heap->page_size;                        
  uintptr_t const last_block_begin = (uintptr_t) last_block;          
  uintptr_t const last_block_new_size = _Heap_Align_down(             
    extend_area_end - last_block_begin - HEAP_BLOCK_HEADER_SIZE,      
   4a766:	5182           	subql #8,%d2                                <== NOT EXECUTED
  uintptr_t extend_area_end                                           
)                                                                     
{                                                                     
  uintptr_t const page_size = heap->page_size;                        
  uintptr_t const last_block_begin = (uintptr_t) last_block;          
  uintptr_t const last_block_new_size = _Heap_Align_down(             
   4a768:	948b           	subl %a3,%d2                                <== NOT EXECUTED
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Align_down(                      
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  return value - (value % alignment);                                 
   4a76a:	2202           	movel %d2,%d1                               <== NOT EXECUTED
   4a76c:	4c6a 1000 0010 	remul %a2@(16),%d0,%d1                      <== NOT EXECUTED
  Heap_Block *const new_last_block =                                  
    _Heap_Block_at( last_block, last_block_new_size );                
                                                                      
  new_last_block->size_and_flag =                                     
    (last_block->size_and_flag - last_block_new_size)                 
      | HEAP_PREV_BLOCK_USED;                                         
   4a772:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   4a774:	9480           	subl %d0,%d2                                <== NOT EXECUTED
  );                                                                  
  Heap_Block *const new_last_block =                                  
    _Heap_Block_at( last_block, last_block_new_size );                
                                                                      
  new_last_block->size_and_flag =                                     
    (last_block->size_and_flag - last_block_new_size)                 
   4a776:	202b 0004      	movel %a3@(4),%d0                           <== NOT EXECUTED
   4a77a:	9082           	subl %d2,%d0                                <== NOT EXECUTED
      | HEAP_PREV_BLOCK_USED;                                         
   4a77c:	8280           	orl %d0,%d1                                 <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Heap_Block_set_size(                       
  Heap_Block *block,                                                  
  uintptr_t size                                                      
)                                                                     
{                                                                     
  uintptr_t flag = block->size_and_flag & HEAP_PREV_BLOCK_USED;       
   4a77e:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4a780:	2781 2804      	movel %d1,%a3@(00000004,%d2:l)              <== NOT EXECUTED
   4a784:	c0ab 0004      	andl %a3@(4),%d0                            <== NOT EXECUTED
                                                                      
  block->size_and_flag = size | flag;                                 
   4a788:	8480           	orl %d0,%d2                                 <== NOT EXECUTED
   4a78a:	2742 0004      	movel %d2,%a3@(4)                           <== NOT EXECUTED
                                                                      
  _Heap_Block_set_size( last_block, last_block_new_size );            
                                                                      
  _Heap_Free_block( heap, last_block );                               
   4a78e:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   4a790:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4a792:	4eba fe6c      	jsr %pc@(4a600 <_Heap_Free_block>)          <== NOT EXECUTED
   4a796:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4a798:	6020           	bras 4a7ba <_Heap_Extend+0x19e>             <== NOT EXECUTED
    );                                                                
  }                                                                   
                                                                      
  if ( merge_above_block != NULL ) {                                  
    _Heap_Merge_above( heap, merge_above_block, extend_area_end );    
  } else if ( link_above_block != NULL ) {                            
   4a79a:	4a8d           	tstl %a5                                    <== NOT EXECUTED
   4a79c:	671c           	beqs 4a7ba <_Heap_Extend+0x19e>             <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Heap_Block_set_size(                       
  Heap_Block *block,                                                  
  uintptr_t size                                                      
)                                                                     
{                                                                     
  uintptr_t flag = block->size_and_flag & HEAP_PREV_BLOCK_USED;       
   4a79e:	7001           	moveq #1,%d0                                <== NOT EXECUTED
  uintptr_t const link_begin = (uintptr_t) link;                      
  uintptr_t const first_block_begin = (uintptr_t) first_block;        
                                                                      
  _Heap_Block_set_size( link, first_block_begin - link_begin );       
                                                                      
  last_block->size_and_flag |= HEAP_PREV_BLOCK_USED;                  
   4a7a0:	7801           	moveq #1,%d4                                <== NOT EXECUTED
)                                                                     
{                                                                     
  uintptr_t const link_begin = (uintptr_t) link;                      
  uintptr_t const first_block_begin = (uintptr_t) first_block;        
                                                                      
  _Heap_Block_set_size( link, first_block_begin - link_begin );       
   4a7a2:	222e fffc      	movel %fp@(-4),%d1                          <== NOT EXECUTED
   4a7a6:	928d           	subl %a5,%d1                                <== NOT EXECUTED
   4a7a8:	c0ad 0004      	andl %a5@(4),%d0                            <== NOT EXECUTED
  }                                                                   
                                                                      
  if ( merge_above_block != NULL ) {                                  
    _Heap_Merge_above( heap, merge_above_block, extend_area_end );    
  } else if ( link_above_block != NULL ) {                            
    _Heap_Link_above(                                                 
   4a7ac:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
                                                                      
  block->size_and_flag = size | flag;                                 
   4a7b0:	8280           	orl %d0,%d1                                 <== NOT EXECUTED
   4a7b2:	2b41 0004      	movel %d1,%a5@(4)                           <== NOT EXECUTED
  uintptr_t const link_begin = (uintptr_t) link;                      
  uintptr_t const first_block_begin = (uintptr_t) first_block;        
                                                                      
  _Heap_Block_set_size( link, first_block_begin - link_begin );       
                                                                      
  last_block->size_and_flag |= HEAP_PREV_BLOCK_USED;                  
   4a7b6:	89a8 0004      	orl %d4,%a0@(4)                             <== NOT EXECUTED
      extend_first_block,                                             
      extend_last_block                                               
    );                                                                
  }                                                                   
                                                                      
  if ( merge_below_block == NULL && merge_above_block == NULL ) {     
   4a7ba:	4a8c           	tstl %a4                                    <== NOT EXECUTED
   4a7bc:	6610           	bnes 4a7ce <_Heap_Extend+0x1b2>             <== NOT EXECUTED
   4a7be:	4a8b           	tstl %a3                                    <== NOT EXECUTED
   4a7c0:	660c           	bnes 4a7ce <_Heap_Extend+0x1b2>             <== NOT EXECUTED
    _Heap_Free_block( heap, extend_first_block );                     
   4a7c2:	2f2e fffc      	movel %fp@(-4),%sp@-                        <== NOT EXECUTED
   4a7c6:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4a7c8:	4eba fe36      	jsr %pc@(4a600 <_Heap_Free_block>)          <== NOT EXECUTED
   4a7cc:	508f           	addql #8,%sp                                <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _Heap_Set_last_block_size( Heap_Control *heap )
{                                                                     
  _Heap_Block_set_size(                                               
    heap->last_block,                                                 
    (uintptr_t) heap->first_block - (uintptr_t) heap->last_block      
   4a7ce:	206a 0024      	moveal %a2@(36),%a0                         <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Heap_Block_set_size(                       
  Heap_Block *block,                                                  
  uintptr_t size                                                      
)                                                                     
{                                                                     
  uintptr_t flag = block->size_and_flag & HEAP_PREV_BLOCK_USED;       
   4a7d2:	7001           	moveq #1,%d0                                <== NOT EXECUTED
 * This feature will be used to terminate the scattered heap area list.  See
 * also _Heap_Extend().                                               
 */                                                                   
RTEMS_INLINE_ROUTINE void _Heap_Set_last_block_size( Heap_Control *heap )
{                                                                     
  _Heap_Block_set_size(                                               
   4a7d4:	222a 0020      	movel %a2@(32),%d1                          <== NOT EXECUTED
   4a7d8:	9288           	subl %a0,%d1                                <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Heap_Block_set_size(                       
  Heap_Block *block,                                                  
  uintptr_t size                                                      
)                                                                     
{                                                                     
  uintptr_t flag = block->size_and_flag & HEAP_PREV_BLOCK_USED;       
   4a7da:	c0a8 0004      	andl %a0@(4),%d0                            <== NOT EXECUTED
                                                                      
  block->size_and_flag = size | flag;                                 
   4a7de:	8280           	orl %d0,%d1                                 <== NOT EXECUTED
  }                                                                   
                                                                      
  _Heap_Set_last_block_size( heap );                                  
                                                                      
  extended_size = stats->free_size - free_size;                       
   4a7e0:	202a 0030      	movel %a2@(48),%d0                          <== NOT EXECUTED
   4a7e4:	90ae fff4      	subl %fp@(-12),%d0                          <== NOT EXECUTED
   4a7e8:	2141 0004      	movel %d1,%a0@(4)                           <== NOT EXECUTED
                                                                      
  /* Statistics */                                                    
  stats->size += extended_size;                                       
   4a7ec:	d1aa 002c      	addl %d0,%a2@(44)                           <== NOT EXECUTED
                                                                      
  if ( extended_size_ptr != NULL )                                    
   4a7f0:	4aae 0014      	tstl %fp@(20)                               <== NOT EXECUTED
   4a7f4:	670c           	beqs 4a802 <_Heap_Extend+0x1e6>             <== NOT EXECUTED
    *extended_size_ptr = extended_size;                               
   4a7f6:	206e 0014      	moveal %fp@(20),%a0                         <== NOT EXECUTED
   4a7fa:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
   4a7fc:	6004           	bras 4a802 <_Heap_Extend+0x1e6>             <== NOT EXECUTED
      _Heap_Block_of_alloc_area( sub_area_end, page_size );           
                                                                      
    if (                                                              
      sub_area_end > extend_area_begin && extend_area_end > sub_area_begin
    ) {                                                               
      return false;                                                   
   4a7fe:	4200           	clrb %d0                                    <== NOT EXECUTED
   4a800:	6002           	bras 4a804 <_Heap_Extend+0x1e8>             <== NOT EXECUTED
  stats->size += extended_size;                                       
                                                                      
  if ( extended_size_ptr != NULL )                                    
    *extended_size_ptr = extended_size;                               
                                                                      
  return true;                                                        
   4a802:	7001           	moveq #1,%d0                                <== NOT EXECUTED
}                                                                     
   4a804:	4cee 3cfc ffcc 	moveml %fp@(-52),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   4a80a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004a320 <_Heap_Free>: return do_free; } #endif bool _Heap_Free( Heap_Control *heap, void *alloc_begin_ptr ) {
   4a320:	4e56 ffe8      	linkw %fp,#-24                              
   4a324:	202e 000c      	movel %fp@(12),%d0                          
   4a328:	2240           	moveal %d0,%a1                              
   4a32a:	5189           	subql #8,%a1                                
   4a32c:	206e 0008      	moveal %fp@(8),%a0                          
   4a330:	4c68 0001 0010 	remul %a0@(16),%d1,%d0                      
   4a336:	48d7 0c3c      	moveml %d2-%d5/%a2-%a3,%sp@                 
RTEMS_INLINE_ROUTINE bool _Heap_Is_block_in_heap(                     
  const Heap_Control *heap,                                           
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block >= (uintptr_t) heap->first_block           
   4a33a:	2828 0020      	movel %a0@(32),%d4                          
  uintptr_t alloc_begin,                                              
  uintptr_t page_size                                                 
)                                                                     
{                                                                     
  return (Heap_Block *) (_Heap_Align_down( alloc_begin, page_size )   
    - HEAP_BLOCK_HEADER_SIZE);                                        
   4a33e:	93c1           	subal %d1,%a1                               
  const Heap_Control *heap,                                           
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block >= (uintptr_t) heap->first_block           
    && (uintptr_t) block <= (uintptr_t) heap->last_block;             
   4a340:	b889           	cmpl %a1,%d4                                
   4a342:	620c           	bhis 4a350 <_Heap_Free+0x30>                <== NEVER TAKEN
   4a344:	b3e8 0024      	cmpal %a0@(36),%a1                          
   4a348:	53c0           	sls %d0                                     
   4a34a:	49c0           	extbl %d0                                   
   4a34c:	4480           	negl %d0                                    
   4a34e:	6002           	bras 4a352 <_Heap_Free+0x32>                
   4a350:	4280           	clrl %d0                                    <== NOT EXECUTED
  uintptr_t next_block_size = 0;                                      
  bool next_is_free = false;                                          
                                                                      
  _Heap_Protection_block_check( heap, block );                        
                                                                      
  if ( !_Heap_Is_block_in_heap( heap, block ) ) {                     
   4a352:	4a00           	tstb %d0                                    
   4a354:	6700 012c      	beqw 4a482 <_Heap_Free+0x162>               
  --stats->used_blocks;                                               
  ++stats->frees;                                                     
  stats->free_size += block_size;                                     
                                                                      
  return( true );                                                     
}                                                                     
   4a358:	2629 0004      	movel %a1@(4),%d3                           
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   4a35c:	70fe           	moveq #-2,%d0                               
   4a35e:	c083           	andl %d3,%d0                                
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(                      
  const Heap_Block *block,                                            
  uintptr_t offset                                                    
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block + offset);                 
   4a360:	45f1 0800      	lea %a1@(00000000,%d0:l),%a2                
  const Heap_Control *heap,                                           
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block >= (uintptr_t) heap->first_block           
    && (uintptr_t) block <= (uintptr_t) heap->last_block;             
   4a364:	b88a           	cmpl %a2,%d4                                
   4a366:	620c           	bhis 4a374 <_Heap_Free+0x54>                <== NEVER TAKEN
   4a368:	b5e8 0024      	cmpal %a0@(36),%a2                          
   4a36c:	53c1           	sls %d1                                     
   4a36e:	49c1           	extbl %d1                                   
   4a370:	4481           	negl %d1                                    
   4a372:	6002           	bras 4a376 <_Heap_Free+0x56>                
   4a374:	4281           	clrl %d1                                    <== NOT EXECUTED
  block_size = _Heap_Block_size( block );                             
  next_block = _Heap_Block_at( block, block_size );                   
                                                                      
  _Heap_Protection_block_check( heap, next_block );                   
                                                                      
  if ( !_Heap_Is_block_in_heap( heap, next_block ) ) {                
   4a376:	4a01           	tstb %d1                                    
   4a378:	6700 0108      	beqw 4a482 <_Heap_Free+0x162>               
  --stats->used_blocks;                                               
  ++stats->frees;                                                     
  stats->free_size += block_size;                                     
                                                                      
  return( true );                                                     
}                                                                     
   4a37c:	242a 0004      	movel %a2@(4),%d2                           
  if ( !_Heap_Is_block_in_heap( heap, next_block ) ) {                
    _HAssert( false );                                                
    return false;                                                     
  }                                                                   
                                                                      
  if ( !_Heap_Is_prev_used( next_block ) ) {                          
   4a380:	0802 0000      	btst #0,%d2                                 
   4a384:	6700 00fc      	beqw 4a482 <_Heap_Free+0x162>               
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   4a388:	72fe           	moveq #-2,%d1                               
  if ( !_Heap_Protection_determine_block_free( heap, block ) ) {      
    return true;                                                      
  }                                                                   
                                                                      
  next_block_size = _Heap_Block_size( next_block );                   
  next_is_free = next_block != heap->last_block                       
   4a38a:	2668 0024      	moveal %a0@(36),%a3                         
   4a38e:	c481           	andl %d1,%d2                                
    && !_Heap_Is_prev_used( _Heap_Block_at( next_block, next_block_size ));
   4a390:	b7ca           	cmpal %a2,%a3                               
   4a392:	670c           	beqs 4a3a0 <_Heap_Free+0x80>                <== NEVER TAKEN
  block->size_and_flag = size | flag;                                 
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE bool _Heap_Is_prev_used( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & HEAP_PREV_BLOCK_USED;                 
   4a394:	7201           	moveq #1,%d1                                
   4a396:	c2b2 2804      	andl %a2@(00000004,%d2:l),%d1               
                                                                      
    return do_free;                                                   
  }                                                                   
#endif                                                                
                                                                      
bool _Heap_Free( Heap_Control *heap, void *alloc_begin_ptr )          
   4a39a:	5381           	subql #1,%d1                                
   4a39c:	4481           	negl %d1                                    
   4a39e:	6002           	bras 4a3a2 <_Heap_Free+0x82>                
    return true;                                                      
  }                                                                   
                                                                      
  next_block_size = _Heap_Block_size( next_block );                   
  next_is_free = next_block != heap->last_block                       
    && !_Heap_Is_prev_used( _Heap_Block_at( next_block, next_block_size ));
   4a3a0:	4281           	clrl %d1                                    <== NOT EXECUTED
  if ( !_Heap_Protection_determine_block_free( heap, block ) ) {      
    return true;                                                      
  }                                                                   
                                                                      
  next_block_size = _Heap_Block_size( next_block );                   
  next_is_free = next_block != heap->last_block                       
   4a3a2:	1a01           	moveb %d1,%d5                               
    && !_Heap_Is_prev_used( _Heap_Block_at( next_block, next_block_size ));
                                                                      
  if ( !_Heap_Is_prev_used( block ) ) {                               
   4a3a4:	0803 0000      	btst #0,%d3                                 
   4a3a8:	6662           	bnes 4a40c <_Heap_Free+0xec>                
    uintptr_t const prev_size = block->prev_size;                     
   4a3aa:	2611           	movel %a1@,%d3                              
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(                      
  const Heap_Block *block,                                            
  uintptr_t offset                                                    
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block + offset);                 
   4a3ac:	93c3           	subal %d3,%a1                               
  const Heap_Control *heap,                                           
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block >= (uintptr_t) heap->first_block           
    && (uintptr_t) block <= (uintptr_t) heap->last_block;             
   4a3ae:	b889           	cmpl %a1,%d4                                
   4a3b0:	620a           	bhis 4a3bc <_Heap_Free+0x9c>                <== NEVER TAKEN
   4a3b2:	b3cb           	cmpal %a3,%a1                               
   4a3b4:	53c1           	sls %d1                                     
   4a3b6:	49c1           	extbl %d1                                   
   4a3b8:	4481           	negl %d1                                    
   4a3ba:	6002           	bras 4a3be <_Heap_Free+0x9e>                
   4a3bc:	4281           	clrl %d1                                    <== NOT EXECUTED
    Heap_Block * const prev_block = _Heap_Block_at( block, -prev_size );
                                                                      
    if ( !_Heap_Is_block_in_heap( heap, prev_block ) ) {              
   4a3be:	4a01           	tstb %d1                                    
   4a3c0:	6700 00c0      	beqw 4a482 <_Heap_Free+0x162>               
  block->size_and_flag = size | flag;                                 
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE bool _Heap_Is_prev_used( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & HEAP_PREV_BLOCK_USED;                 
   4a3c4:	7201           	moveq #1,%d1                                
   4a3c6:	c2a9 0004      	andl %a1@(4),%d1                            
      return( false );                                                
    }                                                                 
                                                                      
    /* As we always coalesce free blocks, the block that preceedes prev_block
       must have been used. */                                        
    if ( !_Heap_Is_prev_used ( prev_block) ) {                        
   4a3ca:	6700 00b6      	beqw 4a482 <_Heap_Free+0x162>               
      _HAssert( false );                                              
      return( false );                                                
    }                                                                 
                                                                      
    if ( next_is_free ) {       /* coalesce both */                   
   4a3ce:	4a05           	tstb %d5                                    
   4a3d0:	6726           	beqs 4a3f8 <_Heap_Free+0xd8>                <== ALWAYS TAKEN
  return _Heap_Free_list_tail(heap)->prev;                            
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE void _Heap_Free_list_remove( Heap_Block *block ) 
{                                                                     
  Heap_Block *next = block->next;                                     
   4a3d2:	266a 0008      	moveal %a2@(8),%a3                          <== NOT EXECUTED
      uintptr_t const size = block_size + prev_size + next_block_size;
   4a3d6:	d480           	addl %d0,%d2                                <== NOT EXECUTED
   4a3d8:	d682           	addl %d2,%d3                                <== NOT EXECUTED
      _Heap_Free_list_remove( next_block );                           
      stats->free_blocks -= 1;                                        
      prev_block->size_and_flag = size | HEAP_PREV_BLOCK_USED;        
   4a3da:	7401           	moveq #1,%d2                                <== NOT EXECUTED
  Heap_Block *prev = block->prev;                                     
   4a3dc:	246a 000c      	moveal %a2@(12),%a2                         <== NOT EXECUTED
                                                                      
  prev->next = next;                                                  
   4a3e0:	254b 0008      	movel %a3,%a2@(8)                           <== NOT EXECUTED
   4a3e4:	8483           	orl %d3,%d2                                 <== NOT EXECUTED
  next->prev = prev;                                                  
   4a3e6:	274a 000c      	movel %a2,%a3@(12)                          <== NOT EXECUTED
    }                                                                 
                                                                      
    if ( next_is_free ) {       /* coalesce both */                   
      uintptr_t const size = block_size + prev_size + next_block_size;
      _Heap_Free_list_remove( next_block );                           
      stats->free_blocks -= 1;                                        
   4a3ea:	53a8 0038      	subql #1,%a0@(56)                           <== NOT EXECUTED
      prev_block->size_and_flag = size | HEAP_PREV_BLOCK_USED;        
      next_block = _Heap_Block_at( prev_block, size );                
      _HAssert(!_Heap_Is_prev_used( next_block));                     
      next_block->prev_size = size;                                   
   4a3ee:	2383 3800      	movel %d3,%a1@(00000000,%d3:l)              <== NOT EXECUTED
                                                                      
    if ( next_is_free ) {       /* coalesce both */                   
      uintptr_t const size = block_size + prev_size + next_block_size;
      _Heap_Free_list_remove( next_block );                           
      stats->free_blocks -= 1;                                        
      prev_block->size_and_flag = size | HEAP_PREV_BLOCK_USED;        
   4a3f2:	2342 0004      	movel %d2,%a1@(4)                           <== NOT EXECUTED
   4a3f6:	607a           	bras 4a472 <_Heap_Free+0x152>               <== NOT EXECUTED
      next_block = _Heap_Block_at( prev_block, size );                
      _HAssert(!_Heap_Is_prev_used( next_block));                     
      next_block->prev_size = size;                                   
    } else {                      /* coalesce prev */                 
      uintptr_t const size = block_size + prev_size;                  
   4a3f8:	d680           	addl %d0,%d3                                
      prev_block->size_and_flag = size | HEAP_PREV_BLOCK_USED;        
   4a3fa:	7201           	moveq #1,%d1                                
      next_block->size_and_flag &= ~HEAP_PREV_BLOCK_USED;             
   4a3fc:	74fe           	moveq #-2,%d2                               
      next_block = _Heap_Block_at( prev_block, size );                
      _HAssert(!_Heap_Is_prev_used( next_block));                     
      next_block->prev_size = size;                                   
    } else {                      /* coalesce prev */                 
      uintptr_t const size = block_size + prev_size;                  
      prev_block->size_and_flag = size | HEAP_PREV_BLOCK_USED;        
   4a3fe:	8283           	orl %d3,%d1                                 
      next_block->size_and_flag &= ~HEAP_PREV_BLOCK_USED;             
      next_block->prev_size = size;                                   
   4a400:	2483           	movel %d3,%a2@                              
      next_block = _Heap_Block_at( prev_block, size );                
      _HAssert(!_Heap_Is_prev_used( next_block));                     
      next_block->prev_size = size;                                   
    } else {                      /* coalesce prev */                 
      uintptr_t const size = block_size + prev_size;                  
      prev_block->size_and_flag = size | HEAP_PREV_BLOCK_USED;        
   4a402:	2341 0004      	movel %d1,%a1@(4)                           
      next_block->size_and_flag &= ~HEAP_PREV_BLOCK_USED;             
   4a406:	c5aa 0004      	andl %d2,%a2@(4)                            
   4a40a:	6066           	bras 4a472 <_Heap_Free+0x152>               
      next_block->prev_size = size;                                   
    }                                                                 
  } else if ( next_is_free ) {    /* coalesce next */                 
   4a40c:	4a01           	tstb %d1                                    
   4a40e:	672a           	beqs 4a43a <_Heap_Free+0x11a>               
RTEMS_INLINE_ROUTINE void _Heap_Free_list_replace(                    
  Heap_Block *old_block,                                              
  Heap_Block *new_block                                               
)                                                                     
{                                                                     
  Heap_Block *next = old_block->next;                                 
   4a410:	266a 0008      	moveal %a2@(8),%a3                          
    uintptr_t const size = block_size + next_block_size;              
   4a414:	2202           	movel %d2,%d1                               
   4a416:	d280           	addl %d0,%d1                                
    _Heap_Free_list_replace( next_block, block );                     
    block->size_and_flag = size | HEAP_PREV_BLOCK_USED;               
   4a418:	7401           	moveq #1,%d2                                
  Heap_Block *prev = old_block->prev;                                 
   4a41a:	246a 000c      	moveal %a2@(12),%a2                         
                                                                      
  new_block->next = next;                                             
   4a41e:	234b 0008      	movel %a3,%a1@(8)                           
   4a422:	8481           	orl %d1,%d2                                 
  new_block->prev = prev;                                             
   4a424:	234a 000c      	movel %a2,%a1@(12)                          
    next_block  = _Heap_Block_at( block, size );                      
    next_block->prev_size = size;                                     
   4a428:	2381 1800      	movel %d1,%a1@(00000000,%d1:l)              
                                                                      
  next->prev = new_block;                                             
   4a42c:	2749 000c      	movel %a1,%a3@(12)                          
  prev->next = new_block;                                             
   4a430:	2549 0008      	movel %a1,%a2@(8)                           
      next_block->prev_size = size;                                   
    }                                                                 
  } else if ( next_is_free ) {    /* coalesce next */                 
    uintptr_t const size = block_size + next_block_size;              
    _Heap_Free_list_replace( next_block, block );                     
    block->size_and_flag = size | HEAP_PREV_BLOCK_USED;               
   4a434:	2342 0004      	movel %d2,%a1@(4)                           
   4a438:	6038           	bras 4a472 <_Heap_Free+0x152>               
    next_block->prev_size = size;                                     
  } else {                        /* no coalesce */                   
    /* Add 'block' to the head of the free blocks list as it tends to 
       produce less fragmentation than adding to the tail. */         
    _Heap_Free_list_insert_after( _Heap_Free_list_head( heap), block );
    block->size_and_flag = block_size | HEAP_PREV_BLOCK_USED;         
   4a43a:	7201           	moveq #1,%d1                                
    next_block->size_and_flag &= ~HEAP_PREV_BLOCK_USED;               
   4a43c:	74fe           	moveq #-2,%d2                               
    next_block->prev_size = size;                                     
  } else {                        /* no coalesce */                   
    /* Add 'block' to the head of the free blocks list as it tends to 
       produce less fragmentation than adding to the tail. */         
    _Heap_Free_list_insert_after( _Heap_Free_list_head( heap), block );
    block->size_and_flag = block_size | HEAP_PREV_BLOCK_USED;         
   4a43e:	8280           	orl %d0,%d1                                 
RTEMS_INLINE_ROUTINE void _Heap_Free_list_insert_after(               
  Heap_Block *block_before,                                           
  Heap_Block *new_block                                               
)                                                                     
{                                                                     
  Heap_Block *next = block_before->next;                              
   4a440:	2668 0008      	moveal %a0@(8),%a3                          
                                                                      
  new_block->next = next;                                             
  new_block->prev = block_before;                                     
   4a444:	2348 000c      	movel %a0,%a1@(12)                          
   4a448:	2341 0004      	movel %d1,%a1@(4)                           
    next_block->size_and_flag &= ~HEAP_PREV_BLOCK_USED;               
    next_block->prev_size = block_size;                               
                                                                      
    /* Statistics */                                                  
    ++stats->free_blocks;                                             
   4a44c:	2228 0038      	movel %a0@(56),%d1                          
   4a450:	5281           	addql #1,%d1                                
  Heap_Block *new_block                                               
)                                                                     
{                                                                     
  Heap_Block *next = block_before->next;                              
                                                                      
  new_block->next = next;                                             
   4a452:	234b 0008      	movel %a3,%a1@(8)                           
  } else {                        /* no coalesce */                   
    /* Add 'block' to the head of the free blocks list as it tends to 
       produce less fragmentation than adding to the tail. */         
    _Heap_Free_list_insert_after( _Heap_Free_list_head( heap), block );
    block->size_and_flag = block_size | HEAP_PREV_BLOCK_USED;         
    next_block->size_and_flag &= ~HEAP_PREV_BLOCK_USED;               
   4a456:	c5aa 0004      	andl %d2,%a2@(4)                            
  new_block->prev = block_before;                                     
  block_before->next = new_block;                                     
  next->prev = new_block;                                             
   4a45a:	2749 000c      	movel %a1,%a3@(12)                          
    next_block->prev_size = block_size;                               
   4a45e:	2480           	movel %d0,%a2@                              
{                                                                     
  Heap_Block *next = block_before->next;                              
                                                                      
  new_block->next = next;                                             
  new_block->prev = block_before;                                     
  block_before->next = new_block;                                     
   4a460:	2149 0008      	movel %a1,%a0@(8)                           
                                                                      
    /* Statistics */                                                  
    ++stats->free_blocks;                                             
   4a464:	2141 0038      	movel %d1,%a0@(56)                          
    if ( stats->max_free_blocks < stats->free_blocks ) {              
   4a468:	b2a8 003c      	cmpl %a0@(60),%d1                           
   4a46c:	6304           	blss 4a472 <_Heap_Free+0x152>               <== NEVER TAKEN
      stats->max_free_blocks = stats->free_blocks;                    
   4a46e:	2141 003c      	movel %d1,%a0@(60)                          
  }                                                                   
                                                                      
  /* Statistics */                                                    
  --stats->used_blocks;                                               
  ++stats->frees;                                                     
  stats->free_size += block_size;                                     
   4a472:	d1a8 0030      	addl %d0,%a0@(48)                           
      stats->max_free_blocks = stats->free_blocks;                    
    }                                                                 
  }                                                                   
                                                                      
  /* Statistics */                                                    
  --stats->used_blocks;                                               
   4a476:	53a8 0040      	subql #1,%a0@(64)                           
  ++stats->frees;                                                     
   4a47a:	52a8 0050      	addql #1,%a0@(80)                           
  stats->free_size += block_size;                                     
                                                                      
  return( true );                                                     
   4a47e:	7001           	moveq #1,%d0                                
   4a480:	6002           	bras 4a484 <_Heap_Free+0x164>               
                                                                      
    /* As we always coalesce free blocks, the block that preceedes prev_block
       must have been used. */                                        
    if ( !_Heap_Is_prev_used ( prev_block) ) {                        
      _HAssert( false );                                              
      return( false );                                                
   4a482:	4200           	clrb %d0                                    <== NOT EXECUTED
  --stats->used_blocks;                                               
  ++stats->frees;                                                     
  stats->free_size += block_size;                                     
                                                                      
  return( true );                                                     
}                                                                     
   4a484:	4cd7 0c3c      	moveml %sp@,%d2-%d5/%a2-%a3                 
   4a488:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004a600 <_Heap_Free_block>: #include <rtems/system.h> #include <rtems/score/sysstate.h> #include <rtems/score/heap.h> static void _Heap_Free_block( Heap_Control *heap, Heap_Block *block ) {
   4a600:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4a604:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
  Heap_Statistics *const stats = &heap->stats;                        
                                                                      
  /* Statistics */                                                    
  ++stats->used_blocks;                                               
   4a608:	52a8 0040      	addql #1,%a0@(64)                           <== NOT EXECUTED
  --stats->frees;                                                     
   4a60c:	53a8 0050      	subql #1,%a0@(80)                           <== NOT EXECUTED
                                                                      
  _Heap_Free( heap, (void *) _Heap_Alloc_area_of_block( block ));     
   4a610:	50ae 000c      	addql #8,%fp@(12)                           <== NOT EXECUTED
}                                                                     
   4a614:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
  /* Statistics */                                                    
  ++stats->used_blocks;                                               
  --stats->frees;                                                     
                                                                      
  _Heap_Free( heap, (void *) _Heap_Alloc_area_of_block( block ));     
   4a616:	4ef9 0004 a810 	jmp 4a810 <_Heap_Free>                      <== NOT EXECUTED
                                                                      

00046506 <_Heap_Get_first_and_last_block>: uintptr_t page_size, uintptr_t min_block_size, Heap_Block **first_block_ptr, Heap_Block **last_block_ptr ) {
   46506:	4e56 fff4      	linkw %fp,#-12                              
   4650a:	206e 0008      	moveal %fp@(8),%a0                          
  uintptr_t const heap_area_end = heap_area_begin + heap_area_size;   
  uintptr_t const alloc_area_begin =                                  
    _Heap_Align_up( heap_area_begin + HEAP_BLOCK_HEADER_SIZE, page_size );
   4650e:	2208           	movel %a0,%d1                               
   46510:	5081           	addql #8,%d1                                
  uintptr_t page_size,                                                
  uintptr_t min_block_size,                                           
  Heap_Block **first_block_ptr,                                       
  Heap_Block **last_block_ptr                                         
)                                                                     
{                                                                     
   46512:	48d7 001c      	moveml %d2-%d4,%sp@                         
   46516:	202e 0010      	movel %fp@(16),%d0                          
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Align_up(                        
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  uintptr_t remainder = value % alignment;                            
   4651a:	2801           	movel %d1,%d4                               
   4651c:	242e 000c      	movel %fp@(12),%d2                          
  uintptr_t const heap_area_end = heap_area_begin + heap_area_size;   
   46520:	43f0 2800      	lea %a0@(00000000,%d2:l),%a1                
   46524:	4c40 4003      	remul %d0,%d3,%d4                           
                                                                      
  if ( remainder != 0 ) {                                             
   46528:	4a83           	tstl %d3                                    
   4652a:	6704           	beqs 46530 <_Heap_Get_first_and_last_block+0x2a><== ALWAYS TAKEN
    return value - remainder + alignment;                             
   4652c:	d280           	addl %d0,%d1                                <== NOT EXECUTED
   4652e:	9283           	subl %d3,%d1                                <== NOT EXECUTED
    _Heap_Align_down( heap_area_size - overhead, page_size );         
  Heap_Block *const first_block = (Heap_Block *) first_block_begin;   
  Heap_Block *const last_block =                                      
    _Heap_Block_at( first_block, first_block_size );                  
                                                                      
  if (                                                                
   46530:	b1c9           	cmpal %a1,%a0                               
   46532:	622e           	bhis 46562 <_Heap_Get_first_and_last_block+0x5c><== NEVER TAKEN
  uintptr_t const alloc_area_begin =                                  
    _Heap_Align_up( heap_area_begin + HEAP_BLOCK_HEADER_SIZE, page_size );
  uintptr_t const first_block_begin =                                 
    alloc_area_begin - HEAP_BLOCK_HEADER_SIZE;                        
  uintptr_t const overhead =                                          
    HEAP_BLOCK_HEADER_SIZE + (first_block_begin - heap_area_begin);   
   46534:	2241           	moveal %d1,%a1                              
   46536:	5189           	subql #8,%a1                                
  uintptr_t const heap_area_end = heap_area_begin + heap_area_size;   
  uintptr_t const alloc_area_begin =                                  
    _Heap_Align_up( heap_area_begin + HEAP_BLOCK_HEADER_SIZE, page_size );
  uintptr_t const first_block_begin =                                 
    alloc_area_begin - HEAP_BLOCK_HEADER_SIZE;                        
  uintptr_t const overhead =                                          
   46538:	9288           	subl %a0,%d1                                
  Heap_Block *const last_block =                                      
    _Heap_Block_at( first_block, first_block_size );                  
                                                                      
  if (                                                                
    heap_area_end < heap_area_begin                                   
      || heap_area_size <= overhead                                   
   4653a:	b282           	cmpl %d2,%d1                                
   4653c:	6424           	bccs 46562 <_Heap_Get_first_and_last_block+0x5c>
  uintptr_t const first_block_begin =                                 
    alloc_area_begin - HEAP_BLOCK_HEADER_SIZE;                        
  uintptr_t const overhead =                                          
    HEAP_BLOCK_HEADER_SIZE + (first_block_begin - heap_area_begin);   
  uintptr_t const first_block_size =                                  
    _Heap_Align_down( heap_area_size - overhead, page_size );         
   4653e:	9481           	subl %d1,%d2                                
   46540:	2202           	movel %d2,%d1                               
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Align_down(                      
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  return value - (value % alignment);                                 
   46542:	2602           	movel %d2,%d3                               
   46544:	4c40 3002      	remul %d0,%d2,%d3                           
   46548:	9282           	subl %d2,%d1                                
    _Heap_Block_at( first_block, first_block_size );                  
                                                                      
  if (                                                                
    heap_area_end < heap_area_begin                                   
      || heap_area_size <= overhead                                   
      || first_block_size < min_block_size                            
   4654a:	b2ae 0014      	cmpl %fp@(20),%d1                           
   4654e:	6512           	bcss 46562 <_Heap_Get_first_and_last_block+0x5c><== NEVER TAKEN
  ) {                                                                 
    /* Invalid area or area too small */                              
    return false;                                                     
  }                                                                   
                                                                      
  *first_block_ptr = first_block;                                     
   46550:	206e 0018      	moveal %fp@(24),%a0                         
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(                      
  const Heap_Block *block,                                            
  uintptr_t offset                                                    
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block + offset);                 
   46554:	d289           	addl %a1,%d1                                
   46556:	2089           	movel %a1,%a0@                              
   46558:	206e 001c      	moveal %fp@(28),%a0                         
   4655c:	2081           	movel %d1,%a0@                              
  *last_block_ptr = last_block;                                       
                                                                      
  return true;                                                        
   4655e:	7001           	moveq #1,%d0                                
   46560:	6002           	bras 46564 <_Heap_Get_first_and_last_block+0x5e>
    heap_area_end < heap_area_begin                                   
      || heap_area_size <= overhead                                   
      || first_block_size < min_block_size                            
  ) {                                                                 
    /* Invalid area or area too small */                              
    return false;                                                     
   46562:	4200           	clrb %d0                                    
                                                                      
  *first_block_ptr = first_block;                                     
  *last_block_ptr = last_block;                                       
                                                                      
  return true;                                                        
}                                                                     
   46564:	4cd7 001c      	moveml %sp@,%d2-%d4                         
   46568:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004e8c0 <_Heap_Get_free_information>: void _Heap_Get_free_information( Heap_Control *the_heap, Heap_Information *info ) {
   4e8c0:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4e8c4:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
   4e8c8:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4e8ca:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
  Heap_Block *the_block;                                              
  Heap_Block *const tail = _Heap_Free_list_tail(the_heap);            
                                                                      
  info->number = 0;                                                   
   4e8ce:	4290           	clrl %a0@                                   <== NOT EXECUTED
    info->number++;                                                   
    info->total += the_size;                                          
    if ( info->largest < the_size )                                   
        info->largest = the_size;                                     
  }                                                                   
}                                                                     
   4e8d0:	226a 0008      	moveal %a2@(8),%a1                          <== NOT EXECUTED
{                                                                     
  Heap_Block *the_block;                                              
  Heap_Block *const tail = _Heap_Free_list_tail(the_heap);            
                                                                      
  info->number = 0;                                                   
  info->largest = 0;                                                  
   4e8d4:	42a8 0004      	clrl %a0@(4)                                <== NOT EXECUTED
  info->total = 0;                                                    
   4e8d8:	42a8 0008      	clrl %a0@(8)                                <== NOT EXECUTED
                                                                      
  for(the_block = _Heap_Free_list_first(the_heap);                    
   4e8dc:	601a           	bras 4e8f8 <_Heap_Get_free_information+0x38><== NOT EXECUTED
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   4e8de:	70fe           	moveq #-2,%d0                               <== NOT EXECUTED
   4e8e0:	c0a9 0004      	andl %a1@(4),%d0                            <== NOT EXECUTED
    uint32_t const the_size = _Heap_Block_size(the_block);            
                                                                      
    /* As we always coalesce free blocks, prev block must have been used. */
    _HAssert(_Heap_Is_prev_used(the_block));                          
                                                                      
    info->number++;                                                   
   4e8e4:	5290           	addql #1,%a0@                               <== NOT EXECUTED
    info->total += the_size;                                          
   4e8e6:	d1a8 0008      	addl %d0,%a0@(8)                            <== NOT EXECUTED
    if ( info->largest < the_size )                                   
   4e8ea:	b0a8 0004      	cmpl %a0@(4),%d0                            <== NOT EXECUTED
   4e8ee:	6304           	blss 4e8f4 <_Heap_Get_free_information+0x34><== NOT EXECUTED
        info->largest = the_size;                                     
   4e8f0:	2140 0004      	movel %d0,%a0@(4)                           <== NOT EXECUTED
  info->largest = 0;                                                  
  info->total = 0;                                                    
                                                                      
  for(the_block = _Heap_Free_list_first(the_heap);                    
      the_block != tail;                                              
      the_block = the_block->next)                                    
   4e8f4:	2269 0008      	moveal %a1@(8),%a1                          <== NOT EXECUTED
                                                                      
  info->number = 0;                                                   
  info->largest = 0;                                                  
  info->total = 0;                                                    
                                                                      
  for(the_block = _Heap_Free_list_first(the_heap);                    
   4e8f8:	b5c9           	cmpal %a1,%a2                               <== NOT EXECUTED
   4e8fa:	66e2           	bnes 4e8de <_Heap_Get_free_information+0x1e><== NOT EXECUTED
    info->number++;                                                   
    info->total += the_size;                                          
    if ( info->largest < the_size )                                   
        info->largest = the_size;                                     
  }                                                                   
}                                                                     
   4e8fc:	245f           	moveal %sp@+,%a2                            <== NOT EXECUTED
   4e8fe:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004656c <_Heap_Initialize>: Heap_Control *heap, void *heap_area_begin_ptr, uintptr_t heap_area_size, uintptr_t page_size ) {
   4656c:	4e56 ffe4      	linkw %fp,#-28                              
   46570:	48d7 043c      	moveml %d2-%d5/%a2,%sp@                     
   46574:	246e 0008      	moveal %fp@(8),%a2                          
   46578:	282e 000c      	movel %fp@(12),%d4                          
   4657c:	2a2e 0010      	movel %fp@(16),%d5                          
   46580:	242e 0014      	movel %fp@(20),%d2                          
  uintptr_t first_block_begin = 0;                                    
  uintptr_t first_block_size = 0;                                     
  uintptr_t last_block_begin = 0;                                     
  uintptr_t min_block_size = 0;                                       
  bool area_ok = false;                                               
  Heap_Block *first_block = NULL;                                     
   46584:	42ae fffc      	clrl %fp@(-4)                               
  Heap_Block *last_block = NULL;                                      
   46588:	42ae fff8      	clrl %fp@(-8)                               
                                                                      
  if ( page_size == 0 ) {                                             
   4658c:	4a82           	tstl %d2                                    
   4658e:	6714           	beqs 465a4 <_Heap_Initialize+0x38>          <== NEVER TAKEN
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Align_up(                        
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  uintptr_t remainder = value % alignment;                            
   46590:	7003           	moveq #3,%d0                                
   46592:	c082           	andl %d2,%d0                                
                                                                      
  if ( remainder != 0 ) {                                             
   46594:	6704           	beqs 4659a <_Heap_Initialize+0x2e>          <== ALWAYS TAKEN
    return value - remainder + alignment;                             
   46596:	5882           	addql #4,%d2                                <== NOT EXECUTED
   46598:	9480           	subl %d0,%d2                                <== NOT EXECUTED
    page_size = CPU_ALIGNMENT;                                        
  } else {                                                            
    page_size = _Heap_Align_up( page_size, CPU_ALIGNMENT );           
                                                                      
    if ( page_size < CPU_ALIGNMENT ) {                                
   4659a:	7003           	moveq #3,%d0                                
   4659c:	b082           	cmpl %d2,%d0                                
   4659e:	6506           	bcss 465a6 <_Heap_Initialize+0x3a>          <== ALWAYS TAKEN
   465a0:	6000 00c0      	braw 46662 <_Heap_Initialize+0xf6>          <== NOT EXECUTED
  bool area_ok = false;                                               
  Heap_Block *first_block = NULL;                                     
  Heap_Block *last_block = NULL;                                      
                                                                      
  if ( page_size == 0 ) {                                             
    page_size = CPU_ALIGNMENT;                                        
   465a4:	7404           	moveq #4,%d2                                <== NOT EXECUTED
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Align_up(                        
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  uintptr_t remainder = value % alignment;                            
   465a6:	7210           	moveq #16,%d1                               
   465a8:	4c42 1000      	remul %d2,%d0,%d1                           
                                                                      
  if ( remainder != 0 ) {                                             
   465ac:	4a80           	tstl %d0                                    
   465ae:	670c           	beqs 465bc <_Heap_Initialize+0x50>          <== ALWAYS TAKEN
    return value - remainder + alignment;                             
   465b0:	2602           	movel %d2,%d3                               <== NOT EXECUTED
   465b2:	0683 0000 0010 	addil #16,%d3                               <== NOT EXECUTED
   465b8:	9680           	subl %d0,%d3                                <== NOT EXECUTED
   465ba:	6002           	bras 465be <_Heap_Initialize+0x52>          <== NOT EXECUTED
  } else {                                                            
    return value;                                                     
   465bc:	7610           	moveq #16,%d3                               
      return 0;                                                       
    }                                                                 
  }                                                                   
  min_block_size = _Heap_Align_up( sizeof( Heap_Block ), page_size ); 
                                                                      
  area_ok = _Heap_Get_first_and_last_block(                           
   465be:	486e fff8      	pea %fp@(-8)                                
   465c2:	486e fffc      	pea %fp@(-4)                                
   465c6:	2f03           	movel %d3,%sp@-                             
   465c8:	2f02           	movel %d2,%sp@-                             
   465ca:	2f05           	movel %d5,%sp@-                             
   465cc:	2f04           	movel %d4,%sp@-                             
   465ce:	4eb9 0004 6506 	jsr 46506 <_Heap_Get_first_and_last_block>  
    page_size,                                                        
    min_block_size,                                                   
    &first_block,                                                     
    &last_block                                                       
  );                                                                  
  if ( !area_ok ) {                                                   
   465d4:	4fef 0018      	lea %sp@(24),%sp                            
   465d8:	4a00           	tstb %d0                                    
   465da:	6700 0086      	beqw 46662 <_Heap_Initialize+0xf6>          
    return 0;                                                         
  }                                                                   
                                                                      
  memset(heap, 0, sizeof(*heap));                                     
   465de:	4878 0058      	pea 58 <DBL_MANT_DIG+0x23>                  
  uintptr_t page_size                                                 
)                                                                     
{                                                                     
  Heap_Statistics *const stats = &heap->stats;                        
  uintptr_t const heap_area_begin = (uintptr_t) heap_area_begin_ptr;  
  uintptr_t const heap_area_end = heap_area_begin + heap_area_size;   
   465e2:	da84           	addl %d4,%d5                                
  );                                                                  
  if ( !area_ok ) {                                                   
    return 0;                                                         
  }                                                                   
                                                                      
  memset(heap, 0, sizeof(*heap));                                     
   465e4:	42a7           	clrl %sp@-                                  
   465e6:	2f0a           	movel %a2,%sp@-                             
   465e8:	4eb9 0004 c464 	jsr 4c464 <memset>                          
    heap->Protection.block_check = _Heap_Protection_block_check_default;
    heap->Protection.block_error = _Heap_Protection_block_error_default;
  #endif                                                              
                                                                      
  first_block_begin = (uintptr_t) first_block;                        
  last_block_begin = (uintptr_t) last_block;                          
   465ee:	226e fff8      	moveal %fp@(-8),%a1                         
  first_block_size = last_block_begin - first_block_begin;            
   465f2:	2009           	movel %a1,%d0                               
                                                                      
  /* First block */                                                   
  first_block->prev_size = heap_area_end;                             
  first_block->size_and_flag = first_block_size | HEAP_PREV_BLOCK_USED;
   465f4:	7201           	moveq #1,%d1                                
  );                                                                  
  _HAssert(                                                           
    _Heap_Is_aligned( _Heap_Alloc_area_of_block( last_block ), page_size )
  );                                                                  
                                                                      
  return first_block_size;                                            
   465f6:	4fef 000c      	lea %sp@(12),%sp                            
    heap->Protection.block_initialize = _Heap_Protection_block_initialize_default;
    heap->Protection.block_check = _Heap_Protection_block_check_default;
    heap->Protection.block_error = _Heap_Protection_block_error_default;
  #endif                                                              
                                                                      
  first_block_begin = (uintptr_t) first_block;                        
   465fa:	206e fffc      	moveal %fp@(-4),%a0                         
  last_block_begin = (uintptr_t) last_block;                          
  first_block_size = last_block_begin - first_block_begin;            
   465fe:	9088           	subl %a0,%d0                                
                                                                      
  /* First block */                                                   
  first_block->prev_size = heap_area_end;                             
  first_block->size_and_flag = first_block_size | HEAP_PREV_BLOCK_USED;
   46600:	8280           	orl %d0,%d1                                 
  first_block_begin = (uintptr_t) first_block;                        
  last_block_begin = (uintptr_t) last_block;                          
  first_block_size = last_block_begin - first_block_begin;            
                                                                      
  /* First block */                                                   
  first_block->prev_size = heap_area_end;                             
   46602:	2085           	movel %d5,%a0@                              
  first_block->size_and_flag = first_block_size | HEAP_PREV_BLOCK_USED;
   46604:	2141 0004      	movel %d1,%a0@(4)                           
                                                                      
  /* Statistics */                                                    
  stats->size = first_block_size;                                     
  stats->free_size = first_block_size;                                
  stats->min_free_size = first_block_size;                            
  stats->free_blocks = 1;                                             
   46608:	7201           	moveq #1,%d1                                
  first_block_size = last_block_begin - first_block_begin;            
                                                                      
  /* First block */                                                   
  first_block->prev_size = heap_area_end;                             
  first_block->size_and_flag = first_block_size | HEAP_PREV_BLOCK_USED;
  first_block->next = _Heap_Free_list_tail( heap );                   
   4660a:	214a 0008      	movel %a2,%a0@(8)                           
  first_block->prev = _Heap_Free_list_head( heap );                   
   4660e:	214a 000c      	movel %a2,%a0@(12)                          
  heap->min_block_size = min_block_size;                              
  heap->area_begin = heap_area_begin;                                 
  heap->area_end = heap_area_end;                                     
  heap->first_block = first_block;                                    
  heap->last_block = last_block;                                      
  _Heap_Free_list_head( heap )->next = first_block;                   
   46612:	2548 0008      	movel %a0,%a2@(8)                           
  /* Heap control */                                                  
  heap->page_size = page_size;                                        
  heap->min_block_size = min_block_size;                              
  heap->area_begin = heap_area_begin;                                 
  heap->area_end = heap_area_end;                                     
  heap->first_block = first_block;                                    
   46616:	2548 0020      	movel %a0,%a2@(32)                          
  first_block->next = _Heap_Free_list_tail( heap );                   
  first_block->prev = _Heap_Free_list_head( heap );                   
  _Heap_Protection_block_initialize( heap, first_block );             
                                                                      
  /* Heap control */                                                  
  heap->page_size = page_size;                                        
   4661a:	2542 0010      	movel %d2,%a2@(16)                          
  heap->min_block_size = min_block_size;                              
   4661e:	2543 0014      	movel %d3,%a2@(20)                          
  heap->area_begin = heap_area_begin;                                 
   46622:	2544 0018      	movel %d4,%a2@(24)                          
  heap->area_end = heap_area_end;                                     
   46626:	2545 001c      	movel %d5,%a2@(28)                          
  heap->first_block = first_block;                                    
  heap->last_block = last_block;                                      
   4662a:	2549 0024      	movel %a1,%a2@(36)                          
  _Heap_Free_list_head( heap )->next = first_block;                   
  _Heap_Free_list_tail( heap )->prev = first_block;                   
   4662e:	2548 000c      	movel %a0,%a2@(12)                          
 * This feature will be used to terminate the scattered heap area list.  See
 * also _Heap_Extend().                                               
 */                                                                   
RTEMS_INLINE_ROUTINE void _Heap_Set_last_block_size( Heap_Control *heap )
{                                                                     
  _Heap_Block_set_size(                                               
   46632:	91c9           	subal %a1,%a0                               
                                                                      
  /* Last block */                                                    
  last_block->prev_size = first_block_size;                           
   46634:	2280           	movel %d0,%a1@                              
   46636:	2348 0004      	movel %a0,%a1@(4)                           
                                                                      
  /* Statistics */                                                    
  stats->size = first_block_size;                                     
  stats->free_size = first_block_size;                                
  stats->min_free_size = first_block_size;                            
  stats->free_blocks = 1;                                             
   4663a:	2541 0038      	movel %d1,%a2@(56)                          
  stats->max_free_blocks = 1;                                         
   4663e:	2541 003c      	movel %d1,%a2@(60)                          
  stats->instance = instance++;                                       
   46642:	2239 0005 be80 	movel 5be80 <instance>,%d1                  
   46648:	2541 0028      	movel %d1,%a2@(40)                          
   4664c:	5281           	addql #1,%d1                                
  last_block->size_and_flag = 0;                                      
  _Heap_Set_last_block_size( heap );                                  
  _Heap_Protection_block_initialize( heap, last_block );              
                                                                      
  /* Statistics */                                                    
  stats->size = first_block_size;                                     
   4664e:	2540 002c      	movel %d0,%a2@(44)                          
  stats->free_size = first_block_size;                                
   46652:	2540 0030      	movel %d0,%a2@(48)                          
  stats->min_free_size = first_block_size;                            
   46656:	2540 0034      	movel %d0,%a2@(52)                          
  stats->free_blocks = 1;                                             
  stats->max_free_blocks = 1;                                         
  stats->instance = instance++;                                       
   4665a:	23c1 0005 be80 	movel %d1,5be80 <instance>                  
  );                                                                  
  _HAssert(                                                           
    _Heap_Is_aligned( _Heap_Alloc_area_of_block( last_block ), page_size )
  );                                                                  
                                                                      
  return first_block_size;                                            
   46660:	6002           	bras 46664 <_Heap_Initialize+0xf8>          
    min_block_size,                                                   
    &first_block,                                                     
    &last_block                                                       
  );                                                                  
  if ( !area_ok ) {                                                   
    return 0;                                                         
   46662:	4280           	clrl %d0                                    
  _HAssert(                                                           
    _Heap_Is_aligned( _Heap_Alloc_area_of_block( last_block ), page_size )
  );                                                                  
                                                                      
  return first_block_size;                                            
}                                                                     
   46664:	4cee 043c ffe4 	moveml %fp@(-28),%d2-%d5/%a2                
   4666a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0005930c <_Heap_Resize_block>: void *alloc_begin_ptr, uintptr_t new_alloc_size, uintptr_t *old_size, uintptr_t *new_size ) {
   5930c:	4e56 ffe4      	linkw %fp,#-28                              <== NOT EXECUTED
   59310:	48d7 1c3c      	moveml %d2-%d5/%a2-%a4,%sp@                 <== NOT EXECUTED
   59314:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Align_down(                      
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  return value - (value % alignment);                                 
   59318:	2202           	movel %d2,%d1                               <== NOT EXECUTED
   5931a:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   5931c:	5188           	subql #8,%a0                                <== NOT EXECUTED
   5931e:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   59322:	282e 0010      	movel %fp@(16),%d4                          <== NOT EXECUTED
   59326:	286e 0014      	moveal %fp@(20),%a4                         <== NOT EXECUTED
   5932a:	266e 0018      	moveal %fp@(24),%a3                         <== NOT EXECUTED
   5932e:	4c6a 1000 0010 	remul %a2@(16),%d0,%d1                      <== NOT EXECUTED
                                                                      
  uintptr_t const alloc_begin = (uintptr_t) alloc_begin_ptr;          
                                                                      
  Heap_Block *const block = _Heap_Block_of_alloc_area( alloc_begin, page_size );
                                                                      
  *old_size = 0;                                                      
   59334:	4294           	clrl %a4@                                   <== NOT EXECUTED
  uintptr_t alloc_begin,                                              
  uintptr_t page_size                                                 
)                                                                     
{                                                                     
  return (Heap_Block *) (_Heap_Align_down( alloc_begin, page_size )   
    - HEAP_BLOCK_HEADER_SIZE);                                        
   59336:	91c0           	subal %d0,%a0                               <== NOT EXECUTED
  *new_size = 0;                                                      
   59338:	4293           	clrl %a3@                                   <== NOT EXECUTED
  const Heap_Control *heap,                                           
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block >= (uintptr_t) heap->first_block           
    && (uintptr_t) block <= (uintptr_t) heap->last_block;             
   5933a:	b1ea 0020      	cmpal %a2@(32),%a0                          <== NOT EXECUTED
   5933e:	6500 0096      	bcsw 593d6 <_Heap_Resize_block+0xca>        <== NOT EXECUTED
   59342:	b1ea 0024      	cmpal %a2@(36),%a0                          <== NOT EXECUTED
   59346:	6200 008e      	bhiw 593d6 <_Heap_Resize_block+0xca>        <== NOT EXECUTED
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   5934a:	70fe           	moveq #-2,%d0                               <== NOT EXECUTED
   5934c:	72fe           	moveq #-2,%d1                               <== NOT EXECUTED
  block->size_and_flag = size | flag;                                 
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE bool _Heap_Is_prev_used( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & HEAP_PREV_BLOCK_USED;                 
   5934e:	7a01           	moveq #1,%d5                                <== NOT EXECUTED
                                                                      
  uintptr_t const block_begin = (uintptr_t) block;                    
  uintptr_t block_size = _Heap_Block_size( block );                   
  uintptr_t block_end = block_begin + block_size;                     
                                                                      
  uintptr_t alloc_size = block_end - alloc_begin + HEAP_ALLOC_BONUS;  
   59350:	7604           	moveq #4,%d3                                <== NOT EXECUTED
   59352:	9682           	subl %d2,%d3                                <== NOT EXECUTED
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   59354:	c0a8 0004      	andl %a0@(4),%d0                            <== NOT EXECUTED
{                                                                     
  Heap_Statistics *const stats = &heap->stats;                        
                                                                      
  uintptr_t const block_begin = (uintptr_t) block;                    
  uintptr_t block_size = _Heap_Block_size( block );                   
  uintptr_t block_end = block_begin + block_size;                     
   59358:	43f0 0800      	lea %a0@(00000000,%d0:l),%a1                <== NOT EXECUTED
                                                                      
  uintptr_t alloc_size = block_end - alloc_begin + HEAP_ALLOC_BONUS;  
   5935c:	d689           	addl %a1,%d3                                <== NOT EXECUTED
   5935e:	c2a9 0004      	andl %a1@(4),%d1                            <== NOT EXECUTED
  block->size_and_flag = size | flag;                                 
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE bool _Heap_Is_prev_used( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & HEAP_PREV_BLOCK_USED;                 
   59362:	cab1 1804      	andl %a1@(00000004,%d1:l),%d5               <== NOT EXECUTED
  bool next_block_is_free = _Heap_Is_free( next_block );;             
                                                                      
  _HAssert( _Heap_Is_block_in_heap( heap, next_block ) );             
  _HAssert( _Heap_Is_prev_used( next_block ) );                       
                                                                      
  *old_size = alloc_size;                                             
   59366:	2883           	movel %d3,%a4@                              <== NOT EXECUTED
                                                                      
RTEMS_INLINE_ROUTINE bool _Heap_Is_free(                              
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return !_Heap_Is_used( block );                                     
   59368:	4a85           	tstl %d5                                    <== NOT EXECUTED
   5936a:	57c5           	seq %d5                                     <== NOT EXECUTED
   5936c:	4485           	negl %d5                                    <== NOT EXECUTED
                                                                      
  if ( next_block_is_free ) {                                         
   5936e:	4a05           	tstb %d5                                    <== NOT EXECUTED
   59370:	6704           	beqs 59376 <_Heap_Resize_block+0x6a>        <== NOT EXECUTED
    block_size += next_block_size;                                    
   59372:	d081           	addl %d1,%d0                                <== NOT EXECUTED
    alloc_size += next_block_size;                                    
   59374:	d681           	addl %d1,%d3                                <== NOT EXECUTED
  }                                                                   
                                                                      
  if ( new_alloc_size > alloc_size ) {                                
   59376:	b684           	cmpl %d4,%d3                                <== NOT EXECUTED
   59378:	6558           	bcss 593d2 <_Heap_Resize_block+0xc6>        <== NOT EXECUTED
    return HEAP_RESIZE_UNSATISFIED;                                   
  }                                                                   
                                                                      
  if ( next_block_is_free ) {                                         
   5937a:	4a05           	tstb %d5                                    <== NOT EXECUTED
   5937c:	672a           	beqs 593a8 <_Heap_Resize_block+0x9c>        <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Heap_Block_set_size(                       
  Heap_Block *block,                                                  
  uintptr_t size                                                      
)                                                                     
{                                                                     
  uintptr_t flag = block->size_and_flag & HEAP_PREV_BLOCK_USED;       
   5937e:	7601           	moveq #1,%d3                                <== NOT EXECUTED
   59380:	c6a8 0004      	andl %a0@(4),%d3                            <== NOT EXECUTED
  return _Heap_Free_list_tail(heap)->prev;                            
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE void _Heap_Free_list_remove( Heap_Block *block ) 
{                                                                     
  Heap_Block *next = block->next;                                     
   59384:	2869 0008      	moveal %a1@(8),%a4                          <== NOT EXECUTED
  uintptr_t size                                                      
)                                                                     
{                                                                     
  uintptr_t flag = block->size_and_flag & HEAP_PREV_BLOCK_USED;       
                                                                      
  block->size_and_flag = size | flag;                                 
   59388:	8680           	orl %d0,%d3                                 <== NOT EXECUTED
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE void _Heap_Free_list_remove( Heap_Block *block ) 
{                                                                     
  Heap_Block *next = block->next;                                     
  Heap_Block *prev = block->prev;                                     
   5938a:	2269 000c      	moveal %a1@(12),%a1                         <== NOT EXECUTED
  uintptr_t size                                                      
)                                                                     
{                                                                     
  uintptr_t flag = block->size_and_flag & HEAP_PREV_BLOCK_USED;       
                                                                      
  block->size_and_flag = size | flag;                                 
   5938e:	2143 0004      	movel %d3,%a0@(4)                           <== NOT EXECUTED
    _Heap_Block_set_size( block, block_size );                        
                                                                      
    _Heap_Free_list_remove( next_block );                             
                                                                      
    next_block = _Heap_Block_at( block, block_size );                 
    next_block->size_and_flag |= HEAP_PREV_BLOCK_USED;                
   59392:	7601           	moveq #1,%d3                                <== NOT EXECUTED
   59394:	87b0 0804      	orl %d3,%a0@(00000004,%d0:l)                <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Heap_Free_list_remove( Heap_Block *block ) 
{                                                                     
  Heap_Block *next = block->next;                                     
  Heap_Block *prev = block->prev;                                     
                                                                      
  prev->next = next;                                                  
   59398:	234c 0008      	movel %a4,%a1@(8)                           <== NOT EXECUTED
  next->prev = prev;                                                  
   5939c:	2949 000c      	movel %a1,%a4@(12)                          <== NOT EXECUTED
                                                                      
    /* Statistics */                                                  
    --stats->free_blocks;                                             
   593a0:	53aa 0038      	subql #1,%a2@(56)                           <== NOT EXECUTED
    stats->free_size -= next_block_size;                              
   593a4:	93aa 0030      	subl %d1,%a2@(48)                           <== NOT EXECUTED
  }                                                                   
                                                                      
  block = _Heap_Block_allocate( heap, block, alloc_begin, new_alloc_size );
   593a8:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   593aa:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   593ac:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   593ae:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   593b0:	4eb9 0004 666e 	jsr 4666e <_Heap_Block_allocate>            <== NOT EXECUTED
  block_size = _Heap_Block_size( block );                             
  next_block = _Heap_Block_at( block, block_size );                   
  *new_size = (uintptr_t) next_block - alloc_begin + HEAP_ALLOC_BONUS;
                                                                      
  /* Statistics */                                                    
  ++stats->resizes;                                                   
   593b6:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   593ba:	72fe           	moveq #-2,%d1                               <== NOT EXECUTED
   593bc:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
                                                                      
  return HEAP_RESIZE_SUCCESSFUL;                                      
   593be:	4280           	clrl %d0                                    <== NOT EXECUTED
   593c0:	c2a8 0004      	andl %a0@(4),%d1                            <== NOT EXECUTED
                                                                      
  block = _Heap_Block_allocate( heap, block, alloc_begin, new_alloc_size );
                                                                      
  block_size = _Heap_Block_size( block );                             
  next_block = _Heap_Block_at( block, block_size );                   
  *new_size = (uintptr_t) next_block - alloc_begin + HEAP_ALLOC_BONUS;
   593c4:	91c2           	subal %d2,%a0                               <== NOT EXECUTED
   593c6:	41f0 1804      	lea %a0@(00000004,%d1:l),%a0                <== NOT EXECUTED
   593ca:	2688           	movel %a0,%a3@                              <== NOT EXECUTED
                                                                      
  /* Statistics */                                                    
  ++stats->resizes;                                                   
   593cc:	52aa 0054      	addql #1,%a2@(84)                           <== NOT EXECUTED
   593d0:	6006           	bras 593d8 <_Heap_Resize_block+0xcc>        <== NOT EXECUTED
    block_size += next_block_size;                                    
    alloc_size += next_block_size;                                    
  }                                                                   
                                                                      
  if ( new_alloc_size > alloc_size ) {                                
    return HEAP_RESIZE_UNSATISFIED;                                   
   593d2:	7001           	moveq #1,%d0                                <== NOT EXECUTED
  *new_size = 0;                                                      
                                                                      
  _Heap_Protection_block_check( heap, block );                        
                                                                      
  if ( _Heap_Is_block_in_heap( heap, block ) ) {                      
    return _Heap_Resize_block_checked(                                
   593d4:	6002           	bras 593d8 <_Heap_Resize_block+0xcc>        <== NOT EXECUTED
      new_alloc_size,                                                 
      old_size,                                                       
      new_size                                                        
    );                                                                
  } else {                                                            
    return HEAP_RESIZE_FATAL_ERROR;                                   
   593d6:	7002           	moveq #2,%d0                                <== NOT EXECUTED
  }                                                                   
}                                                                     
   593d8:	4cee 1c3c ffe4 	moveml %fp@(-28),%d2-%d5/%a2-%a4            <== NOT EXECUTED
   593de:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

000593e4 <_Heap_Size_of_alloc_area>: bool _Heap_Size_of_alloc_area( Heap_Control *heap, void *alloc_begin_ptr, uintptr_t *alloc_size ) {
   593e4:	4e56 0000      	linkw %fp,#0                                
   593e8:	202e 000c      	movel %fp@(12),%d0                          
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Align_down(                      
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  return value - (value % alignment);                                 
   593ec:	2040           	moveal %d0,%a0                              
   593ee:	5188           	subql #8,%a0                                
   593f0:	226e 0008      	moveal %fp@(8),%a1                          
   593f4:	2f02           	movel %d2,%sp@-                             
   593f6:	2400           	movel %d0,%d2                               
   593f8:	4c69 2001 0010 	remul %a1@(16),%d1,%d2                      
RTEMS_INLINE_ROUTINE bool _Heap_Is_block_in_heap(                     
  const Heap_Control *heap,                                           
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block >= (uintptr_t) heap->first_block           
   593fe:	2429 0020      	movel %a1@(32),%d2                          
  uintptr_t alloc_begin,                                              
  uintptr_t page_size                                                 
)                                                                     
{                                                                     
  return (Heap_Block *) (_Heap_Align_down( alloc_begin, page_size )   
    - HEAP_BLOCK_HEADER_SIZE);                                        
   59402:	91c1           	subal %d1,%a0                               
  const Heap_Control *heap,                                           
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block >= (uintptr_t) heap->first_block           
    && (uintptr_t) block <= (uintptr_t) heap->last_block;             
   59404:	b488           	cmpl %a0,%d2                                
   59406:	620c           	bhis 59414 <_Heap_Size_of_alloc_area+0x30>  <== NEVER TAKEN
   59408:	b1e9 0024      	cmpal %a1@(36),%a0                          
   5940c:	53c1           	sls %d1                                     
   5940e:	49c1           	extbl %d1                                   
   59410:	4481           	negl %d1                                    
   59412:	6002           	bras 59416 <_Heap_Size_of_alloc_area+0x32>  
   59414:	4281           	clrl %d1                                    <== NOT EXECUTED
  uintptr_t const alloc_begin = (uintptr_t) alloc_begin_ptr;          
  Heap_Block *block = _Heap_Block_of_alloc_area( alloc_begin, page_size );
  Heap_Block *next_block = NULL;                                      
  uintptr_t block_size = 0;                                           
                                                                      
  if ( !_Heap_Is_block_in_heap( heap, block ) ) {                     
   59416:	4a01           	tstb %d1                                    
   59418:	6738           	beqs 59452 <_Heap_Size_of_alloc_area+0x6e>  <== NEVER TAKEN
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   5941a:	72fe           	moveq #-2,%d1                               
   5941c:	c2a8 0004      	andl %a0@(4),%d1                            
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(                      
  const Heap_Block *block,                                            
  uintptr_t offset                                                    
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block + offset);                 
   59420:	d1c1           	addal %d1,%a0                               
  const Heap_Control *heap,                                           
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block >= (uintptr_t) heap->first_block           
    && (uintptr_t) block <= (uintptr_t) heap->last_block;             
   59422:	b488           	cmpl %a0,%d2                                
   59424:	620c           	bhis 59432 <_Heap_Size_of_alloc_area+0x4e>  <== NEVER TAKEN
   59426:	b1e9 0024      	cmpal %a1@(36),%a0                          
   5942a:	53c1           	sls %d1                                     
   5942c:	49c1           	extbl %d1                                   
   5942e:	4481           	negl %d1                                    
   59430:	6002           	bras 59434 <_Heap_Size_of_alloc_area+0x50>  
   59432:	4281           	clrl %d1                                    <== NOT EXECUTED
  }                                                                   
                                                                      
  block_size = _Heap_Block_size( block );                             
  next_block = _Heap_Block_at( block, block_size );                   
                                                                      
  if (                                                                
   59434:	4a01           	tstb %d1                                    
   59436:	671a           	beqs 59452 <_Heap_Size_of_alloc_area+0x6e>  <== NEVER TAKEN
  block->size_and_flag = size | flag;                                 
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE bool _Heap_Is_prev_used( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & HEAP_PREV_BLOCK_USED;                 
   59438:	7201           	moveq #1,%d1                                
   5943a:	c2a8 0004      	andl %a0@(4),%d1                            
    !_Heap_Is_block_in_heap( heap, next_block )                       
      || !_Heap_Is_prev_used( next_block )                            
   5943e:	6712           	beqs 59452 <_Heap_Size_of_alloc_area+0x6e>  <== NEVER TAKEN
  ) {                                                                 
    return false;                                                     
  }                                                                   
                                                                      
  *alloc_size = (uintptr_t) next_block + HEAP_ALLOC_BONUS - alloc_begin;
   59440:	7204           	moveq #4,%d1                                
   59442:	9280           	subl %d0,%d1                                
   59444:	2001           	movel %d1,%d0                               
   59446:	d088           	addl %a0,%d0                                
   59448:	226e 0010      	moveal %fp@(16),%a1                         
   5944c:	2280           	movel %d0,%a1@                              
                                                                      
  return true;                                                        
   5944e:	7001           	moveq #1,%d0                                
   59450:	6002           	bras 59454 <_Heap_Size_of_alloc_area+0x70>  
                                                                      
  if (                                                                
    !_Heap_Is_block_in_heap( heap, next_block )                       
      || !_Heap_Is_prev_used( next_block )                            
  ) {                                                                 
    return false;                                                     
   59452:	4200           	clrb %d0                                    <== NOT EXECUTED
  }                                                                   
                                                                      
  *alloc_size = (uintptr_t) next_block + HEAP_ALLOC_BONUS - alloc_begin;
                                                                      
  return true;                                                        
}                                                                     
   59454:	241f           	movel %sp@+,%d2                             
   59456:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

0004714a <_Heap_Walk>: bool _Heap_Walk( Heap_Control *heap, int source, bool dump ) {
   4714a:	4e56 ffd0      	linkw %fp,#-48                              <== NOT EXECUTED
   4714e:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 <== NOT EXECUTED
   47152:	266e 0008      	moveal %fp@(8),%a3                          <== NOT EXECUTED
  uintptr_t const min_block_size = heap->min_block_size;              
  Heap_Block *const first_block = heap->first_block;                  
  Heap_Block *const last_block = heap->last_block;                    
  Heap_Block *block = first_block;                                    
  Heap_Walk_printer printer = dump ?                                  
    _Heap_Walk_print : _Heap_Walk_print_nothing;                      
   47156:	45fa ffac      	lea %pc@(47104 <_Heap_Walk_print_nothing>),%a2<== NOT EXECUTED
bool _Heap_Walk(                                                      
  Heap_Control *heap,                                                 
  int source,                                                         
  bool dump                                                           
)                                                                     
{                                                                     
   4715a:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
  uintptr_t const page_size = heap->page_size;                        
   4715e:	282b 0010      	movel %a3@(16),%d4                          <== NOT EXECUTED
  uintptr_t const min_block_size = heap->min_block_size;              
   47162:	2a2b 0014      	movel %a3@(20),%d5                          <== NOT EXECUTED
  Heap_Block *const first_block = heap->first_block;                  
   47166:	2c2b 0020      	movel %a3@(32),%d6                          <== NOT EXECUTED
  Heap_Block *const last_block = heap->last_block;                    
   4716a:	2e2b 0024      	movel %a3@(36),%d7                          <== NOT EXECUTED
  Heap_Block *block = first_block;                                    
  Heap_Walk_printer printer = dump ?                                  
    _Heap_Walk_print : _Heap_Walk_print_nothing;                      
   4716e:	4a2e 0013      	tstb %fp@(19)                               <== NOT EXECUTED
   47172:	6704           	beqs 47178 <_Heap_Walk+0x2e>                <== NOT EXECUTED
   47174:	45fa ff96      	lea %pc@(4710c <_Heap_Walk_print>),%a2      <== NOT EXECUTED
                                                                      
  if ( !_System_state_Is_up( _System_state_Get() ) ) {                
   47178:	7003           	moveq #3,%d0                                <== NOT EXECUTED
   4717a:	b0b9 0005 eb88 	cmpl 5eb88 <_System_state_Current>,%d0      <== NOT EXECUTED
   47180:	6600 02fc      	bnew 4747e <_Heap_Walk+0x334>               <== NOT EXECUTED
  Heap_Block *const first_free_block = _Heap_Free_list_first( heap ); 
  Heap_Block *const last_free_block = _Heap_Free_list_last( heap );   
  Heap_Block *const first_block = heap->first_block;                  
  Heap_Block *const last_block = heap->last_block;                    
                                                                      
  (*printer)(                                                         
   47184:	2f2b 000c      	movel %a3@(12),%sp@-                        <== NOT EXECUTED
   47188:	2f2b 0008      	movel %a3@(8),%sp@-                         <== NOT EXECUTED
   4718c:	2f07           	movel %d7,%sp@-                             <== NOT EXECUTED
   4718e:	2f06           	movel %d6,%sp@-                             <== NOT EXECUTED
   47190:	2f2b 001c      	movel %a3@(28),%sp@-                        <== NOT EXECUTED
   47194:	2f2b 0018      	movel %a3@(24),%sp@-                        <== NOT EXECUTED
   47198:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   4719a:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4719c:	4879 0005 b069 	pea 5b069 <C.0.4108+0x57>                   <== NOT EXECUTED
   471a2:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   471a4:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   471a6:	4e92           	jsr %a2@                                    <== NOT EXECUTED
    heap->area_begin, heap->area_end,                                 
    first_block, last_block,                                          
    first_free_block, last_free_block                                 
  );                                                                  
                                                                      
  if ( page_size == 0 ) {                                             
   471a8:	4fef 002c      	lea %sp@(44),%sp                            <== NOT EXECUTED
   471ac:	4a84           	tstl %d4                                    <== NOT EXECUTED
   471ae:	6608           	bnes 471b8 <_Heap_Walk+0x6e>                <== NOT EXECUTED
    (*printer)( source, true, "page size is zero\n" );                
   471b0:	4879 0005 b0fa 	pea 5b0fa <C.0.4108+0xe8>                   <== NOT EXECUTED
   471b6:	6050           	bras 47208 <_Heap_Walk+0xbe>                <== NOT EXECUTED
)                                                                     
{                                                                     
#if (CPU_ALIGNMENT == 0)                                              
    return true;                                                      
#else                                                                 
    return (((uintptr_t)address % CPU_ALIGNMENT) == 0);               
   471b8:	7003           	moveq #3,%d0                                <== NOT EXECUTED
   471ba:	c084           	andl %d4,%d0                                <== NOT EXECUTED
                                                                      
    return false;                                                     
  }                                                                   
                                                                      
  if ( !_Addresses_Is_aligned( (void *) page_size ) ) {               
   471bc:	670c           	beqs 471ca <_Heap_Walk+0x80>                <== NOT EXECUTED
    (*printer)(                                                       
   471be:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   471c0:	4879 0005 b10d 	pea 5b10d <C.0.4108+0xfb>                   <== NOT EXECUTED
   471c6:	6000 02ca      	braw 47492 <_Heap_Walk+0x348>               <== NOT EXECUTED
RTEMS_INLINE_ROUTINE bool _Heap_Is_aligned(                           
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  return (value % alignment) == 0;                                    
   471ca:	2205           	movel %d5,%d1                               <== NOT EXECUTED
   471cc:	4c44 1000      	remul %d4,%d0,%d1                           <== NOT EXECUTED
    );                                                                
                                                                      
    return false;                                                     
  }                                                                   
                                                                      
  if ( !_Heap_Is_aligned( min_block_size, page_size ) ) {             
   471d0:	4a80           	tstl %d0                                    <== NOT EXECUTED
   471d2:	670c           	beqs 471e0 <_Heap_Walk+0x96>                <== NOT EXECUTED
    (*printer)(                                                       
   471d4:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   471d6:	4879 0005 b12b 	pea 5b12b <C.0.4108+0x119>                  <== NOT EXECUTED
   471dc:	6000 02b4      	braw 47492 <_Heap_Walk+0x348>               <== NOT EXECUTED
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Alloc_area_of_block(             
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block + HEAP_BLOCK_HEADER_SIZE;                  
   471e0:	2006           	movel %d6,%d0                               <== NOT EXECUTED
   471e2:	5080           	addql #8,%d0                                <== NOT EXECUTED
RTEMS_INLINE_ROUTINE bool _Heap_Is_aligned(                           
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  return (value % alignment) == 0;                                    
   471e4:	4c44 0001      	remul %d4,%d1,%d0                           <== NOT EXECUTED
    );                                                                
                                                                      
    return false;                                                     
  }                                                                   
                                                                      
  if (                                                                
   471e8:	4a81           	tstl %d1                                    <== NOT EXECUTED
   471ea:	670c           	beqs 471f8 <_Heap_Walk+0xae>                <== NOT EXECUTED
    !_Heap_Is_aligned( _Heap_Alloc_area_of_block( first_block ), page_size )
  ) {                                                                 
    (*printer)(                                                       
   471ec:	2f06           	movel %d6,%sp@-                             <== NOT EXECUTED
   471ee:	4879 0005 b14f 	pea 5b14f <C.0.4108+0x13d>                  <== NOT EXECUTED
   471f4:	6000 029c      	braw 47492 <_Heap_Walk+0x348>               <== NOT EXECUTED
  block->size_and_flag = size | flag;                                 
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE bool _Heap_Is_prev_used( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & HEAP_PREV_BLOCK_USED;                 
   471f8:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   471fa:	2046           	moveal %d6,%a0                              <== NOT EXECUTED
   471fc:	c0a8 0004      	andl %a0@(4),%d0                            <== NOT EXECUTED
    );                                                                
                                                                      
    return false;                                                     
  }                                                                   
                                                                      
  if ( !_Heap_Is_prev_used( first_block ) ) {                         
   47200:	6616           	bnes 47218 <_Heap_Walk+0xce>                <== NOT EXECUTED
    (*printer)(                                                       
   47202:	4879 0005 b180 	pea 5b180 <C.0.4108+0x16e>                  <== NOT EXECUTED
   47208:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   4720c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4720e:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   47210:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   47214:	6000 00ba      	braw 472d0 <_Heap_Walk+0x186>               <== NOT EXECUTED
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   47218:	70fe           	moveq #-2,%d0                               <== NOT EXECUTED
   4721a:	2047           	moveal %d7,%a0                              <== NOT EXECUTED
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(                      
  const Heap_Block *block,                                            
  uintptr_t offset                                                    
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block + offset);                 
   4721c:	2847           	moveal %d7,%a4                              <== NOT EXECUTED
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   4721e:	c0a8 0004      	andl %a0@(4),%d0                            <== NOT EXECUTED
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(                      
  const Heap_Block *block,                                            
  uintptr_t offset                                                    
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block + offset);                 
   47222:	d9c0           	addal %d0,%a4                               <== NOT EXECUTED
  block->size_and_flag = size | flag;                                 
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE bool _Heap_Is_prev_used( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & HEAP_PREV_BLOCK_USED;                 
   47224:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   47226:	c0ac 0004      	andl %a4@(4),%d0                            <== NOT EXECUTED
    );                                                                
                                                                      
    return false;                                                     
  }                                                                   
                                                                      
  if ( _Heap_Is_free( last_block ) ) {                                
   4722a:	6608           	bnes 47234 <_Heap_Walk+0xea>                <== NOT EXECUTED
    (*printer)(                                                       
   4722c:	4879 0005 b1ae 	pea 5b1ae <C.0.4108+0x19c>                  <== NOT EXECUTED
   47232:	60d4           	bras 47208 <_Heap_Walk+0xbe>                <== NOT EXECUTED
    );                                                                
                                                                      
    return false;                                                     
  }                                                                   
                                                                      
  if (                                                                
   47234:	bc8c           	cmpl %a4,%d6                                <== NOT EXECUTED
   47236:	6708           	beqs 47240 <_Heap_Walk+0xf6>                <== NOT EXECUTED
    _Heap_Block_at( last_block, _Heap_Block_size( last_block ) ) != first_block
  ) {                                                                 
    (*printer)(                                                       
   47238:	4879 0005 b1c3 	pea 5b1c3 <C.0.4108+0x1b1>                  <== NOT EXECUTED
   4723e:	60c8           	bras 47208 <_Heap_Walk+0xbe>                <== NOT EXECUTED
  int source,                                                         
  Heap_Walk_printer printer,                                          
  Heap_Control *heap                                                  
)                                                                     
{                                                                     
  uintptr_t const page_size = heap->page_size;                        
   47240:	262b 0010      	movel %a3@(16),%d3                          <== NOT EXECUTED
  const Heap_Block *const free_list_tail = _Heap_Free_list_tail( heap );
   47244:	220b           	movel %a3,%d1                               <== NOT EXECUTED
                                                                      
    block = next_block;                                               
  } while ( block != first_block );                                   
                                                                      
  return true;                                                        
}                                                                     
   47246:	206b 0008      	moveal %a3@(8),%a0                          <== NOT EXECUTED
   4724a:	2d44 fff8      	movel %d4,%fp@(-8)                          <== NOT EXECUTED
   4724e:	2d43 fffc      	movel %d3,%fp@(-4)                          <== NOT EXECUTED
   47252:	6000 0088      	braw 472dc <_Heap_Walk+0x192>               <== NOT EXECUTED
  const Heap_Control *heap,                                           
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block >= (uintptr_t) heap->first_block           
    && (uintptr_t) block <= (uintptr_t) heap->last_block;             
   47256:	b1eb 0020      	cmpal %a3@(32),%a0                          <== NOT EXECUTED
   4725a:	650c           	bcss 47268 <_Heap_Walk+0x11e>               <== NOT EXECUTED
   4725c:	b1eb 0024      	cmpal %a3@(36),%a0                          <== NOT EXECUTED
   47260:	53c0           	sls %d0                                     <== NOT EXECUTED
   47262:	49c0           	extbl %d0                                   <== NOT EXECUTED
   47264:	4480           	negl %d0                                    <== NOT EXECUTED
   47266:	6002           	bras 4726a <_Heap_Walk+0x120>               <== NOT EXECUTED
   47268:	4280           	clrl %d0                                    <== NOT EXECUTED
  const Heap_Block *const first_free_block = _Heap_Free_list_first( heap );
  const Heap_Block *prev_block = free_list_tail;                      
  const Heap_Block *free_block = first_free_block;                    
                                                                      
  while ( free_block != free_list_tail ) {                            
    if ( !_Heap_Is_block_in_heap( heap, free_block ) ) {              
   4726a:	4a00           	tstb %d0                                    <== NOT EXECUTED
   4726c:	660c           	bnes 4727a <_Heap_Walk+0x130>               <== NOT EXECUTED
      (*printer)(                                                     
   4726e:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   47270:	4879 0005 b1f2 	pea 5b1f2 <C.0.4108+0x1e0>                  <== NOT EXECUTED
   47276:	6000 021a      	braw 47492 <_Heap_Walk+0x348>               <== NOT EXECUTED
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Alloc_area_of_block(             
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block + HEAP_BLOCK_HEADER_SIZE;                  
   4727a:	4be8 0008      	lea %a0@(8),%a5                             <== NOT EXECUTED
RTEMS_INLINE_ROUTINE bool _Heap_Is_aligned(                           
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  return (value % alignment) == 0;                                    
   4727e:	200d           	movel %a5,%d0                               <== NOT EXECUTED
   47280:	262e fffc      	movel %fp@(-4),%d3                          <== NOT EXECUTED
   47284:	4c43 0004      	remul %d3,%d4,%d0                           <== NOT EXECUTED
      );                                                              
                                                                      
      return false;                                                   
    }                                                                 
                                                                      
    if (                                                              
   47288:	4a84           	tstl %d4                                    <== NOT EXECUTED
   4728a:	670c           	beqs 47298 <_Heap_Walk+0x14e>               <== NOT EXECUTED
      !_Heap_Is_aligned( _Heap_Alloc_area_of_block( free_block ), page_size )
    ) {                                                               
      (*printer)(                                                     
   4728c:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   4728e:	4879 0005 b212 	pea 5b212 <C.0.4108+0x200>                  <== NOT EXECUTED
   47294:	6000 01fc      	braw 47492 <_Heap_Walk+0x348>               <== NOT EXECUTED
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   47298:	70fe           	moveq #-2,%d0                               <== NOT EXECUTED
  block->size_and_flag = size | flag;                                 
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE bool _Heap_Is_prev_used( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & HEAP_PREV_BLOCK_USED;                 
   4729a:	7601           	moveq #1,%d3                                <== NOT EXECUTED
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   4729c:	c0a8 0004      	andl %a0@(4),%d0                            <== NOT EXECUTED
  block->size_and_flag = size | flag;                                 
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE bool _Heap_Is_prev_used( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & HEAP_PREV_BLOCK_USED;                 
   472a0:	c6b0 0804      	andl %a0@(00000004,%d0:l),%d3               <== NOT EXECUTED
      );                                                              
                                                                      
      return false;                                                   
    }                                                                 
                                                                      
    if ( _Heap_Is_used( free_block ) ) {                              
   472a4:	670c           	beqs 472b2 <_Heap_Walk+0x168>               <== NOT EXECUTED
      (*printer)(                                                     
   472a6:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   472a8:	4879 0005 b242 	pea 5b242 <C.0.4108+0x230>                  <== NOT EXECUTED
   472ae:	6000 01e2      	braw 47492 <_Heap_Walk+0x348>               <== NOT EXECUTED
      );                                                              
                                                                      
      return false;                                                   
    }                                                                 
                                                                      
    if ( free_block->prev != prev_block ) {                           
   472b2:	2028 000c      	movel %a0@(12),%d0                          <== NOT EXECUTED
   472b6:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   472b8:	671c           	beqs 472d6 <_Heap_Walk+0x18c>               <== NOT EXECUTED
      (*printer)(                                                     
   472ba:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   472bc:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   472be:	4879 0005 b25e 	pea 5b25e <C.0.4108+0x24c>                  <== NOT EXECUTED
   472c4:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   472c8:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   472ca:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   472cc:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
  if ( !_System_state_Is_up( _System_state_Get() ) ) {                
    return true;                                                      
  }                                                                   
                                                                      
  if ( !_Heap_Walk_check_control( source, printer, heap ) ) {         
    return false;                                                     
   472d0:	4200           	clrb %d0                                    <== NOT EXECUTED
   472d2:	6000 01ac      	braw 47480 <_Heap_Walk+0x336>               <== NOT EXECUTED
                                                                      
      return false;                                                   
    }                                                                 
                                                                      
    prev_block = free_block;                                          
    free_block = free_block->next;                                    
   472d6:	2208           	movel %a0,%d1                               <== NOT EXECUTED
   472d8:	2068 0008      	moveal %a0@(8),%a0                          <== NOT EXECUTED
  const Heap_Block *const free_list_tail = _Heap_Free_list_tail( heap );
  const Heap_Block *const first_free_block = _Heap_Free_list_first( heap );
  const Heap_Block *prev_block = free_list_tail;                      
  const Heap_Block *free_block = first_free_block;                    
                                                                      
  while ( free_block != free_list_tail ) {                            
   472dc:	b7c8           	cmpal %a0,%a3                               <== NOT EXECUTED
   472de:	6600 ff76      	bnew 47256 <_Heap_Walk+0x10c>               <== NOT EXECUTED
   472e2:	282e fff8      	movel %fp@(-8),%d4                          <== NOT EXECUTED
   472e6:	6002           	bras 472ea <_Heap_Walk+0x1a0>               <== NOT EXECUTED
        block->prev_size                                              
      );                                                              
    }                                                                 
                                                                      
    block = next_block;                                               
  } while ( block != first_block );                                   
   472e8:	284d           	moveal %a5,%a4                              <== NOT EXECUTED
                                                                      
  return true;                                                        
}                                                                     
   472ea:	202c 0004      	movel %a4@(4),%d0                           <== NOT EXECUTED
    - HEAP_BLOCK_HEADER_SIZE);                                        
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Block_size( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & ~HEAP_PREV_BLOCK_USED;                
   472ee:	76fe           	moveq #-2,%d3                               <== NOT EXECUTED
   472f0:	c680           	andl %d0,%d3                                <== NOT EXECUTED
   472f2:	2d40 fffc      	movel %d0,%fp@(-4)                          <== NOT EXECUTED
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(                      
  const Heap_Block *block,                                            
  uintptr_t offset                                                    
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block + offset);                 
   472f6:	4bf4 3800      	lea %a4@(00000000,%d3:l),%a5                <== NOT EXECUTED
  const Heap_Control *heap,                                           
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block >= (uintptr_t) heap->first_block           
    && (uintptr_t) block <= (uintptr_t) heap->last_block;             
   472fa:	bbeb 0020      	cmpal %a3@(32),%a5                          <== NOT EXECUTED
   472fe:	650c           	bcss 4730c <_Heap_Walk+0x1c2>               <== NOT EXECUTED
   47300:	bbeb 0024      	cmpal %a3@(36),%a5                          <== NOT EXECUTED
   47304:	53c0           	sls %d0                                     <== NOT EXECUTED
   47306:	49c0           	extbl %d0                                   <== NOT EXECUTED
   47308:	4480           	negl %d0                                    <== NOT EXECUTED
   4730a:	6002           	bras 4730e <_Heap_Walk+0x1c4>               <== NOT EXECUTED
   4730c:	4280           	clrl %d0                                    <== NOT EXECUTED
    bool const prev_used = _Heap_Is_prev_used( block );               
    Heap_Block *const next_block = _Heap_Block_at( block, block_size );
    uintptr_t const next_block_begin = (uintptr_t) next_block;        
    bool const is_not_last_block = block != last_block;               
                                                                      
    if ( !_Heap_Is_block_in_heap( heap, next_block ) ) {              
   4730e:	4a00           	tstb %d0                                    <== NOT EXECUTED
   47310:	660c           	bnes 4731e <_Heap_Walk+0x1d4>               <== NOT EXECUTED
      (*printer)(                                                     
   47312:	2f0d           	movel %a5,%sp@-                             <== NOT EXECUTED
   47314:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   47316:	4879 0005 b290 	pea 5b290 <C.0.4108+0x27e>                  <== NOT EXECUTED
   4731c:	60a6           	bras 472c4 <_Heap_Walk+0x17a>               <== NOT EXECUTED
    uintptr_t const block_begin = (uintptr_t) block;                  
    uintptr_t const block_size = _Heap_Block_size( block );           
    bool const prev_used = _Heap_Is_prev_used( block );               
    Heap_Block *const next_block = _Heap_Block_at( block, block_size );
    uintptr_t const next_block_begin = (uintptr_t) next_block;        
    bool const is_not_last_block = block != last_block;               
   4731e:	be8c           	cmpl %a4,%d7                                <== NOT EXECUTED
   47320:	56c0           	sne %d0                                     <== NOT EXECUTED
   47322:	2200           	movel %d0,%d1                               <== NOT EXECUTED
   47324:	4481           	negl %d1                                    <== NOT EXECUTED
RTEMS_INLINE_ROUTINE bool _Heap_Is_aligned(                           
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  return (value % alignment) == 0;                                    
   47326:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   47328:	1d41 fffb      	moveb %d1,%fp@(-5)                          <== NOT EXECUTED
   4732c:	4c44 0001      	remul %d4,%d1,%d0                           <== NOT EXECUTED
      );                                                              
                                                                      
      return false;                                                   
    }                                                                 
                                                                      
    if ( !_Heap_Is_aligned( block_size, page_size ) && is_not_last_block ) {
   47330:	4a81           	tstl %d1                                    <== NOT EXECUTED
   47332:	6714           	beqs 47348 <_Heap_Walk+0x1fe>               <== NOT EXECUTED
   47334:	4a2e fffb      	tstb %fp@(-5)                               <== NOT EXECUTED
   47338:	670e           	beqs 47348 <_Heap_Walk+0x1fe>               <== NOT EXECUTED
      (*printer)(                                                     
   4733a:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4733c:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   4733e:	4879 0005 b2bd 	pea 5b2bd <C.0.4108+0x2ab>                  <== NOT EXECUTED
   47344:	6000 ff7e      	braw 472c4 <_Heap_Walk+0x17a>               <== NOT EXECUTED
      );                                                              
                                                                      
      return false;                                                   
    }                                                                 
                                                                      
    if ( block_size < min_block_size && is_not_last_block ) {         
   47348:	ba83           	cmpl %d3,%d5                                <== NOT EXECUTED
   4734a:	6322           	blss 4736e <_Heap_Walk+0x224>               <== NOT EXECUTED
   4734c:	4a2e fffb      	tstb %fp@(-5)                               <== NOT EXECUTED
   47350:	671c           	beqs 4736e <_Heap_Walk+0x224>               <== NOT EXECUTED
      (*printer)(                                                     
   47352:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   47354:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   47356:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   47358:	4879 0005 b2eb 	pea 5b2eb <C.0.4108+0x2d9>                  <== NOT EXECUTED
   4735e:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   47362:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   47364:	4e92           	jsr %a2@                                    <== NOT EXECUTED
        block,                                                        
        block_size,                                                   
        min_block_size                                                
      );                                                              
                                                                      
      return false;                                                   
   47366:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
   4736a:	6000 ff64      	braw 472d0 <_Heap_Walk+0x186>               <== NOT EXECUTED
    }                                                                 
                                                                      
    if ( next_block_begin <= block_begin && is_not_last_block ) {     
   4736e:	b9cd           	cmpal %a5,%a4                               <== NOT EXECUTED
   47370:	6514           	bcss 47386 <_Heap_Walk+0x23c>               <== NOT EXECUTED
   47372:	4a2e fffb      	tstb %fp@(-5)                               <== NOT EXECUTED
   47376:	670e           	beqs 47386 <_Heap_Walk+0x23c>               <== NOT EXECUTED
      (*printer)(                                                     
   47378:	2f0d           	movel %a5,%sp@-                             <== NOT EXECUTED
   4737a:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   4737c:	4879 0005 b316 	pea 5b316 <C.0.4108+0x304>                  <== NOT EXECUTED
   47382:	6000 ff40      	braw 472c4 <_Heap_Walk+0x17a>               <== NOT EXECUTED
  block->size_and_flag = size | flag;                                 
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE bool _Heap_Is_prev_used( const Heap_Block *block )
{                                                                     
  return block->size_and_flag & HEAP_PREV_BLOCK_USED;                 
   47386:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   47388:	c0ae fffc      	andl %fp@(-4),%d0                           <== NOT EXECUTED
   4738c:	2d40 fffc      	movel %d0,%fp@(-4)                          <== NOT EXECUTED
   47390:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   47392:	c0ad 0004      	andl %a5@(4),%d0                            <== NOT EXECUTED
      );                                                              
                                                                      
      return false;                                                   
    }                                                                 
                                                                      
    if ( !_Heap_Is_prev_used( next_block ) ) {                        
   47396:	6600 00ae      	bnew 47446 <_Heap_Walk+0x2fc>               <== NOT EXECUTED
                                                                      
    block = next_block;                                               
  } while ( block != first_block );                                   
                                                                      
  return true;                                                        
}                                                                     
   4739a:	222b 0008      	movel %a3@(8),%d1                           <== NOT EXECUTED
  Heap_Block *const last_free_block = _Heap_Free_list_last( heap );   
  bool const prev_used = _Heap_Is_prev_used( block );                 
  uintptr_t const block_size = _Heap_Block_size( block );             
  Heap_Block *const next_block = _Heap_Block_at( block, block_size ); 
                                                                      
  (*printer)(                                                         
   4739e:	43f9 0005 b036 	lea 5b036 <C.0.4108+0x24>,%a1               <== NOT EXECUTED
    block->prev,                                                      
    block->prev == first_free_block ?                                 
      " (= first free)"                                               
        : (block->prev == free_list_head ? " (= head)" : ""),         
    block->next,                                                      
    block->next == last_free_block ?                                  
   473a4:	206c 0008      	moveal %a4@(8),%a0                          <== NOT EXECUTED
                                                                      
    block = next_block;                                               
  } while ( block != first_block );                                   
                                                                      
  return true;                                                        
}                                                                     
   473a8:	2d41 fff8      	movel %d1,%fp@(-8)                          <== NOT EXECUTED
  Heap_Block *const last_free_block = _Heap_Free_list_last( heap );   
  bool const prev_used = _Heap_Is_prev_used( block );                 
  uintptr_t const block_size = _Heap_Block_size( block );             
  Heap_Block *const next_block = _Heap_Block_at( block, block_size ); 
                                                                      
  (*printer)(                                                         
   473ac:	b1eb 000c      	cmpal %a3@(12),%a0                          <== NOT EXECUTED
   473b0:	6710           	beqs 473c2 <_Heap_Walk+0x278>               <== NOT EXECUTED
      " (= first free)"                                               
        : (block->prev == free_list_head ? " (= head)" : ""),         
    block->next,                                                      
    block->next == last_free_block ?                                  
      " (= last free)"                                                
        : (block->next == free_list_tail ? " (= tail)" : "")          
   473b2:	43f9 0005 af70 	lea 5af70 <rtems_filesystem_default_pathconf+0xb4>,%a1<== NOT EXECUTED
   473b8:	b7c8           	cmpal %a0,%a3                               <== NOT EXECUTED
   473ba:	6606           	bnes 473c2 <_Heap_Walk+0x278>               <== NOT EXECUTED
   473bc:	43f9 0005 b045 	lea 5b045 <C.0.4108+0x33>,%a1               <== NOT EXECUTED
    false,                                                            
    "block 0x%08x: size %u, prev 0x%08x%s, next 0x%08x%s\n",          
    block,                                                            
    block_size,                                                       
    block->prev,                                                      
    block->prev == first_free_block ?                                 
   473c2:	202c 000c      	movel %a4@(12),%d0                          <== NOT EXECUTED
  Heap_Block *const last_free_block = _Heap_Free_list_last( heap );   
  bool const prev_used = _Heap_Is_prev_used( block );                 
  uintptr_t const block_size = _Heap_Block_size( block );             
  Heap_Block *const next_block = _Heap_Block_at( block, block_size ); 
                                                                      
  (*printer)(                                                         
   473c6:	223c 0005 b04f 	movel #372815,%d1                           <== NOT EXECUTED
   473cc:	b0ae fff8      	cmpl %fp@(-8),%d0                           <== NOT EXECUTED
   473d0:	6710           	beqs 473e2 <_Heap_Walk+0x298>               <== NOT EXECUTED
    block,                                                            
    block_size,                                                       
    block->prev,                                                      
    block->prev == first_free_block ?                                 
      " (= first free)"                                               
        : (block->prev == free_list_head ? " (= head)" : ""),         
   473d2:	223c 0005 af70 	movel #372592,%d1                           <== NOT EXECUTED
   473d8:	b7c0           	cmpal %d0,%a3                               <== NOT EXECUTED
   473da:	6606           	bnes 473e2 <_Heap_Walk+0x298>               <== NOT EXECUTED
   473dc:	223c 0005 b05f 	movel #372831,%d1                           <== NOT EXECUTED
  Heap_Block *const last_free_block = _Heap_Free_list_last( heap );   
  bool const prev_used = _Heap_Is_prev_used( block );                 
  uintptr_t const block_size = _Heap_Block_size( block );             
  Heap_Block *const next_block = _Heap_Block_at( block, block_size ); 
                                                                      
  (*printer)(                                                         
   473e2:	2f09           	movel %a1,%sp@-                             <== NOT EXECUTED
   473e4:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   473e6:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   473e8:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   473ea:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   473ec:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   473ee:	4879 0005 b34a 	pea 5b34a <C.0.4108+0x338>                  <== NOT EXECUTED
   473f4:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   473f6:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   473f8:	4e92           	jsr %a2@                                    <== NOT EXECUTED
    block->next == last_free_block ?                                  
      " (= last free)"                                                
        : (block->next == free_list_tail ? " (= tail)" : "")          
  );                                                                  
                                                                      
  if ( block_size != next_block->prev_size ) {                        
   473fa:	2015           	movel %a5@,%d0                              <== NOT EXECUTED
   473fc:	4fef 0024      	lea %sp@(36),%sp                            <== NOT EXECUTED
   47400:	b083           	cmpl %d3,%d0                                <== NOT EXECUTED
   47402:	671e           	beqs 47422 <_Heap_Walk+0x2d8>               <== NOT EXECUTED
    (*printer)(                                                       
   47404:	2f0d           	movel %a5,%sp@-                             <== NOT EXECUTED
   47406:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   47408:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4740a:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   4740c:	4879 0005 b37f 	pea 5b37f <C.0.4108+0x36d>                  <== NOT EXECUTED
   47412:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   47416:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   47418:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   4741a:	4fef 001c      	lea %sp@(28),%sp                            <== NOT EXECUTED
   4741e:	6000 feb0      	braw 472d0 <_Heap_Walk+0x186>               <== NOT EXECUTED
    );                                                                
                                                                      
    return false;                                                     
  }                                                                   
                                                                      
  if ( !prev_used ) {                                                 
   47422:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   47426:	660a           	bnes 47432 <_Heap_Walk+0x2e8>               <== NOT EXECUTED
    (*printer)(                                                       
   47428:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   4742a:	4879 0005 b3b8 	pea 5b3b8 <C.0.4108+0x3a6>                  <== NOT EXECUTED
   47430:	6060           	bras 47492 <_Heap_Walk+0x348>               <== NOT EXECUTED
                                                                      
    block = next_block;                                               
  } while ( block != first_block );                                   
                                                                      
  return true;                                                        
}                                                                     
   47432:	206b 0008      	moveal %a3@(8),%a0                          <== NOT EXECUTED
   47436:	6008           	bras 47440 <_Heap_Walk+0x2f6>               <== NOT EXECUTED
{                                                                     
  const Heap_Block *const free_list_tail = _Heap_Free_list_tail( heap );
  const Heap_Block *free_block = _Heap_Free_list_first( heap );       
                                                                      
  while ( free_block != free_list_tail ) {                            
    if ( free_block == block ) {                                      
   47438:	b9c8           	cmpal %a0,%a4                               <== NOT EXECUTED
   4743a:	673c           	beqs 47478 <_Heap_Walk+0x32e>               <== NOT EXECUTED
      return true;                                                    
    }                                                                 
    free_block = free_block->next;                                    
   4743c:	2068 0008      	moveal %a0@(8),%a0                          <== NOT EXECUTED
)                                                                     
{                                                                     
  const Heap_Block *const free_list_tail = _Heap_Free_list_tail( heap );
  const Heap_Block *free_block = _Heap_Free_list_first( heap );       
                                                                      
  while ( free_block != free_list_tail ) {                            
   47440:	b7c8           	cmpal %a0,%a3                               <== NOT EXECUTED
   47442:	66f4           	bnes 47438 <_Heap_Walk+0x2ee>               <== NOT EXECUTED
   47444:	6044           	bras 4748a <_Heap_Walk+0x340>               <== NOT EXECUTED
                                                                      
    if ( !_Heap_Is_prev_used( next_block ) ) {                        
      if ( !_Heap_Walk_check_free_block( source, printer, heap, block ) ) {
        return false;                                                 
      }                                                               
    } else if (prev_used) {                                           
   47446:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4744a:	6716           	beqs 47462 <_Heap_Walk+0x318>               <== NOT EXECUTED
      (*printer)(                                                     
   4744c:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4744e:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   47450:	4879 0005 b3e7 	pea 5b3e7 <C.0.4108+0x3d5>                  <== NOT EXECUTED
   47456:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   47458:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4745a:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   4745c:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   47460:	6016           	bras 47478 <_Heap_Walk+0x32e>               <== NOT EXECUTED
        "block 0x%08x: size %u\n",                                    
        block,                                                        
        block_size                                                    
      );                                                              
    } else {                                                          
      (*printer)(                                                     
   47462:	2f14           	movel %a4@,%sp@-                            <== NOT EXECUTED
   47464:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   47466:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   47468:	4879 0005 b3fe 	pea 5b3fe <C.0.4108+0x3ec>                  <== NOT EXECUTED
   4746e:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   47470:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   47472:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   47474:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
        block->prev_size                                              
      );                                                              
    }                                                                 
                                                                      
    block = next_block;                                               
  } while ( block != first_block );                                   
   47478:	bc8d           	cmpl %a5,%d6                                <== NOT EXECUTED
   4747a:	6600 fe6c      	bnew 472e8 <_Heap_Walk+0x19e>               <== NOT EXECUTED
  Heap_Block *block = first_block;                                    
  Heap_Walk_printer printer = dump ?                                  
    _Heap_Walk_print : _Heap_Walk_print_nothing;                      
                                                                      
  if ( !_System_state_Is_up( _System_state_Get() ) ) {                
    return true;                                                      
   4747e:	7001           	moveq #1,%d0                                <== NOT EXECUTED
                                                                      
    block = next_block;                                               
  } while ( block != first_block );                                   
                                                                      
  return true;                                                        
}                                                                     
   47480:	4cee 3cfc ffd0 	moveml %fp@(-48),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   47486:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   47488:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
    return false;                                                     
  }                                                                   
                                                                      
  if ( !_Heap_Walk_is_in_free_list( heap, block ) ) {                 
    (*printer)(                                                       
   4748a:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   4748c:	4879 0005 b423 	pea 5b423 <C.0.4108+0x411>                  <== NOT EXECUTED
   47492:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   47496:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   47498:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   4749a:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   4749e:	6000 fe30      	braw 472d0 <_Heap_Walk+0x186>               <== NOT EXECUTED
	...                                                                  
                                                                      

0004710c <_Heap_Walk_print>: static void _Heap_Walk_print( int source, bool error, const char *fmt, ... ) {
   4710c:	41f9 0004 3b54 	lea 43b54 <printk>,%a0                      <== NOT EXECUTED
   47112:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   47116:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
  va_list ap;                                                         
                                                                      
  if ( error ) {                                                      
   4711a:	4a2e 000f      	tstb %fp@(15)                               <== NOT EXECUTED
   4711e:	670a           	beqs 4712a <_Heap_Walk_print+0x1e>          <== NOT EXECUTED
    printk( "FAIL[%d]: ", source );                                   
   47120:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   47122:	4879 0005 b020 	pea 5b020 <C.0.4108+0xe>                    <== NOT EXECUTED
   47128:	6008           	bras 47132 <_Heap_Walk_print+0x26>          <== NOT EXECUTED
  } else {                                                            
    printk( "PASS[%d]: ", source );                                   
   4712a:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4712c:	4879 0005 b02b 	pea 5b02b <C.0.4108+0x19>                   <== NOT EXECUTED
   47132:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   47134:	508f           	addql #8,%sp                                <== NOT EXECUTED
  }                                                                   
                                                                      
  va_start( ap, fmt );                                                
  vprintk( fmt, ap );                                                 
   47136:	486e 0014      	pea %fp@(20)                                <== NOT EXECUTED
   4713a:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   4713e:	4eb9 0004 546c 	jsr 4546c <vprintk>                         <== NOT EXECUTED
  va_end( ap );                                                       
   47144:	508f           	addql #8,%sp                                <== NOT EXECUTED
}                                                                     
   47146:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00047104 <_Heap_Walk_print_nothing>: int source, bool error, const char *fmt, ... ) {
   47104:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  /* Do nothing */                                                    
}                                                                     
   47108:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004675c <_Internal_error_Occurred>: void _Internal_error_Occurred( Internal_errors_Source the_source, bool is_internal, Internal_errors_t the_error ) {
   4675c:	4e56 0000      	linkw %fp,#0                                
   46760:	222e 000c      	movel %fp@(12),%d1                          
   46764:	2f02           	movel %d2,%sp@-                             
   46766:	242e 0010      	movel %fp@(16),%d2                          
                                                                      
  _Internal_errors_What_happened.the_source  = the_source;            
  _Internal_errors_What_happened.is_internal = is_internal;           
   4676a:	13c1 0005 c782 	moveb %d1,5c782 <_Internal_errors_What_happened+0x4>
  _Internal_errors_What_happened.the_error   = the_error;             
                                                                      
  _User_extensions_Fatal( the_source, is_internal, the_error );       
   46770:	2f02           	movel %d2,%sp@-                             
void _Internal_error_Occurred(                                        
  Internal_errors_Source  the_source,                                 
  bool                    is_internal,                                
  Internal_errors_t       the_error                                   
)                                                                     
{                                                                     
   46772:	202e 0008      	movel %fp@(8),%d0                           
                                                                      
  _Internal_errors_What_happened.the_source  = the_source;            
  _Internal_errors_What_happened.is_internal = is_internal;           
  _Internal_errors_What_happened.the_error   = the_error;             
                                                                      
  _User_extensions_Fatal( the_source, is_internal, the_error );       
   46776:	0281 0000 00ff 	andil #255,%d1                              
  bool                    is_internal,                                
  Internal_errors_t       the_error                                   
)                                                                     
{                                                                     
                                                                      
  _Internal_errors_What_happened.the_source  = the_source;            
   4677c:	23c0 0005 c77e 	movel %d0,5c77e <_Internal_errors_What_happened>
  _Internal_errors_What_happened.is_internal = is_internal;           
  _Internal_errors_What_happened.the_error   = the_error;             
                                                                      
  _User_extensions_Fatal( the_source, is_internal, the_error );       
   46782:	2f01           	movel %d1,%sp@-                             
)                                                                     
{                                                                     
                                                                      
  _Internal_errors_What_happened.the_source  = the_source;            
  _Internal_errors_What_happened.is_internal = is_internal;           
  _Internal_errors_What_happened.the_error   = the_error;             
   46784:	23c2 0005 c784 	movel %d2,5c784 <_Internal_errors_What_happened+0x6>
                                                                      
  _User_extensions_Fatal( the_source, is_internal, the_error );       
   4678a:	2f00           	movel %d0,%sp@-                             
   4678c:	4eb9 0004 82f6 	jsr 482f6 <_User_extensions_Fatal>          
                                                                      
RTEMS_INLINE_ROUTINE void _System_state_Set (                         
  System_state_Codes state                                            
)                                                                     
{                                                                     
  _System_state_Current = state;                                      
   46792:	7005           	moveq #5,%d0                                <== NOT EXECUTED
                                                                      
  _System_state_Set( SYSTEM_STATE_FAILED );                           
                                                                      
  _CPU_Fatal_halt( the_error );                                       
   46794:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   46796:	243c 0000 0700 	movel #1792,%d2                             <== NOT EXECUTED
   4679c:	23c0 0005 c830 	movel %d0,5c830 <_System_state_Current>     <== NOT EXECUTED
   467a2:	40c0           	movew %sr,%d0                               <== NOT EXECUTED
   467a4:	8082           	orl %d2,%d0                                 <== NOT EXECUTED
   467a6:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
   467a8:	2008           	movel %a0,%d0                               <== NOT EXECUTED
   467aa:	223c dead beef 	movel #-559038737,%d1                       <== NOT EXECUTED
   467b0:	4ac8           	halt                                        <== NOT EXECUTED
   467b2:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   467b6:	60fe           	bras 467b6 <_Internal_error_Occurred+0x5a>  <== NOT EXECUTED
                                                                      

00051cf4 <_Message_queue_Allocate>: * Output parameters: * the_message_queue - set if successful, NULL otherwise */ Message_queue_Control *_Message_queue_Allocate(void) {
   51cf4:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return (Message_queue_Control *)                                    
    _Objects_Allocate(&_Message_queue_Information);                   
   51cf8:	4879 0006 53c4 	pea 653c4 <_Message_queue_Information>      <== NOT EXECUTED
   51cfe:	4eb9 0004 e834 	jsr 4e834 <_Objects_Allocate>               <== NOT EXECUTED
}                                                                     
   51d04:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004ce54 <_Message_queue_Translate_core_message_queue_return_code>: if ( status > CORE_MESSAGE_QUEUE_STATUS_TIMEOUT ) return RTEMS_INTERNAL_ERROR; #endif return _Message_queue_Translate_core_return_code_[status]; }
   4ce54:	41f9 0006 3a0c 	lea 63a0c <_Message_queue_Translate_core_return_code_>,%a0<== NOT EXECUTED
};                                                                    
                                                                      
rtems_status_code _Message_queue_Translate_core_message_queue_return_code (
  uint32_t   status                                                   
)                                                                     
{                                                                     
   4ce5a:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
    if ( status > CORE_MESSAGE_QUEUE_STATUS_TIMEOUT )                 
      return RTEMS_INTERNAL_ERROR;                                    
  #endif                                                              
                                                                      
  return _Message_queue_Translate_core_return_code_[status];          
}                                                                     
   4ce5e:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   4ce62:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4ce64:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
	...                                                                  
                                                                      

0004a48c <_Objects_API_maximum_class>: #include <rtems/score/object.h> unsigned int _Objects_API_maximum_class( uint32_t api ) {
   4a48c:	7202           	moveq #2,%d1                                
   4a48e:	4e56 0000      	linkw %fp,#0                                
   4a492:	202e 0008      	movel %fp@(8),%d0                           
   4a496:	5380           	subql #1,%d0                                
   4a498:	b280           	cmpl %d0,%d1                                
   4a49a:	650c           	bcss 4a4a8 <_Objects_API_maximum_class+0x1c><== NEVER TAKEN
   4a49c:	41f9 0005 a462 	lea 5a462 <CSWTCH.1>,%a0                    
   4a4a2:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            
   4a4a6:	6002           	bras 4a4aa <_Objects_API_maximum_class+0x1e>
   4a4a8:	4280           	clrl %d0                                    <== NOT EXECUTED
    case OBJECTS_NO_API:                                              
    default:                                                          
      break;                                                          
  }                                                                   
  return 0;                                                           
}                                                                     
   4a4aa:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

00046810 <_Objects_Allocate>: */ Objects_Control *_Objects_Allocate( Objects_Information *information ) {
   46810:	4e56 fff0      	linkw %fp,#-16                              
   46814:	48d7 0c0c      	moveml %d2-%d3/%a2-%a3,%sp@                 
   46818:	246e 0008      	moveal %fp@(8),%a2                          
   *  If the application is using the optional manager stubs and      
   *  still attempts to create the object, the information block      
   *  should be all zeroed out because it is in the BSS.  So let's    
   *  check that code for this manager is even present.               
   */                                                                 
  if ( information->size == 0 )                                       
   4681c:	4aaa 0014      	tstl %a2@(20)                               
   46820:	675e           	beqs 46880 <_Objects_Allocate+0x70>         <== NEVER TAKEN
                                                                      
  /*                                                                  
   *  OK.  The manager should be initialized and configured to have objects.
   *  With any luck, it is safe to attempt to allocate an object.     
   */                                                                 
  the_object = (Objects_Control *) _Chain_Get( &information->Inactive );
   46822:	240a           	movel %a2,%d2                               
   46824:	0682 0000 001c 	addil #28,%d2                               
   4682a:	47f9 0004 5fbc 	lea 45fbc <_Chain_Get>,%a3                  
   46830:	2f02           	movel %d2,%sp@-                             
   46832:	4e93           	jsr %a3@                                    
                                                                      
  if ( information->auto_extend ) {                                   
   46834:	588f           	addql #4,%sp                                
   46836:	4a2a 0010      	tstb %a2@(16)                               
   4683a:	6746           	beqs 46882 <_Objects_Allocate+0x72>         
    /*                                                                
     *  If the list is empty then we are out of objects and need to   
     *  extend information base.                                      
     */                                                               
                                                                      
    if ( !the_object ) {                                              
   4683c:	4a80           	tstl %d0                                    
   4683e:	6612           	bnes 46852 <_Objects_Allocate+0x42>         <== ALWAYS TAKEN
      _Objects_Extend_information( information );                     
   46840:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   46842:	4eb9 0004 68b8 	jsr 468b8 <_Objects_Extend_information>     <== NOT EXECUTED
      the_object =  (Objects_Control *) _Chain_Get( &information->Inactive );
   46848:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4684a:	4e93           	jsr %a3@                                    <== NOT EXECUTED
    }                                                                 
                                                                      
    if ( the_object ) {                                               
   4684c:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4684e:	4a80           	tstl %d0                                    <== NOT EXECUTED
   46850:	6730           	beqs 46882 <_Objects_Allocate+0x72>         <== NOT EXECUTED
      uint32_t   block;                                               
                                                                      
      block = (uint32_t) _Objects_Get_index( the_object->id ) -       
   46852:	2040           	moveal %d0,%a0                              
   46854:	4281           	clrl %d1                                    
   46856:	4282           	clrl %d2                                    
   46858:	3228 000a      	movew %a0@(10),%d1                          
   4685c:	342a 0008      	movew %a2@(8),%d2                           
              _Objects_Get_index( information->minimum_id );          
      block /= information->allocation_size;                          
                                                                      
      information->inactive_per_block[ block ]--;                     
   46860:	206a 002a      	moveal %a2@(42),%a0                         
    }                                                                 
                                                                      
    if ( the_object ) {                                               
      uint32_t   block;                                               
                                                                      
      block = (uint32_t) _Objects_Get_index( the_object->id ) -       
   46864:	9282           	subl %d2,%d1                                
              _Objects_Get_index( information->minimum_id );          
      block /= information->allocation_size;                          
   46866:	342a 0012      	movew %a2@(18),%d2                          
   4686a:	4c42 1001      	remul %d2,%d1,%d1                           
                                                                      
      information->inactive_per_block[ block ]--;                     
   4686e:	e589           	lsll #2,%d1                                 
   46870:	d1c1           	addal %d1,%a0                               
   46872:	5390           	subql #1,%a0@                               
      information->inactive--;                                        
   46874:	322a 0028      	movew %a2@(40),%d1                          
   46878:	5381           	subql #1,%d1                                
   4687a:	3541 0028      	movew %d1,%a2@(40)                          
   4687e:	6002           	bras 46882 <_Objects_Allocate+0x72>         
   *  still attempts to create the object, the information block      
   *  should be all zeroed out because it is in the BSS.  So let's    
   *  check that code for this manager is even present.               
   */                                                                 
  if ( information->size == 0 )                                       
    return NULL;                                                      
   46880:	4280           	clrl %d0                                    <== NOT EXECUTED
    );                                                                
  }                                                                   
#endif                                                                
                                                                      
  return the_object;                                                  
}                                                                     
   46882:	4cee 0c0c fff0 	moveml %fp@(-16),%d2-%d3/%a2-%a3            
   46888:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004688c <_Objects_Close>: RTEMS_INLINE_ROUTINE void _Objects_Invalidate_Id( Objects_Information *information, Objects_Control *the_object ) { _Objects_Set_local_object(
   4688c:	4280           	clrl %d0                                    
                                                                      
void _Objects_Close(                                                  
  Objects_Information  *information,                                  
  Objects_Control      *the_object                                    
)                                                                     
{                                                                     
   4688e:	4e56 0000      	linkw %fp,#0                                
   46892:	226e 000c      	moveal %fp@(12),%a1                         
   46896:	206e 0008      	moveal %fp@(8),%a0                          
   4689a:	2f0a           	movel %a2,%sp@-                             
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   4689c:	2468 0018      	moveal %a0@(24),%a2                         
RTEMS_INLINE_ROUTINE void _Objects_Invalidate_Id(                     
  Objects_Information  *information,                                  
  Objects_Control      *the_object                                    
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   468a0:	3029 000a      	movew %a1@(10),%d0                          
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   468a4:	42b2 0c00      	clrl %a2@(00000000,%d0:l:4)                 
  _Objects_Invalidate_Id( information, the_object );                  
                                                                      
  _Objects_Namespace_remove( information, the_object );               
}                                                                     
   468a8:	245f           	moveal %sp@+,%a2                            
  Objects_Control      *the_object                                    
)                                                                     
{                                                                     
  _Objects_Invalidate_Id( information, the_object );                  
                                                                      
  _Objects_Namespace_remove( information, the_object );               
   468aa:	2d49 000c      	movel %a1,%fp@(12)                          
}                                                                     
   468ae:	4e5e           	unlk %fp                                    
  Objects_Control      *the_object                                    
)                                                                     
{                                                                     
  _Objects_Invalidate_Id( information, the_object );                  
                                                                      
  _Objects_Namespace_remove( information, the_object );               
   468b0:	4ef9 0004 6dc0 	jmp 46dc0 <_Objects_Namespace_remove>       
	...                                                                  
                                                                      

000468b8 <_Objects_Extend_information>: */ void _Objects_Extend_information( Objects_Information *information ) {
   468b8:	4e56 ffc8      	linkw %fp,#-56                              
   468bc:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 
   468c0:	246e 0008      	moveal %fp@(8),%a2                          
  /*                                                                  
   *  Search for a free block of indexes. If we do NOT need to allocate or
   *  extend the block table, then we will change do_extend.          
   */                                                                 
  do_extend     = true;                                               
  minimum_index = _Objects_Get_index( information->minimum_id );      
   468c4:	4283           	clrl %d3                                    
  index_base    = minimum_index;                                      
  block         = 0;                                                  
                                                                      
  /* if ( information->maximum < minimum_index ) */                   
  if ( information->object_blocks == NULL )                           
   468c6:	206a 002e      	moveal %a2@(46),%a0                         
  /*                                                                  
   *  Search for a free block of indexes. If we do NOT need to allocate or
   *  extend the block table, then we will change do_extend.          
   */                                                                 
  do_extend     = true;                                               
  minimum_index = _Objects_Get_index( information->minimum_id );      
   468ca:	362a 0008      	movew %a2@(8),%d3                           
  index_base    = minimum_index;                                      
  block         = 0;                                                  
                                                                      
  /* if ( information->maximum < minimum_index ) */                   
  if ( information->object_blocks == NULL )                           
   468ce:	4a88           	tstl %a0                                    
   468d0:	6730           	beqs 46902 <_Objects_Extend_information+0x4a><== ALWAYS TAKEN
    block_count = 0;                                                  
  else {                                                              
    block_count = information->maximum / information->allocation_size;
   468d2:	4280           	clrl %d0                                    <== NOT EXECUTED
  /*                                                                  
   *  Search for a free block of indexes. If we do NOT need to allocate or
   *  extend the block table, then we will change do_extend.          
   */                                                                 
  do_extend     = true;                                               
  minimum_index = _Objects_Get_index( information->minimum_id );      
   468d4:	2403           	movel %d3,%d2                               <== NOT EXECUTED
  index_base    = minimum_index;                                      
  block         = 0;                                                  
   468d6:	4285           	clrl %d5                                    <== NOT EXECUTED
                                                                      
  /* if ( information->maximum < minimum_index ) */                   
  if ( information->object_blocks == NULL )                           
    block_count = 0;                                                  
  else {                                                              
    block_count = information->maximum / information->allocation_size;
   468d8:	302a 0012      	movew %a2@(18),%d0                          <== NOT EXECUTED
   468dc:	3c2a 000e      	movew %a2@(14),%d6                          <== NOT EXECUTED
   468e0:	0286 0000 ffff 	andil #65535,%d6                            <== NOT EXECUTED
   468e6:	8cc0           	divuw %d0,%d6                               <== NOT EXECUTED
   468e8:	0286 0000 ffff 	andil #65535,%d6                            <== NOT EXECUTED
                                                                      
    for ( ; block < block_count; block++ ) {                          
   468ee:	6008           	bras 468f8 <_Objects_Extend_information+0x40><== NOT EXECUTED
      if ( information->object_blocks[ block ] == NULL ) {            
   468f0:	4a98           	tstl %a0@+                                  <== NOT EXECUTED
   468f2:	671a           	beqs 4690e <_Objects_Extend_information+0x56><== NOT EXECUTED
   468f4:	d480           	addl %d0,%d2                                <== NOT EXECUTED
  if ( information->object_blocks == NULL )                           
    block_count = 0;                                                  
  else {                                                              
    block_count = information->maximum / information->allocation_size;
                                                                      
    for ( ; block < block_count; block++ ) {                          
   468f6:	5285           	addql #1,%d5                                <== NOT EXECUTED
   468f8:	bc85           	cmpl %d5,%d6                                <== NOT EXECUTED
   468fa:	62f4           	bhis 468f0 <_Objects_Extend_information+0x38><== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Search for a free block of indexes. If we do NOT need to allocate or
   *  extend the block table, then we will change do_extend.          
   */                                                                 
  do_extend     = true;                                               
   468fc:	367c 0001      	moveaw #1,%a3                               <== NOT EXECUTED
   46900:	600e           	bras 46910 <_Objects_Extend_information+0x58><== NOT EXECUTED
  minimum_index = _Objects_Get_index( information->minimum_id );      
   46902:	2403           	movel %d3,%d2                               
  index_base    = minimum_index;                                      
  block         = 0;                                                  
   46904:	4285           	clrl %d5                                    
                                                                      
  /* if ( information->maximum < minimum_index ) */                   
  if ( information->object_blocks == NULL )                           
    block_count = 0;                                                  
   46906:	4286           	clrl %d6                                    
                                                                      
  /*                                                                  
   *  Search for a free block of indexes. If we do NOT need to allocate or
   *  extend the block table, then we will change do_extend.          
   */                                                                 
  do_extend     = true;                                               
   46908:	367c 0001      	moveaw #1,%a3                               
   4690c:	6002           	bras 46910 <_Objects_Extend_information+0x58>
  else {                                                              
    block_count = information->maximum / information->allocation_size;
                                                                      
    for ( ; block < block_count; block++ ) {                          
      if ( information->object_blocks[ block ] == NULL ) {            
        do_extend = false;                                            
   4690e:	97cb           	subal %a3,%a3                               <== NOT EXECUTED
      } else                                                          
        index_base += information->allocation_size;                   
    }                                                                 
  }                                                                   
                                                                      
  maximum = (uint32_t) information->maximum + information->allocation_size;
   46910:	4280           	clrl %d0                                    
   46912:	4287           	clrl %d7                                    
   46914:	302a 0012      	movew %a2@(18),%d0                          
   46918:	3e2a 000e      	movew %a2@(14),%d7                          
   4691c:	de80           	addl %d0,%d7                                
  /*                                                                  
   *  We need to limit the number of objects to the maximum number    
   *  representable in the index portion of the object Id.  In the    
   *  case of 16-bit Ids, this is only 256 object instances.          
   */                                                                 
  if ( maximum > OBJECTS_ID_FINAL_INDEX ) {                           
   4691e:	0c87 0000 ffff 	cmpil #65535,%d7                            
   46924:	6200 01d4      	bhiw 46afa <_Objects_Extend_information+0x242>
                                                                      
  /*                                                                  
   * Allocate the name table, and the objects and if it fails either return or
   * generate a fatal error depending on auto-extending being active. 
   */                                                                 
  block_size = information->allocation_size * information->size;      
   46928:	41ea 0014      	lea %a2@(20),%a0                            
   4692c:	4c10 0800      	mulsl %a0@,%d0                              
  if ( information->auto_extend ) {                                   
   46930:	4a2a 0010      	tstb %a2@(16)                               
   46934:	6712           	beqs 46948 <_Objects_Extend_information+0x90>
    new_object_block = _Workspace_Allocate( block_size );             
   46936:	2f00           	movel %d0,%sp@-                             
   46938:	4eb9 0004 86c0 	jsr 486c0 <_Workspace_Allocate>             
    if ( !new_object_block )                                          
   4693e:	588f           	addql #4,%sp                                
   * Allocate the name table, and the objects and if it fails either return or
   * generate a fatal error depending on auto-extending being active. 
   */                                                                 
  block_size = information->allocation_size * information->size;      
  if ( information->auto_extend ) {                                   
    new_object_block = _Workspace_Allocate( block_size );             
   46940:	2800           	movel %d0,%d4                               
    if ( !new_object_block )                                          
   46942:	6610           	bnes 46954 <_Objects_Extend_information+0x9c><== ALWAYS TAKEN
   46944:	6000 01b4      	braw 46afa <_Objects_Extend_information+0x242><== NOT EXECUTED
      return;                                                         
  } else {                                                            
    new_object_block = _Workspace_Allocate_or_fatal_error( block_size );
   46948:	2f00           	movel %d0,%sp@-                             
   4694a:	4eb9 0004 86f4 	jsr 486f4 <_Workspace_Allocate_or_fatal_error>
   46950:	588f           	addql #4,%sp                                
   46952:	2800           	movel %d0,%d4                               
  }                                                                   
                                                                      
  /*                                                                  
   *  Do we need to grow the tables?                                  
   */                                                                 
  if ( do_extend ) {                                                  
   46954:	300b           	movew %a3,%d0                               
   46956:	4a00           	tstb %d0                                    
   46958:	6700 0110      	beqw 46a6a <_Objects_Extend_information+0x1b2>
     */                                                               
                                                                      
    /*                                                                
     *  Up the block count and maximum                                
     */                                                               
    block_count++;                                                    
   4695c:	2846           	moveal %d6,%a4                              
   4695e:	528c           	addql #1,%a4                                
    /*                                                                
     *  Allocate the tables and break it up.                          
     */                                                               
    block_size = block_count *                                        
           (sizeof(void *) + sizeof(uint32_t) + sizeof(Objects_Name *)) +
          ((maximum + minimum_index) * sizeof(Objects_Control *));    
   46960:	2007           	movel %d7,%d0                               
   46962:	d083           	addl %d3,%d0                                
                                                                      
    /*                                                                
     *  Allocate the tables and break it up.                          
     */                                                               
    block_size = block_count *                                        
           (sizeof(void *) + sizeof(uint32_t) + sizeof(Objects_Name *)) +
   46964:	41f4 ca00      	lea %a4@(00000000,%a4:l:2),%a0              
   46968:	d088           	addl %a0,%d0                                
    block_count++;                                                    
                                                                      
    /*                                                                
     *  Allocate the tables and break it up.                          
     */                                                               
    block_size = block_count *                                        
   4696a:	e588           	lsll #2,%d0                                 
           (sizeof(void *) + sizeof(uint32_t) + sizeof(Objects_Name *)) +
          ((maximum + minimum_index) * sizeof(Objects_Control *));    
    object_blocks = (void**) _Workspace_Allocate( block_size );       
   4696c:	2f00           	movel %d0,%sp@-                             
   4696e:	4eb9 0004 86c0 	jsr 486c0 <_Workspace_Allocate>             
                                                                      
    if ( !object_blocks ) {                                           
   46974:	588f           	addql #4,%sp                                
     *  Allocate the tables and break it up.                          
     */                                                               
    block_size = block_count *                                        
           (sizeof(void *) + sizeof(uint32_t) + sizeof(Objects_Name *)) +
          ((maximum + minimum_index) * sizeof(Objects_Control *));    
    object_blocks = (void**) _Workspace_Allocate( block_size );       
   46976:	2640           	moveal %d0,%a3                              
                                                                      
    if ( !object_blocks ) {                                           
   46978:	4a80           	tstl %d0                                    
   4697a:	660e           	bnes 4698a <_Objects_Extend_information+0xd2><== ALWAYS TAKEN
      _Workspace_Free( new_object_block );                            
   4697c:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4697e:	4eb9 0004 86dc 	jsr 486dc <_Workspace_Free>                 <== NOT EXECUTED
      return;                                                         
   46984:	588f           	addql #4,%sp                                <== NOT EXECUTED
   46986:	6000 0172      	braw 46afa <_Objects_Extend_information+0x242><== NOT EXECUTED
    }                                                                 
                                                                      
    /*                                                                
     *  Break the block into the various sections.                    
     */                                                               
    inactive_per_block = (uint32_t *) _Addresses_Add_offset(          
   4698a:	220c           	movel %a4,%d1                               
     *  Take the block count down. Saves all the (block_count - 1)    
     *  in the copies.                                                
     */                                                               
    block_count--;                                                    
                                                                      
    if ( information->maximum > minimum_index ) {                     
   4698c:	4280           	clrl %d0                                    
    }                                                                 
                                                                      
    /*                                                                
     *  Break the block into the various sections.                    
     */                                                               
    inactive_per_block = (uint32_t *) _Addresses_Add_offset(          
   4698e:	e589           	lsll #2,%d1                                 
     *  Take the block count down. Saves all the (block_count - 1)    
     *  in the copies.                                                
     */                                                               
    block_count--;                                                    
                                                                      
    if ( information->maximum > minimum_index ) {                     
   46990:	302a 000e      	movew %a2@(14),%d0                          
RTEMS_INLINE_ROUTINE void *_Addresses_Add_offset (                    
  const void *base,                                                   
  uintptr_t   offset                                                  
)                                                                     
{                                                                     
  return (void *)((uintptr_t)base + offset);                          
   46994:	4bf3 1800      	lea %a3@(00000000,%d1:l),%a5                
   46998:	49f5 1800      	lea %a5@(00000000,%d1:l),%a4                
   4699c:	b680           	cmpl %d0,%d3                                
   4699e:	6506           	bcss 469a6 <_Objects_Extend_information+0xee><== NEVER TAKEN
   469a0:	204c           	moveal %a4,%a0                              
   469a2:	4280           	clrl %d0                                    
   469a4:	604a           	bras 469f0 <_Objects_Extend_information+0x138>
      /*                                                              
       *  Copy each section of the table over. This has to be performed as
       *  separate parts as size of each block has changed.           
       */                                                             
                                                                      
      memcpy( object_blocks,                                          
   469a6:	2206           	movel %d6,%d1                               <== NOT EXECUTED
   469a8:	e589           	lsll #2,%d1                                 <== NOT EXECUTED
   469aa:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   469ac:	2f2a 002e      	movel %a2@(46),%sp@-                        <== NOT EXECUTED
   469b0:	2d41 fff0      	movel %d1,%fp@(-16)                         <== NOT EXECUTED
   469b4:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   469b6:	4eb9 0004 c3f4 	jsr 4c3f4 <memcpy>                          <== NOT EXECUTED
              information->object_blocks,                             
              block_count * sizeof(void*) );                          
      memcpy( inactive_per_block,                                     
   469bc:	222e fff0      	movel %fp@(-16),%d1                         <== NOT EXECUTED
   469c0:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   469c2:	2f2a 002a      	movel %a2@(42),%sp@-                        <== NOT EXECUTED
   469c6:	2f0d           	movel %a5,%sp@-                             <== NOT EXECUTED
   469c8:	4eb9 0004 c3f4 	jsr 4c3f4 <memcpy>                          <== NOT EXECUTED
              information->inactive_per_block,                        
              block_count * sizeof(uint32_t) );                       
      memcpy( local_table,                                            
              information->local_table,                               
              (information->maximum + minimum_index) * sizeof(Objects_Control *) );
   469ce:	4280           	clrl %d0                                    <== NOT EXECUTED
   469d0:	302a 000e      	movew %a2@(14),%d0                          <== NOT EXECUTED
   469d4:	d680           	addl %d0,%d3                                <== NOT EXECUTED
              information->object_blocks,                             
              block_count * sizeof(void*) );                          
      memcpy( inactive_per_block,                                     
              information->inactive_per_block,                        
              block_count * sizeof(uint32_t) );                       
      memcpy( local_table,                                            
   469d6:	e58b           	lsll #2,%d3                                 <== NOT EXECUTED
   469d8:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   469da:	2f2a 0018      	movel %a2@(24),%sp@-                        <== NOT EXECUTED
   469de:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   469e0:	4eb9 0004 c3f4 	jsr 4c3f4 <memcpy>                          <== NOT EXECUTED
   469e6:	4fef 0024      	lea %sp@(36),%sp                            <== NOT EXECUTED
   469ea:	6008           	bras 469f4 <_Objects_Extend_information+0x13c><== NOT EXECUTED
                                                                      
      /*                                                              
       *  Deal with the special case of the 0 to minimum_index        
       */                                                             
      for ( index = 0; index < minimum_index; index++ ) {             
        local_table[ index ] = NULL;                                  
   469ec:	4298           	clrl %a0@+                                  
    } else {                                                          
                                                                      
      /*                                                              
       *  Deal with the special case of the 0 to minimum_index        
       */                                                             
      for ( index = 0; index < minimum_index; index++ ) {             
   469ee:	5280           	addql #1,%d0                                
   469f0:	b680           	cmpl %d0,%d3                                
   469f2:	62f8           	bhis 469ec <_Objects_Extend_information+0x134>
     */                                                               
    object_blocks[block_count] = NULL;                                
    inactive_per_block[block_count] = 0;                              
                                                                      
    for ( index=index_base ;                                          
          index < ( information->allocation_size + index_base );      
   469f4:	4281           	clrl %d1                                    
     *  Initialise the new entries in the table.                      
     */                                                               
    object_blocks[block_count] = NULL;                                
    inactive_per_block[block_count] = 0;                              
                                                                      
    for ( index=index_base ;                                          
   469f6:	2002           	movel %d2,%d0                               
    }                                                                 
                                                                      
    /*                                                                
     *  Initialise the new entries in the table.                      
     */                                                               
    object_blocks[block_count] = NULL;                                
   469f8:	e58e           	lsll #2,%d6                                 
    inactive_per_block[block_count] = 0;                              
                                                                      
    for ( index=index_base ;                                          
          index < ( information->allocation_size + index_base );      
   469fa:	322a 0012      	movew %a2@(18),%d1                          
   469fe:	41f4 2c00      	lea %a4@(00000000,%d2:l:4),%a0              
    }                                                                 
                                                                      
    /*                                                                
     *  Initialise the new entries in the table.                      
     */                                                               
    object_blocks[block_count] = NULL;                                
   46a02:	42b3 6800      	clrl %a3@(00000000,%d6:l)                   
    inactive_per_block[block_count] = 0;                              
                                                                      
    for ( index=index_base ;                                          
          index < ( information->allocation_size + index_base );      
   46a06:	d282           	addl %d2,%d1                                
                                                                      
    /*                                                                
     *  Initialise the new entries in the table.                      
     */                                                               
    object_blocks[block_count] = NULL;                                
    inactive_per_block[block_count] = 0;                              
   46a08:	42b5 6800      	clrl %a5@(00000000,%d6:l)                   
                                                                      
    for ( index=index_base ;                                          
   46a0c:	6004           	bras 46a12 <_Objects_Extend_information+0x15a>
          index < ( information->allocation_size + index_base );      
          index++ ) {                                                 
      local_table[ index ] = NULL;                                    
   46a0e:	4298           	clrl %a0@+                                  
    object_blocks[block_count] = NULL;                                
    inactive_per_block[block_count] = 0;                              
                                                                      
    for ( index=index_base ;                                          
          index < ( information->allocation_size + index_base );      
          index++ ) {                                                 
   46a10:	5280           	addql #1,%d0                                
     *  Initialise the new entries in the table.                      
     */                                                               
    object_blocks[block_count] = NULL;                                
    inactive_per_block[block_count] = 0;                              
                                                                      
    for ( index=index_base ;                                          
   46a12:	b280           	cmpl %d0,%d1                                
   46a14:	62f8           	bhis 46a0e <_Objects_Extend_information+0x156>
          index < ( information->allocation_size + index_base );      
          index++ ) {                                                 
      local_table[ index ] = NULL;                                    
    }                                                                 
                                                                      
    _ISR_Disable( level );                                            
   46a16:	203c 0000 0700 	movel #1792,%d0                             
   46a1c:	40c3           	movew %sr,%d3                               
   46a1e:	8083           	orl %d3,%d0                                 
   46a20:	46c0           	movew %d0,%sr                               
  uint32_t         the_class,                                         
  uint32_t         node,                                              
  uint32_t         index                                              
)                                                                     
{                                                                     
  return (( (Objects_Id) the_api )   << OBJECTS_API_START_BIT)   |    
   46a22:	2012           	movel %a2@,%d0                              
   46a24:	7c18           	moveq #24,%d6                               
                                                                      
    information->object_blocks = object_blocks;                       
    information->inactive_per_block = inactive_per_block;             
    information->local_table = local_table;                           
    information->maximum = (Objects_Maximum) maximum;                 
    information->maximum_id = _Objects_Build_id(                      
   46a26:	4281           	clrl %d1                                    
   46a28:	eda8           	lsll %d6,%d0                                
   46a2a:	322a 0004      	movew %a2@(4),%d1                           
         (( (Objects_Id) the_class ) << OBJECTS_CLASS_START_BIT) |    
   46a2e:	1c3c 001b      	moveb #27,%d6                               
  uint32_t         the_class,                                         
  uint32_t         node,                                              
  uint32_t         index                                              
)                                                                     
{                                                                     
  return (( (Objects_Id) the_api )   << OBJECTS_API_START_BIT)   |    
   46a32:	08c0 0010      	bset #16,%d0                                
         (( (Objects_Id) the_class ) << OBJECTS_CLASS_START_BIT) |    
   46a36:	eda9           	lsll %d6,%d1                                
    old_tables = information->object_blocks;                          
                                                                      
    information->object_blocks = object_blocks;                       
    information->inactive_per_block = inactive_per_block;             
    information->local_table = local_table;                           
    information->maximum = (Objects_Maximum) maximum;                 
   46a38:	3547 000e      	movew %d7,%a2@(14)                          
    information->maximum_id = _Objects_Build_id(                      
   46a3c:	0287 0000 ffff 	andil #65535,%d7                            
      local_table[ index ] = NULL;                                    
    }                                                                 
                                                                      
    _ISR_Disable( level );                                            
                                                                      
    old_tables = information->object_blocks;                          
   46a42:	206a 002e      	moveal %a2@(46),%a0                         
   46a46:	8081           	orl %d1,%d0                                 
                                                                      
    information->object_blocks = object_blocks;                       
   46a48:	254b 002e      	movel %a3,%a2@(46)                          
  uint32_t         the_class,                                         
  uint32_t         node,                                              
  uint32_t         index                                              
)                                                                     
{                                                                     
  return (( (Objects_Id) the_api )   << OBJECTS_API_START_BIT)   |    
   46a4c:	8087           	orl %d7,%d0                                 
    information->inactive_per_block = inactive_per_block;             
   46a4e:	254d 002a      	movel %a5,%a2@(42)                          
    information->local_table = local_table;                           
   46a52:	254c 0018      	movel %a4,%a2@(24)                          
   46a56:	2540 000a      	movel %d0,%a2@(10)                          
        information->the_class,                                       
        _Objects_Local_node,                                          
        information->maximum                                          
      );                                                              
                                                                      
    _ISR_Enable( level );                                             
   46a5a:	46c3           	movew %d3,%sr                               
                                                                      
    if ( old_tables )                                                 
   46a5c:	4a88           	tstl %a0                                    
   46a5e:	670a           	beqs 46a6a <_Objects_Extend_information+0x1b2><== ALWAYS TAKEN
      _Workspace_Free( old_tables );                                  
   46a60:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   46a62:	4eb9 0004 86dc 	jsr 486dc <_Workspace_Free>                 <== NOT EXECUTED
   46a68:	588f           	addql #4,%sp                                <== NOT EXECUTED
  }                                                                   
                                                                      
  /*                                                                  
   *  Assign the new object block to the object block table.          
   */                                                                 
  information->object_blocks[ block ] = new_object_block;             
   46a6a:	206a 002e      	moveal %a2@(46),%a0                         
                                                                      
  /*                                                                  
   *  Initialize objects .. add to a local chain first.               
   */                                                                 
  _Chain_Initialize(                                                  
   46a6e:	4280           	clrl %d0                                    
        information->the_class,                                       
        _Objects_Local_node,                                          
        index                                                         
      );                                                              
                                                                      
    _Chain_Append( &information->Inactive, &the_object->Node );       
   46a70:	260a           	movel %a2,%d3                               
  /*                                                                  
   *  Move from the local chain, initialise, then append to the inactive chain
   */                                                                 
  index = index_base;                                                 
                                                                      
  while ((the_object = (Objects_Control *) _Chain_Get( &Inactive )) != NULL ) {
   46a72:	49f9 0004 5fbc 	lea 45fbc <_Chain_Get>,%a4                  
        information->the_class,                                       
        _Objects_Local_node,                                          
        index                                                         
      );                                                              
                                                                      
    _Chain_Append( &information->Inactive, &the_object->Node );       
   46a78:	0683 0000 001c 	addil #28,%d3                               
   46a7e:	47f9 0004 5f5c 	lea 45f5c <_Chain_Append>,%a3               
  }                                                                   
                                                                      
  /*                                                                  
   *  Assign the new object block to the object block table.          
   */                                                                 
  information->object_blocks[ block ] = new_object_block;             
   46a84:	e58d           	lsll #2,%d5                                 
   46a86:	2184 5800      	movel %d4,%a0@(00000000,%d5:l)              
                                                                      
  /*                                                                  
   *  Initialize objects .. add to a local chain first.               
   */                                                                 
  _Chain_Initialize(                                                  
   46a8a:	2f2a 0014      	movel %a2@(20),%sp@-                        
   46a8e:	302a 0012      	movew %a2@(18),%d0                          
   46a92:	2f00           	movel %d0,%sp@-                             
   46a94:	2f04           	movel %d4,%sp@-                             
   46a96:	280e           	movel %fp,%d4                               
   46a98:	0684 ffff fff4 	addil #-12,%d4                              
   46a9e:	2f04           	movel %d4,%sp@-                             
   46aa0:	4eb9 0004 a000 	jsr 4a000 <_Chain_Initialize>               
  /*                                                                  
   *  Move from the local chain, initialise, then append to the inactive chain
   */                                                                 
  index = index_base;                                                 
                                                                      
  while ((the_object = (Objects_Control *) _Chain_Get( &Inactive )) != NULL ) {
   46aa6:	4fef 0010      	lea %sp@(16),%sp                            
   46aaa:	602a           	bras 46ad6 <_Objects_Extend_information+0x21e>
   46aac:	2212           	movel %a2@,%d1                              
   46aae:	7e18           	moveq #24,%d7                               
                                                                      
    the_object->id = _Objects_Build_id(                               
   46ab0:	4286           	clrl %d6                                    
   46ab2:	2040           	moveal %d0,%a0                              
   46ab4:	3c2a 0004      	movew %a2@(4),%d6                           
   46ab8:	efa9           	lsll %d7,%d1                                
         (( (Objects_Id) the_class ) << OBJECTS_CLASS_START_BIT) |    
   46aba:	1e3c 001b      	moveb #27,%d7                               
  uint32_t         the_class,                                         
  uint32_t         node,                                              
  uint32_t         index                                              
)                                                                     
{                                                                     
  return (( (Objects_Id) the_api )   << OBJECTS_API_START_BIT)   |    
   46abe:	08c1 0010      	bset #16,%d1                                
         (( (Objects_Id) the_class ) << OBJECTS_CLASS_START_BIT) |    
   46ac2:	efae           	lsll %d7,%d6                                
   46ac4:	8286           	orl %d6,%d1                                 
  uint32_t         the_class,                                         
  uint32_t         node,                                              
  uint32_t         index                                              
)                                                                     
{                                                                     
  return (( (Objects_Id) the_api )   << OBJECTS_API_START_BIT)   |    
   46ac6:	8282           	orl %d2,%d1                                 
        index                                                         
      );                                                              
                                                                      
    _Chain_Append( &information->Inactive, &the_object->Node );       
                                                                      
    index++;                                                          
   46ac8:	5282           	addql #1,%d2                                
   46aca:	2141 0008      	movel %d1,%a0@(8)                           
        information->the_class,                                       
        _Objects_Local_node,                                          
        index                                                         
      );                                                              
                                                                      
    _Chain_Append( &information->Inactive, &the_object->Node );       
   46ace:	2f00           	movel %d0,%sp@-                             
   46ad0:	2f03           	movel %d3,%sp@-                             
   46ad2:	4e93           	jsr %a3@                                    
                                                                      
    index++;                                                          
   46ad4:	508f           	addql #8,%sp                                
  /*                                                                  
   *  Move from the local chain, initialise, then append to the inactive chain
   */                                                                 
  index = index_base;                                                 
                                                                      
  while ((the_object = (Objects_Control *) _Chain_Get( &Inactive )) != NULL ) {
   46ad6:	2f04           	movel %d4,%sp@-                             
   46ad8:	4e94           	jsr %a4@                                    
   46ada:	588f           	addql #4,%sp                                
   46adc:	4a80           	tstl %d0                                    
   46ade:	66cc           	bnes 46aac <_Objects_Extend_information+0x1f4>
    _Chain_Append( &information->Inactive, &the_object->Node );       
                                                                      
    index++;                                                          
  }                                                                   
                                                                      
  information->inactive_per_block[ block ] = information->allocation_size;
   46ae0:	4281           	clrl %d1                                    
   46ae2:	302a 0012      	movew %a2@(18),%d0                          
   46ae6:	206a 002a      	moveal %a2@(42),%a0                         
   46aea:	3200           	movew %d0,%d1                               
   46aec:	2181 5800      	movel %d1,%a0@(00000000,%d5:l)              
  information->inactive =                                             
    (Objects_Maximum)(information->inactive + information->allocation_size);
   46af0:	322a 0028      	movew %a2@(40),%d1                          
   46af4:	d081           	addl %d1,%d0                                
                                                                      
    index++;                                                          
  }                                                                   
                                                                      
  information->inactive_per_block[ block ] = information->allocation_size;
  information->inactive =                                             
   46af6:	3540 0028      	movew %d0,%a2@(40)                          
    (Objects_Maximum)(information->inactive + information->allocation_size);
}                                                                     
   46afa:	4cee 3cfc ffc8 	moveml %fp@(-56),%d2-%d7/%a2-%a5            
   46b00:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046b04 <_Objects_Free>: void _Objects_Free( Objects_Information *information, Objects_Control *the_object ) {
   46b04:	4e56 fff0      	linkw %fp,#-16                              
   46b08:	48d7 0c0c      	moveml %d2-%d3/%a2-%a3,%sp@                 
   46b0c:	246e 0008      	moveal %fp@(8),%a2                          
   46b10:	266e 000c      	moveal %fp@(12),%a3                         
  uint32_t    allocation_size = information->allocation_size;         
   46b14:	342a 0012      	movew %a2@(18),%d2                          
                                                                      
  _Chain_Append( &information->Inactive, &the_object->Node );         
   46b18:	2f0b           	movel %a3,%sp@-                             
   46b1a:	486a 001c      	pea %a2@(28)                                
   46b1e:	4eb9 0004 5f5c 	jsr 45f5c <_Chain_Append>                   
                                                                      
  if ( information->auto_extend ) {                                   
   46b24:	508f           	addql #8,%sp                                
   46b26:	4a2a 0010      	tstb %a2@(16)                               
   46b2a:	6750           	beqs 46b7c <_Objects_Free+0x78>             <== ALWAYS TAKEN
void _Objects_Free(                                                   
  Objects_Information *information,                                   
  Objects_Control     *the_object                                     
)                                                                     
{                                                                     
  uint32_t    allocation_size = information->allocation_size;         
   46b2c:	4281           	clrl %d1                                    <== NOT EXECUTED
  _Chain_Append( &information->Inactive, &the_object->Node );         
                                                                      
  if ( information->auto_extend ) {                                   
    uint32_t    block;                                                
                                                                      
    block = (uint32_t) (_Objects_Get_index( the_object->id ) -        
   46b2e:	4280           	clrl %d0                                    <== NOT EXECUTED
void _Objects_Free(                                                   
  Objects_Information *information,                                   
  Objects_Control     *the_object                                     
)                                                                     
{                                                                     
  uint32_t    allocation_size = information->allocation_size;         
   46b30:	3202           	movew %d2,%d1                               <== NOT EXECUTED
  _Chain_Append( &information->Inactive, &the_object->Node );         
                                                                      
  if ( information->auto_extend ) {                                   
    uint32_t    block;                                                
                                                                      
    block = (uint32_t) (_Objects_Get_index( the_object->id ) -        
   46b32:	4282           	clrl %d2                                    <== NOT EXECUTED
   46b34:	302b 000a      	movew %a3@(10),%d0                          <== NOT EXECUTED
   46b38:	342a 0008      	movew %a2@(8),%d2                           <== NOT EXECUTED
                        _Objects_Get_index( information->minimum_id ));
    block /= information->allocation_size;                            
                                                                      
    information->inactive_per_block[ block ]++;                       
   46b3c:	206a 002a      	moveal %a2@(42),%a0                         <== NOT EXECUTED
  _Chain_Append( &information->Inactive, &the_object->Node );         
                                                                      
  if ( information->auto_extend ) {                                   
    uint32_t    block;                                                
                                                                      
    block = (uint32_t) (_Objects_Get_index( the_object->id ) -        
   46b40:	9082           	subl %d2,%d0                                <== NOT EXECUTED
                        _Objects_Get_index( information->minimum_id ));
    block /= information->allocation_size;                            
   46b42:	342a 0012      	movew %a2@(18),%d2                          <== NOT EXECUTED
   46b46:	4c42 0000      	remul %d2,%d0,%d0                           <== NOT EXECUTED
    /*                                                                
     *  Check if the threshold level has been met of                  
     *  1.5 x allocation_size are free.                               
     */                                                               
                                                                      
    if ( information->inactive > ( allocation_size + ( allocation_size >> 1 ) ) ) {
   46b4a:	2401           	movel %d1,%d2                               <== NOT EXECUTED
   46b4c:	e28a           	lsrl #1,%d2                                 <== NOT EXECUTED
   46b4e:	d282           	addl %d2,%d1                                <== NOT EXECUTED
                                                                      
    block = (uint32_t) (_Objects_Get_index( the_object->id ) -        
                        _Objects_Get_index( information->minimum_id ));
    block /= information->allocation_size;                            
                                                                      
    information->inactive_per_block[ block ]++;                       
   46b50:	e588           	lsll #2,%d0                                 <== NOT EXECUTED
   46b52:	d1c0           	addal %d0,%a0                               <== NOT EXECUTED
   46b54:	5290           	addql #1,%a0@                               <== NOT EXECUTED
    information->inactive++;                                          
   46b56:	302a 0028      	movew %a2@(40),%d0                          <== NOT EXECUTED
   46b5a:	5280           	addql #1,%d0                                <== NOT EXECUTED
   46b5c:	3540 0028      	movew %d0,%a2@(40)                          <== NOT EXECUTED
    /*                                                                
     *  Check if the threshold level has been met of                  
     *  1.5 x allocation_size are free.                               
     */                                                               
                                                                      
    if ( information->inactive > ( allocation_size + ( allocation_size >> 1 ) ) ) {
   46b60:	0280 0000 ffff 	andil #65535,%d0                            <== NOT EXECUTED
   46b66:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   46b68:	6412           	bccs 46b7c <_Objects_Free+0x78>             <== NOT EXECUTED
      _Objects_Shrink_information( information );                     
   46b6a:	2d4a 0008      	movel %a2,%fp@(8)                           <== NOT EXECUTED
    }                                                                 
  }                                                                   
}                                                                     
   46b6e:	4cee 0c0c fff0 	moveml %fp@(-16),%d2-%d3/%a2-%a3            <== NOT EXECUTED
   46b74:	4e5e           	unlk %fp                                    <== NOT EXECUTED
     *  Check if the threshold level has been met of                  
     *  1.5 x allocation_size are free.                               
     */                                                               
                                                                      
    if ( information->inactive > ( allocation_size + ( allocation_size >> 1 ) ) ) {
      _Objects_Shrink_information( information );                     
   46b76:	4ef9 0004 6e44 	jmp 46e44 <_Objects_Shrink_information>     <== NOT EXECUTED
    }                                                                 
  }                                                                   
}                                                                     
   46b7c:	4cee 0c0c fff0 	moveml %fp@(-16),%d2-%d3/%a2-%a3            
   46b82:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

00046c68 <_Objects_Get>: * always NULL. * * If the Id is valid but the object has not been created yet, then * the local_table entry will be NULL. */ index = id - information->minimum_id + 1;
   46c68:	7001           	moveq #1,%d0                                
                                                                      
  /*                                                                  
   *  If the index is less than maximum, then it is OK to use it to   
   *  index into the local_table array.                               
   */                                                                 
  if ( index <= information->maximum ) {                              
   46c6a:	4281           	clrl %d1                                    
Objects_Control *_Objects_Get(                                        
  Objects_Information *information,                                   
  Objects_Id           id,                                            
  Objects_Locations   *location                                       
)                                                                     
{                                                                     
   46c6c:	4e56 0000      	linkw %fp,#0                                
   46c70:	206e 0008      	moveal %fp@(8),%a0                          
   *  always NULL.                                                    
   *                                                                  
   *  If the Id is valid but the object has not been created yet, then
   *  the local_table entry will be NULL.                             
   */                                                                 
  index = id - information->minimum_id + 1;                           
   46c74:	90a8 0006      	subl %a0@(6),%d0                            
   46c78:	d0ae 000c      	addl %fp@(12),%d0                           
Objects_Control *_Objects_Get(                                        
  Objects_Information *information,                                   
  Objects_Id           id,                                            
  Objects_Locations   *location                                       
)                                                                     
{                                                                     
   46c7c:	2f0a           	movel %a2,%sp@-                             
   46c7e:	246e 0010      	moveal %fp@(16),%a2                         
                                                                      
  /*                                                                  
   *  If the index is less than maximum, then it is OK to use it to   
   *  index into the local_table array.                               
   */                                                                 
  if ( index <= information->maximum ) {                              
   46c82:	3228 000e      	movew %a0@(14),%d1                          
Objects_Control *_Objects_Get(                                        
  Objects_Information *information,                                   
  Objects_Id           id,                                            
  Objects_Locations   *location                                       
)                                                                     
{                                                                     
   46c86:	2f02           	movel %d2,%sp@-                             
                                                                      
  /*                                                                  
   *  If the index is less than maximum, then it is OK to use it to   
   *  index into the local_table array.                               
   */                                                                 
  if ( index <= information->maximum ) {                              
   46c88:	b280           	cmpl %d0,%d1                                
   46c8a:	6528           	bcss 46cb4 <_Objects_Get+0x4c>              <== NEVER TAKEN
   46c8c:	2239 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d1
   46c92:	5281           	addql #1,%d1                                
   46c94:	23c1 0005 c6c8 	movel %d1,5c6c8 <_Thread_Dispatch_disable_level>
    _Thread_Disable_dispatch();                                       
    if ( (the_object = information->local_table[ index ]) != NULL ) { 
   46c9a:	2068 0018      	moveal %a0@(24),%a0                         
   46c9e:	2430 0c00      	movel %a0@(00000000,%d0:l:4),%d2            
   46ca2:	6704           	beqs 46ca8 <_Objects_Get+0x40>              <== NEVER TAKEN
      *location = OBJECTS_LOCAL;                                      
   46ca4:	4292           	clrl %a2@                                   
      return the_object;                                              
   46ca6:	6012           	bras 46cba <_Objects_Get+0x52>              
                                                                      
    /*                                                                
     *  Valid Id for this API, Class and Node but the object has not  
     *  been allocated yet.                                           
     */                                                               
    _Thread_Enable_dispatch();                                        
   46ca8:	4eb9 0004 771e 	jsr 4771e <_Thread_Enable_dispatch>         <== NOT EXECUTED
    *location = OBJECTS_ERROR;                                        
   46cae:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   46cb0:	2481           	movel %d1,%a2@                              <== NOT EXECUTED
    return NULL;                                                      
   46cb2:	6006           	bras 46cba <_Objects_Get+0x52>              <== NOT EXECUTED
  /*                                                                  
   *  Object Id is not within this API and Class on this node.  So    
   *  it may be global in a multiprocessing system.  But it is clearly
   *  invalid on a single processor system.                           
   */                                                                 
  *location = OBJECTS_ERROR;                                          
   46cb4:	7001           	moveq #1,%d0                                <== NOT EXECUTED
                                                                      
#if defined(RTEMS_MULTIPROCESSING)                                    
  _Objects_MP_Is_remote( information, id, location, &the_object );    
  return the_object;                                                  
#else                                                                 
  return NULL;                                                        
   46cb6:	4282           	clrl %d2                                    <== NOT EXECUTED
  /*                                                                  
   *  Object Id is not within this API and Class on this node.  So    
   *  it may be global in a multiprocessing system.  But it is clearly
   *  invalid on a single processor system.                           
   */                                                                 
  *location = OBJECTS_ERROR;                                          
   46cb8:	2480           	movel %d0,%a2@                              <== NOT EXECUTED
  _Objects_MP_Is_remote( information, id, location, &the_object );    
  return the_object;                                                  
#else                                                                 
  return NULL;                                                        
#endif                                                                
}                                                                     
   46cba:	2002           	movel %d2,%d0                               
   46cbc:	242e fff8      	movel %fp@(-8),%d2                          
   46cc0:	246e fffc      	moveal %fp@(-4),%a2                         
   46cc4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046bb4 <_Objects_Get_information>: Objects_Information *_Objects_Get_information( Objects_APIs the_api, uint16_t the_class ) {
   46bb4:	4e56 0000      	linkw %fp,#0                                
   46bb8:	2f03           	movel %d3,%sp@-                             
   46bba:	362e 000e      	movew %fp@(14),%d3                          
   46bbe:	2f02           	movel %d2,%sp@-                             
   46bc0:	242e 0008      	movel %fp@(8),%d2                           
  Objects_Information *info;                                          
  int the_class_api_maximum;                                          
                                                                      
  if ( !the_class )                                                   
   46bc4:	4a43           	tstw %d3                                    
   46bc6:	673a           	beqs 46c02 <_Objects_Get_information+0x4e>  <== NEVER TAKEN
                                                                      
  /*                                                                  
   *  This call implicitly validates the_api so we do not call        
   *  _Objects_Is_api_valid above here.                               
   */                                                                 
  the_class_api_maximum = _Objects_API_maximum_class( the_api );      
   46bc8:	2f02           	movel %d2,%sp@-                             
   46bca:	4eb9 0004 a48c 	jsr 4a48c <_Objects_API_maximum_class>      
  if ( the_class_api_maximum == 0 )                                   
   46bd0:	588f           	addql #4,%sp                                
   46bd2:	4a80           	tstl %d0                                    
   46bd4:	672c           	beqs 46c02 <_Objects_Get_information+0x4e>  <== NEVER TAKEN
    return NULL;                                                      
                                                                      
  if ( the_class > (uint32_t) the_class_api_maximum )                 
   46bd6:	0283 0000 ffff 	andil #65535,%d3                            
   46bdc:	b083           	cmpl %d3,%d0                                
   46bde:	6522           	bcss 46c02 <_Objects_Get_information+0x4e>  <== NEVER TAKEN
    return NULL;                                                      
                                                                      
  if ( !_Objects_Information_table[ the_api ] )                       
   46be0:	41f9 0005 c684 	lea 5c684 <_Objects_Information_table>,%a0  
   46be6:	2070 2c00      	moveal %a0@(00000000,%d2:l:4),%a0           
   46bea:	4a88           	tstl %a0                                    
   46bec:	6714           	beqs 46c02 <_Objects_Get_information+0x4e>  <== NEVER TAKEN
    return NULL;                                                      
                                                                      
  info = _Objects_Information_table[ the_api ][ the_class ];          
   46bee:	2030 3c00      	movel %a0@(00000000,%d3:l:4),%d0            
  if ( !info )                                                        
   46bf2:	6710           	beqs 46c04 <_Objects_Get_information+0x50>  <== NEVER TAKEN
   *  Thus we may have 0 local instances and still have a valid object
   *  pointer.                                                        
   */                                                                 
  #if !defined(RTEMS_MULTIPROCESSING)                                 
    if ( info->maximum == 0 )                                         
      return NULL;                                                    
   46bf4:	2040           	moveal %d0,%a0                              
   46bf6:	4a68 000e      	tstw %a0@(14)                               
   46bfa:	56c1           	sne %d1                                     
   46bfc:	49c1           	extbl %d1                                   
   46bfe:	c081           	andl %d1,%d0                                
   46c00:	6002           	bras 46c04 <_Objects_Get_information+0x50>  
                                                                      
  if ( the_class > (uint32_t) the_class_api_maximum )                 
    return NULL;                                                      
                                                                      
  if ( !_Objects_Information_table[ the_api ] )                       
    return NULL;                                                      
   46c02:	4280           	clrl %d0                                    <== NOT EXECUTED
    if ( info->maximum == 0 )                                         
      return NULL;                                                    
  #endif                                                              
                                                                      
  return info;                                                        
}                                                                     
   46c04:	242e fff8      	movel %fp@(-8),%d2                          
   46c08:	262e fffc      	movel %fp@(-4),%d3                          
   46c0c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046c10 <_Objects_Get_isr_disable>: { Objects_Control *the_object; uint32_t index; ISR_Level level; index = id - information->minimum_id + 1;
   46c10:	7001           	moveq #1,%d0                                
  Objects_Information *information,                                   
  Objects_Id           id,                                            
  Objects_Locations   *location,                                      
  ISR_Level           *level_p                                        
)                                                                     
{                                                                     
   46c12:	4e56 0000      	linkw %fp,#0                                
   46c16:	226e 0008      	moveal %fp@(8),%a1                          
  Objects_Control *the_object;                                        
  uint32_t         index;                                             
  ISR_Level        level;                                             
                                                                      
  index = id - information->minimum_id + 1;                           
   46c1a:	90a9 0006      	subl %a1@(6),%d0                            
   46c1e:	d0ae 000c      	addl %fp@(12),%d0                           
  Objects_Information *information,                                   
  Objects_Id           id,                                            
  Objects_Locations   *location,                                      
  ISR_Level           *level_p                                        
)                                                                     
{                                                                     
   46c22:	2f02           	movel %d2,%sp@-                             
   46c24:	206e 0010      	moveal %fp@(16),%a0                         
  uint32_t         index;                                             
  ISR_Level        level;                                             
                                                                      
  index = id - information->minimum_id + 1;                           
                                                                      
  _ISR_Disable( level );                                              
   46c28:	243c 0000 0700 	movel #1792,%d2                             
   46c2e:	40c1           	movew %sr,%d1                               
   46c30:	8481           	orl %d1,%d2                                 
   46c32:	46c2           	movew %d2,%sr                               
  if ( information->maximum >= index ) {                              
   46c34:	4282           	clrl %d2                                    
   46c36:	3429 000e      	movew %a1@(14),%d2                          
   46c3a:	b082           	cmpl %d2,%d0                                
   46c3c:	621c           	bhis 46c5a <_Objects_Get_isr_disable+0x4a>  <== NEVER TAKEN
    if ( (the_object = information->local_table[ index ]) != NULL ) { 
   46c3e:	2269 0018      	moveal %a1@(24),%a1                         
   46c42:	2031 0c00      	movel %a1@(00000000,%d0:l:4),%d0            
   46c46:	670a           	beqs 46c52 <_Objects_Get_isr_disable+0x42>  <== NEVER TAKEN
      *location = OBJECTS_LOCAL;                                      
   46c48:	4290           	clrl %a0@                                   
      *level_p = level;                                               
   46c4a:	206e 0014      	moveal %fp@(20),%a0                         
   46c4e:	2081           	movel %d1,%a0@                              
      return the_object;                                              
   46c50:	6010           	bras 46c62 <_Objects_Get_isr_disable+0x52>  
    }                                                                 
    _ISR_Enable( level );                                             
   46c52:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
    *location = OBJECTS_ERROR;                                        
   46c54:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   46c56:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
    return NULL;                                                      
   46c58:	6008           	bras 46c62 <_Objects_Get_isr_disable+0x52>  <== NOT EXECUTED
  }                                                                   
  _ISR_Enable( level );                                               
   46c5a:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
  *location = OBJECTS_ERROR;                                          
   46c5c:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   46c5e:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
                                                                      
#if defined(RTEMS_MULTIPROCESSING)                                    
  _Objects_MP_Is_remote( information, id, location, &the_object );    
  return the_object;                                                  
#else                                                                 
  return NULL;                                                        
   46c60:	4280           	clrl %d0                                    <== NOT EXECUTED
#endif                                                                
}                                                                     
   46c62:	241f           	movel %sp@+,%d2                             
   46c64:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00047fac <_Objects_Get_name_as_string>: char *_Objects_Get_name_as_string( Objects_Id id, size_t length, char *name ) {
   47fac:	4e56 ffe4      	linkw %fp,#-28                              <== NOT EXECUTED
   47fb0:	48d7 041c      	moveml %d2-%d4/%a2,%sp@                     <== NOT EXECUTED
   47fb4:	262e 0008      	movel %fp@(8),%d3                           <== NOT EXECUTED
   47fb8:	282e 000c      	movel %fp@(12),%d4                          <== NOT EXECUTED
   47fbc:	242e 0010      	movel %fp@(16),%d2                          <== NOT EXECUTED
  char                   lname[5];                                    
  Objects_Control       *the_object;                                  
  Objects_Locations      location;                                    
  Objects_Id             tmpId;                                       
                                                                      
  if ( length == 0 )                                                  
   47fc0:	4a84           	tstl %d4                                    <== NOT EXECUTED
   47fc2:	6700 00a6      	beqw 4806a <_Objects_Get_name_as_string+0xbe><== NOT EXECUTED
    return NULL;                                                      
                                                                      
  if ( name == NULL )                                                 
   47fc6:	4a82           	tstl %d2                                    <== NOT EXECUTED
   47fc8:	6700 00a2      	beqw 4806c <_Objects_Get_name_as_string+0xc0><== NOT EXECUTED
    return NULL;                                                      
                                                                      
  tmpId = (id == OBJECTS_ID_OF_SELF) ? _Thread_Executing->Object.id : id;
   47fcc:	4a83           	tstl %d3                                    <== NOT EXECUTED
   47fce:	660a           	bnes 47fda <_Objects_Get_name_as_string+0x2e><== NOT EXECUTED
   47fd0:	2079 0006 679c 	moveal 6679c <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
   47fd6:	2628 0008      	movel %a0@(8),%d3                           <== NOT EXECUTED
                                                                      
  information = _Objects_Get_information_id( tmpId );                 
   47fda:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   47fdc:	4eb9 0004 7ecc 	jsr 47ecc <_Objects_Get_information_id>     <== NOT EXECUTED
  if ( !information )                                                 
   47fe2:	588f           	addql #4,%sp                                <== NOT EXECUTED
   47fe4:	4a80           	tstl %d0                                    <== NOT EXECUTED
   47fe6:	6700 0082      	beqw 4806a <_Objects_Get_name_as_string+0xbe><== NOT EXECUTED
    return NULL;                                                      
                                                                      
  the_object = _Objects_Get( information, tmpId, &location );         
   47fea:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   47fee:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   47ff0:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   47ff2:	4eb9 0004 8078 	jsr 48078 <_Objects_Get>                    <== NOT EXECUTED
  switch ( location ) {                                               
   47ff8:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   47ffc:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   48000:	6668           	bnes 4806a <_Objects_Get_name_as_string+0xbe><== NOT EXECUTED
        if ( information->is_string ) {                               
          s = the_object->name.name_p;                                
        } else                                                        
      #endif                                                          
      {                                                               
        uint32_t  u32_name = (uint32_t) the_object->name.name_u32;    
   48002:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
                                                                      
        lname[ 0 ] = (u32_name >> 24) & 0xff;                         
   48004:	7618           	moveq #24,%d3                               <== NOT EXECUTED
        lname[ 1 ] = (u32_name >> 16) & 0xff;                         
        lname[ 2 ] = (u32_name >>  8) & 0xff;                         
        lname[ 3 ] = (u32_name >>  0) & 0xff;                         
        lname[ 4 ] = '\0';                                            
        s = lname;                                                    
   48006:	43ee fff7      	lea %fp@(-9),%a1                            <== NOT EXECUTED
      }                                                               
                                                                      
      d = name;                                                       
      if ( s ) {                                                      
        for ( i=0 ; i<(length-1) && *s ; i++, s++, d++ ) {            
   4800a:	5384           	subql #1,%d4                                <== NOT EXECUTED
        if ( information->is_string ) {                               
          s = the_object->name.name_p;                                
        } else                                                        
      #endif                                                          
      {                                                               
        uint32_t  u32_name = (uint32_t) the_object->name.name_u32;    
   4800c:	2028 000c      	movel %a0@(12),%d0                          <== NOT EXECUTED
                                                                      
        lname[ 0 ] = (u32_name >> 24) & 0xff;                         
   48010:	2200           	movel %d0,%d1                               <== NOT EXECUTED
   48012:	e6a9           	lsrl %d3,%d1                                <== NOT EXECUTED
        s = lname;                                                    
      }                                                               
                                                                      
      d = name;                                                       
      if ( s ) {                                                      
        for ( i=0 ; i<(length-1) && *s ; i++, s++, d++ ) {            
   48014:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
        } else                                                        
      #endif                                                          
      {                                                               
        uint32_t  u32_name = (uint32_t) the_object->name.name_u32;    
                                                                      
        lname[ 0 ] = (u32_name >> 24) & 0xff;                         
   48016:	1d41 fff7      	moveb %d1,%fp@(-9)                          <== NOT EXECUTED
        lname[ 1 ] = (u32_name >> 16) & 0xff;                         
   4801a:	2200           	movel %d0,%d1                               <== NOT EXECUTED
   4801c:	4241           	clrw %d1                                    <== NOT EXECUTED
   4801e:	4841           	swap %d1                                    <== NOT EXECUTED
        lname[ 2 ] = (u32_name >>  8) & 0xff;                         
        lname[ 3 ] = (u32_name >>  0) & 0xff;                         
   48020:	1d40 fffa      	moveb %d0,%fp@(-6)                          <== NOT EXECUTED
      #endif                                                          
      {                                                               
        uint32_t  u32_name = (uint32_t) the_object->name.name_u32;    
                                                                      
        lname[ 0 ] = (u32_name >> 24) & 0xff;                         
        lname[ 1 ] = (u32_name >> 16) & 0xff;                         
   48024:	1d41 fff8      	moveb %d1,%fp@(-8)                          <== NOT EXECUTED
        lname[ 2 ] = (u32_name >>  8) & 0xff;                         
   48028:	2200           	movel %d0,%d1                               <== NOT EXECUTED
   4802a:	e089           	lsrl #8,%d1                                 <== NOT EXECUTED
        lname[ 3 ] = (u32_name >>  0) & 0xff;                         
        lname[ 4 ] = '\0';                                            
   4802c:	4200           	clrb %d0                                    <== NOT EXECUTED
      {                                                               
        uint32_t  u32_name = (uint32_t) the_object->name.name_u32;    
                                                                      
        lname[ 0 ] = (u32_name >> 24) & 0xff;                         
        lname[ 1 ] = (u32_name >> 16) & 0xff;                         
        lname[ 2 ] = (u32_name >>  8) & 0xff;                         
   4802e:	1d41 fff9      	moveb %d1,%fp@(-7)                          <== NOT EXECUTED
        lname[ 3 ] = (u32_name >>  0) & 0xff;                         
        lname[ 4 ] = '\0';                                            
   48032:	1d40 fffb      	moveb %d0,%fp@(-5)                          <== NOT EXECUTED
        s = lname;                                                    
      }                                                               
                                                                      
      d = name;                                                       
      if ( s ) {                                                      
        for ( i=0 ; i<(length-1) && *s ; i++, s++, d++ ) {            
   48036:	4280           	clrl %d0                                    <== NOT EXECUTED
   48038:	601e           	bras 48058 <_Objects_Get_name_as_string+0xac><== NOT EXECUTED
          *d = (isprint((unsigned char)*s)) ? *s : '*';               
   4803a:	4283           	clrl %d3                                    <== NOT EXECUTED
   4803c:	1601           	moveb %d1,%d3                               <== NOT EXECUTED
   4803e:	2479 0005 d1c0 	moveal 5d1c0 <__ctype_ptr__>,%a2            <== NOT EXECUTED
   48044:	1632 3801      	moveb %a2@(00000001,%d3:l),%d3              <== NOT EXECUTED
   48048:	49c3           	extbl %d3                                   <== NOT EXECUTED
   4804a:	0283 0000 0097 	andil #151,%d3                              <== NOT EXECUTED
   48050:	6602           	bnes 48054 <_Objects_Get_name_as_string+0xa8><== NOT EXECUTED
   48052:	722a           	moveq #42,%d1                               <== NOT EXECUTED
        s = lname;                                                    
      }                                                               
                                                                      
      d = name;                                                       
      if ( s ) {                                                      
        for ( i=0 ; i<(length-1) && *s ; i++, s++, d++ ) {            
   48054:	5280           	addql #1,%d0                                <== NOT EXECUTED
          *d = (isprint((unsigned char)*s)) ? *s : '*';               
   48056:	10c1           	moveb %d1,%a0@+                             <== NOT EXECUTED
        s = lname;                                                    
      }                                                               
                                                                      
      d = name;                                                       
      if ( s ) {                                                      
        for ( i=0 ; i<(length-1) && *s ; i++, s++, d++ ) {            
   48058:	b880           	cmpl %d0,%d4                                <== NOT EXECUTED
   4805a:	6304           	blss 48060 <_Objects_Get_name_as_string+0xb4><== NOT EXECUTED
   4805c:	1219           	moveb %a1@+,%d1                             <== NOT EXECUTED
   4805e:	66da           	bnes 4803a <_Objects_Get_name_as_string+0x8e><== NOT EXECUTED
          *d = (isprint((unsigned char)*s)) ? *s : '*';               
        }                                                             
      }                                                               
      *d = '\0';                                                      
   48060:	4210           	clrb %a0@                                   <== NOT EXECUTED
                                                                      
      _Thread_Enable_dispatch();                                      
   48062:	4eb9 0004 8aba 	jsr 48aba <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return name;                                                    
   48068:	6002           	bras 4806c <_Objects_Get_name_as_string+0xc0><== NOT EXECUTED
#if defined(RTEMS_MULTIPROCESSING)                                    
    case OBJECTS_REMOTE:                                              
      /* not supported */                                             
#endif                                                                
    case OBJECTS_ERROR:                                               
      return NULL;                                                    
   4806a:	4282           	clrl %d2                                    <== NOT EXECUTED
                                                                      
      _Thread_Enable_dispatch();                                      
      return name;                                                    
  }                                                                   
  return NULL;                  /* unreachable path */                
}                                                                     
   4806c:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   4806e:	4cee 041c ffe4 	moveml %fp@(-28),%d2-%d4/%a2                <== NOT EXECUTED
   48074:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046df4 <_Objects_Get_next>: Objects_Information *information, Objects_Id id, Objects_Locations *location_p, Objects_Id *next_id_p ) {
   46df4:	4e56 ffec      	linkw %fp,#-20                              <== NOT EXECUTED
   46df8:	48d7 3c04      	moveml %d2/%a2-%a5,%sp@                     <== NOT EXECUTED
   46dfc:	266e 0008      	moveal %fp@(8),%a3                          <== NOT EXECUTED
   46e00:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
   46e04:	246e 0010      	moveal %fp@(16),%a2                         <== NOT EXECUTED
   46e08:	286e 0014      	moveal %fp@(20),%a4                         <== NOT EXECUTED
    Objects_Control *object;                                          
    Objects_Id       next_id;                                         
                                                                      
    if ( !information )                                               
   46e0c:	4a8b           	tstl %a3                                    <== NOT EXECUTED
   46e0e:	6744           	beqs 46e54 <_Objects_Get_next+0x60>         <== NOT EXECUTED
      return NULL;                                                    
                                                                      
    if ( !location_p )                                                
   46e10:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   46e12:	6740           	beqs 46e54 <_Objects_Get_next+0x60>         <== NOT EXECUTED
      return NULL;                                                    
                                                                      
    if ( !next_id_p )                                                 
   46e14:	4a8c           	tstl %a4                                    <== NOT EXECUTED
   46e16:	673c           	beqs 46e54 <_Objects_Get_next+0x60>         <== NOT EXECUTED
      return NULL;                                                    
                                                                      
    if (_Objects_Get_index(id) == OBJECTS_ID_INITIAL_INDEX)           
   46e18:	4a42           	tstw %d2                                    <== NOT EXECUTED
   46e1a:	6604           	bnes 46e20 <_Objects_Get_next+0x2c>         <== NOT EXECUTED
        next_id = information->minimum_id;                            
   46e1c:	242b 0006      	movel %a3@(6),%d2                           <== NOT EXECUTED
            *location_p = OBJECTS_ERROR;                              
            goto final;                                               
        }                                                             
                                                                      
        /* try to grab one */                                         
        object = _Objects_Get(information, next_id, location_p);      
   46e20:	4bf9 0004 6e60 	lea 46e60 <_Objects_Get>,%a5                <== NOT EXECUTED
    else                                                              
        next_id = id;                                                 
                                                                      
    do {                                                              
        /* walked off end of list? */                                 
        if (_Objects_Get_index(next_id) > information->maximum)       
   46e26:	4281           	clrl %d1                                    <== NOT EXECUTED
   46e28:	4280           	clrl %d0                                    <== NOT EXECUTED
   46e2a:	322b 000e      	movew %a3@(14),%d1                          <== NOT EXECUTED
   46e2e:	3002           	movew %d2,%d0                               <== NOT EXECUTED
   46e30:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   46e32:	630a           	blss 46e3e <_Objects_Get_next+0x4a>         <== NOT EXECUTED
        {                                                             
            *location_p = OBJECTS_ERROR;                              
   46e34:	7201           	moveq #1,%d1                                <== NOT EXECUTED
                                                                      
    *next_id_p = next_id;                                             
    return object;                                                    
                                                                      
final:                                                                
    *next_id_p = OBJECTS_ID_FINAL;                                    
   46e36:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
    do {                                                              
        /* walked off end of list? */                                 
        if (_Objects_Get_index(next_id) > information->maximum)       
        {                                                             
            *location_p = OBJECTS_ERROR;                              
   46e38:	2481           	movel %d1,%a2@                              <== NOT EXECUTED
                                                                      
    *next_id_p = next_id;                                             
    return object;                                                    
                                                                      
final:                                                                
    *next_id_p = OBJECTS_ID_FINAL;                                    
   46e3a:	2880           	movel %d0,%a4@                              <== NOT EXECUTED
   46e3c:	6016           	bras 46e54 <_Objects_Get_next+0x60>         <== NOT EXECUTED
            *location_p = OBJECTS_ERROR;                              
            goto final;                                               
        }                                                             
                                                                      
        /* try to grab one */                                         
        object = _Objects_Get(information, next_id, location_p);      
   46e3e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   46e40:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
                                                                      
        next_id++;                                                    
   46e42:	5282           	addql #1,%d2                                <== NOT EXECUTED
            *location_p = OBJECTS_ERROR;                              
            goto final;                                               
        }                                                             
                                                                      
        /* try to grab one */                                         
        object = _Objects_Get(information, next_id, location_p);      
   46e44:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   46e46:	4e95           	jsr %a5@                                    <== NOT EXECUTED
                                                                      
        next_id++;                                                    
                                                                      
    } while (*location_p != OBJECTS_LOCAL);                           
   46e48:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   46e4c:	4a92           	tstl %a2@                                   <== NOT EXECUTED
   46e4e:	66d6           	bnes 46e26 <_Objects_Get_next+0x32>         <== NOT EXECUTED
                                                                      
    *next_id_p = next_id;                                             
   46e50:	2882           	movel %d2,%a4@                              <== NOT EXECUTED
    return object;                                                    
   46e52:	6002           	bras 46e56 <_Objects_Get_next+0x62>         <== NOT EXECUTED
                                                                      
    if ( !location_p )                                                
      return NULL;                                                    
                                                                      
    if ( !next_id_p )                                                 
      return NULL;                                                    
   46e54:	4280           	clrl %d0                                    <== NOT EXECUTED
    return object;                                                    
                                                                      
final:                                                                
    *next_id_p = OBJECTS_ID_FINAL;                                    
    return 0;                                                         
}                                                                     
   46e56:	4cee 3c04 ffec 	moveml %fp@(-20),%d2/%a2-%a5                <== NOT EXECUTED
   46e5c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0005428c <_Objects_Get_no_protection>: /* * You can't just extract the index portion or you can get tricked * by a value between 1 and maximum. */ index = id - information->minimum_id + 1;
   5428c:	7001           	moveq #1,%d0                                <== NOT EXECUTED
                                                                      
  if ( information->maximum >= index ) {                              
   5428e:	4281           	clrl %d1                                    <== NOT EXECUTED
Objects_Control *_Objects_Get_no_protection(                          
  Objects_Information *information,                                   
  Objects_Id           id,                                            
  Objects_Locations   *location                                       
)                                                                     
{                                                                     
   54290:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   54294:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
                                                                      
  /*                                                                  
   * You can't just extract the index portion or you can get tricked  
   * by a value between 1 and maximum.                                
   */                                                                 
  index = id - information->minimum_id + 1;                           
   54298:	90a8 0006      	subl %a0@(6),%d0                            <== NOT EXECUTED
   5429c:	d0ae 000c      	addl %fp@(12),%d0                           <== NOT EXECUTED
                                                                      
  if ( information->maximum >= index ) {                              
   542a0:	3228 000e      	movew %a0@(14),%d1                          <== NOT EXECUTED
Objects_Control *_Objects_Get_no_protection(                          
  Objects_Information *information,                                   
  Objects_Id           id,                                            
  Objects_Locations   *location                                       
)                                                                     
{                                                                     
   542a4:	226e 0010      	moveal %fp@(16),%a1                         <== NOT EXECUTED
   * You can't just extract the index portion or you can get tricked  
   * by a value between 1 and maximum.                                
   */                                                                 
  index = id - information->minimum_id + 1;                           
                                                                      
  if ( information->maximum >= index ) {                              
   542a8:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   542aa:	620e           	bhis 542ba <_Objects_Get_no_protection+0x2e><== NOT EXECUTED
    if ( (the_object = information->local_table[ index ]) != NULL ) { 
   542ac:	2068 0018      	moveal %a0@(24),%a0                         <== NOT EXECUTED
   542b0:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
   542b4:	6704           	beqs 542ba <_Objects_Get_no_protection+0x2e><== NOT EXECUTED
      *location = OBJECTS_LOCAL;                                      
   542b6:	4291           	clrl %a1@                                   <== NOT EXECUTED
      return the_object;                                              
   542b8:	6006           	bras 542c0 <_Objects_Get_no_protection+0x34><== NOT EXECUTED
                                                                      
  /*                                                                  
   *  This isn't supported or required yet for Global objects so      
   *  if it isn't local, we don't find it.                            
   */                                                                 
  *location = OBJECTS_ERROR;                                          
   542ba:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   542bc:	2280           	movel %d0,%a1@                              <== NOT EXECUTED
  return NULL;                                                        
   542be:	4280           	clrl %d0                                    <== NOT EXECUTED
}                                                                     
   542c0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00047b94 <_Objects_Id_to_name>: */ Objects_Name_or_id_lookup_errors _Objects_Id_to_name ( Objects_Id id, Objects_Name *name ) {
   47b94:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   47b98:	222e 0008      	movel %fp@(8),%d1                           <== NOT EXECUTED
   47b9c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Caller is trusted for name != NULL.                             
   */                                                                 
                                                                      
  tmpId = (id == OBJECTS_ID_OF_SELF) ? _Thread_Executing->Object.id : id;
   47b9e:	4a81           	tstl %d1                                    <== NOT EXECUTED
   47ba0:	660a           	bnes 47bac <_Objects_Id_to_name+0x18>       <== NOT EXECUTED
   47ba2:	2079 0005 dd2c 	moveal 5dd2c <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
   47ba8:	2228 0008      	movel %a0@(8),%d1                           <== NOT EXECUTED
   47bac:	7418           	moveq #24,%d2                               <== NOT EXECUTED
   47bae:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   47bb0:	e4a8           	lsrl %d2,%d0                                <== NOT EXECUTED
   47bb2:	143c 0007      	moveb #7,%d2                                <== NOT EXECUTED
   47bb6:	c082           	andl %d2,%d0                                <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Objects_Is_api_valid(                      
  uint32_t   the_api                                                  
)                                                                     
{                                                                     
  if ( !the_api || the_api > OBJECTS_APIS_LAST )                      
   47bb8:	143c 0002      	moveb #2,%d2                                <== NOT EXECUTED
   47bbc:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   47bbe:	5388           	subql #1,%a0                                <== NOT EXECUTED
   47bc0:	b488           	cmpl %a0,%d2                                <== NOT EXECUTED
   47bc2:	6538           	bcss 47bfc <_Objects_Id_to_name+0x68>       <== NOT EXECUTED
   47bc4:	6040           	bras 47c06 <_Objects_Id_to_name+0x72>       <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE uint32_t _Objects_Get_class(                     
  Objects_Id id                                                       
)                                                                     
{                                                                     
  return (uint32_t)                                                   
   47bc6:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   47bc8:	741b           	moveq #27,%d2                               <== NOT EXECUTED
   47bca:	e4a8           	lsrl %d2,%d0                                <== NOT EXECUTED
  if ( !_Objects_Information_table[ the_api ] )                       
    return OBJECTS_INVALID_ID;                                        
                                                                      
  the_class = _Objects_Get_class( tmpId );                            
                                                                      
  information = _Objects_Information_table[ the_api ][ the_class ];   
   47bcc:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
  if ( !information )                                                 
   47bd0:	672a           	beqs 47bfc <_Objects_Id_to_name+0x68>       <== NOT EXECUTED
  #if defined(RTEMS_SCORE_OBJECT_ENABLE_STRING_NAMES)                 
    if ( information->is_string )                                     
      return OBJECTS_INVALID_ID;                                      
  #endif                                                              
                                                                      
  the_object = _Objects_Get( information, tmpId, &ignored_location ); 
   47bd2:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   47bd6:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   47bd8:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   47bda:	4eb9 0004 7b34 	jsr 47b34 <_Objects_Get>                    <== NOT EXECUTED
  if ( !the_object )                                                  
   47be0:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   47be4:	4a80           	tstl %d0                                    <== NOT EXECUTED
   47be6:	6714           	beqs 47bfc <_Objects_Id_to_name+0x68>       <== NOT EXECUTED
    return OBJECTS_INVALID_ID;                                        
                                                                      
  *name = the_object->name;                                           
   47be8:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
   47bec:	2240           	moveal %d0,%a1                              <== NOT EXECUTED
   47bee:	20a9 000c      	movel %a1@(12),%a0@                         <== NOT EXECUTED
  _Thread_Enable_dispatch();                                          
   47bf2:	4eb9 0004 866e 	jsr 4866e <_Thread_Enable_dispatch>         <== NOT EXECUTED
  return OBJECTS_NAME_OR_ID_LOOKUP_SUCCESSFUL;                        
   47bf8:	4280           	clrl %d0                                    <== NOT EXECUTED
   47bfa:	6002           	bras 47bfe <_Objects_Id_to_name+0x6a>       <== NOT EXECUTED
  the_api = _Objects_Get_API( tmpId );                                
  if ( !_Objects_Is_api_valid( the_api ) )                            
    return OBJECTS_INVALID_ID;                                        
                                                                      
  if ( !_Objects_Information_table[ the_api ] )                       
    return OBJECTS_INVALID_ID;                                        
   47bfc:	7003           	moveq #3,%d0                                <== NOT EXECUTED
    return OBJECTS_INVALID_ID;                                        
                                                                      
  *name = the_object->name;                                           
  _Thread_Enable_dispatch();                                          
  return OBJECTS_NAME_OR_ID_LOOKUP_SUCCESSFUL;                        
}                                                                     
   47bfe:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   47c02:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   47c04:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  the_api = _Objects_Get_API( tmpId );                                
  if ( !_Objects_Is_api_valid( the_api ) )                            
    return OBJECTS_INVALID_ID;                                        
                                                                      
  if ( !_Objects_Information_table[ the_api ] )                       
   47c06:	41f9 0005 db2c 	lea 5db2c <_Objects_Information_table>,%a0  <== NOT EXECUTED
   47c0c:	2070 0c00      	moveal %a0@(00000000,%d0:l:4),%a0           <== NOT EXECUTED
   47c10:	4a88           	tstl %a0                                    <== NOT EXECUTED
   47c12:	66b2           	bnes 47bc6 <_Objects_Id_to_name+0x32>       <== NOT EXECUTED
   47c14:	60e6           	bras 47bfc <_Objects_Id_to_name+0x68>       <== NOT EXECUTED
	...                                                                  
                                                                      

00046cc8 <_Objects_Initialize_information>: , bool supports_global, Objects_Thread_queue_Extract_callout extract #endif ) {
   46cc8:	4e56 fff4      	linkw %fp,#-12                              
   46ccc:	206e 0008      	moveal %fp@(8),%a0                          
   46cd0:	48d7 001c      	moveml %d2-%d4,%sp@                         
   46cd4:	4284           	clrl %d4                                    
   46cd6:	382e 001a      	movew %fp@(26),%d4                          
   46cda:	202e 000c      	movel %fp@(12),%d0                          
   46cde:	2244           	moveal %d4,%a1                              
   46ce0:	262e 0010      	movel %fp@(16),%d3                          
  information->the_class          = the_class;                        
  information->size               = size;                             
  information->local_table        = 0;                                
  information->inactive_per_block = 0;                                
  information->object_blocks      = 0;                                
  information->inactive           = 0;                                
   46ce4:	4244           	clrw %d4                                    
    uint32_t              index;                                      
  #endif                                                              
                                                                      
  information->the_api            = the_api;                          
  information->the_class          = the_class;                        
  information->size               = size;                             
   46ce6:	2149 0014      	movel %a1,%a0@(20)                          
  information->maximum = 0;                                           
                                                                      
  /*                                                                  
   *  Register this Object Class in the Object Information Table.     
   */                                                                 
  _Objects_Information_table[ the_api ][ the_class ] = information;   
   46cea:	43f9 0005 c684 	lea 5c684 <_Objects_Information_table>,%a1  
  ,                                                                   
  bool                 supports_global,                               
  Objects_Thread_queue_Extract_callout extract                        
#endif                                                                
)                                                                     
{                                                                     
   46cf0:	222e 0014      	movel %fp@(20),%d1                          
  #if defined(RTEMS_MULTIPROCESSING)                                  
    uint32_t              index;                                      
  #endif                                                              
                                                                      
  information->the_api            = the_api;                          
  information->the_class          = the_class;                        
   46cf4:	3143 0004      	movew %d3,%a0@(4)                           
  information->size               = size;                             
  information->local_table        = 0;                                
  information->inactive_per_block = 0;                                
  information->object_blocks      = 0;                                
  information->inactive           = 0;                                
   46cf8:	3144 0028      	movew %d4,%a0@(40)                          
                                                                      
  /*                                                                  
   *  Set the maximum value to 0. It will be updated when objects are 
   *  added to the inactive set from _Objects_Extend_information()    
   */                                                                 
  information->maximum = 0;                                           
   46cfc:	3144 000e      	movew %d4,%a0@(14)                          
                                                                      
  /*                                                                  
   *  Register this Object Class in the Object Information Table.     
   */                                                                 
  _Objects_Information_table[ the_api ][ the_class ] = information;   
   46d00:	2271 0c00      	moveal %a1@(00000000,%d0:l:4),%a1           
                                                                      
  /*                                                                  
   *  Are we operating in limited or unlimited (e.g. auto-extend) mode.
   */                                                                 
  information->auto_extend =                                          
        (maximum & OBJECTS_UNLIMITED_OBJECTS) ? true : false;         
   46d04:	2801           	movel %d1,%d4                               
  ,                                                                   
  bool                 supports_global,                               
  Objects_Thread_queue_Extract_callout extract                        
#endif                                                                
)                                                                     
{                                                                     
   46d06:	242e 0020      	movel %fp@(32),%d2                          
  information->maximum = 0;                                           
                                                                      
  /*                                                                  
   *  Register this Object Class in the Object Information Table.     
   */                                                                 
  _Objects_Information_table[ the_api ][ the_class ] = information;   
   46d0a:	0283 0000 ffff 	andil #65535,%d3                            
  uint32_t                maximum_per_allocation;                     
  #if defined(RTEMS_MULTIPROCESSING)                                  
    uint32_t              index;                                      
  #endif                                                              
                                                                      
  information->the_api            = the_api;                          
   46d10:	2080           	movel %d0,%a0@                              
                                                                      
  /*                                                                  
   *  Are we operating in limited or unlimited (e.g. auto-extend) mode.
   */                                                                 
  information->auto_extend =                                          
        (maximum & OBJECTS_UNLIMITED_OBJECTS) ? true : false;         
   46d12:	d884           	addl %d4,%d4                                
   46d14:	9984           	subxl %d4,%d4                               
   46d16:	4484           	negl %d4                                    
  #endif                                                              
                                                                      
  information->the_api            = the_api;                          
  information->the_class          = the_class;                        
  information->size               = size;                             
  information->local_table        = 0;                                
   46d18:	42a8 0018      	clrl %a0@(24)                               
  /*                                                                  
   *  Are we operating in limited or unlimited (e.g. auto-extend) mode.
   */                                                                 
  information->auto_extend =                                          
        (maximum & OBJECTS_UNLIMITED_OBJECTS) ? true : false;         
  maximum_per_allocation = maximum & ~OBJECTS_UNLIMITED_OBJECTS;      
   46d1c:	0881 001f      	bclr #31,%d1                                
                                                                      
  information->the_api            = the_api;                          
  information->the_class          = the_class;                        
  information->size               = size;                             
  information->local_table        = 0;                                
  information->inactive_per_block = 0;                                
   46d20:	42a8 002a      	clrl %a0@(42)                               
  information->object_blocks      = 0;                                
   46d24:	42a8 002e      	clrl %a0@(46)                               
  information->maximum = 0;                                           
                                                                      
  /*                                                                  
   *  Register this Object Class in the Object Information Table.     
   */                                                                 
  _Objects_Information_table[ the_api ][ the_class ] = information;   
   46d28:	2388 3c00      	movel %a0,%a1@(00000000,%d3:l:4)            
                                                                      
  /*                                                                  
   *  Are we operating in limited or unlimited (e.g. auto-extend) mode.
   */                                                                 
  information->auto_extend =                                          
   46d2c:	1144 0010      	moveb %d4,%a0@(16)                          
  maximum_per_allocation = maximum & ~OBJECTS_UNLIMITED_OBJECTS;      
                                                                      
  /*                                                                  
   *  Unlimited and maximum of zero is illogical.                     
   */                                                                 
  if ( information->auto_extend && maximum_per_allocation == 0) {     
   46d30:	4a84           	tstl %d4                                    
   46d32:	6714           	beqs 46d48 <_Objects_Initialize_information+0x80>
   46d34:	4a81           	tstl %d1                                    
   46d36:	6610           	bnes 46d48 <_Objects_Initialize_information+0x80>
    _Internal_error_Occurred(                                         
   46d38:	4878 0013      	pea 13 <INVALID_OPERATION+0x3>              
   46d3c:	4878 0001      	pea 1 <ADD>                                 
   46d40:	42a7           	clrl %sp@-                                  
   46d42:	4eb9 0004 675c 	jsr 4675c <_Internal_error_Occurred>        
  uint32_t         the_class,                                         
  uint32_t         node,                                              
  uint32_t         index                                              
)                                                                     
{                                                                     
  return (( (Objects_Id) the_api )   << OBJECTS_API_START_BIT)   |    
   46d48:	7818           	moveq #24,%d4                               
  information->allocation_size = maximum_per_allocation;              
                                                                      
  /*                                                                  
   *  Provide a null local table entry for the case of any empty table.
   */                                                                 
  information->local_table = &null_local_table;                       
   46d4a:	43f9 0005 be84 	lea 5be84 <null_local_table.3206>,%a1       
   46d50:	e9a8           	lsll %d4,%d0                                
         (( (Objects_Id) the_class ) << OBJECTS_CLASS_START_BIT) |    
   46d52:	183c 001b      	moveb #27,%d4                               
  uint32_t         the_class,                                         
  uint32_t         node,                                              
  uint32_t         index                                              
)                                                                     
{                                                                     
  return (( (Objects_Id) the_api )   << OBJECTS_API_START_BIT)   |    
   46d56:	08c0 0010      	bset #16,%d0                                
         (( (Objects_Id) the_class ) << OBJECTS_CLASS_START_BIT) |    
   46d5a:	e9ab           	lsll %d4,%d3                                
  }                                                                   
                                                                      
  /*                                                                  
   *  The allocation unit is the maximum value                        
   */                                                                 
  information->allocation_size = maximum_per_allocation;              
   46d5c:	3141 0012      	movew %d1,%a0@(18)                          
                                                                      
  /*                                                                  
   *  Provide a null local table entry for the case of any empty table.
   */                                                                 
  information->local_table = &null_local_table;                       
   46d60:	2149 0018      	movel %a1,%a0@(24)                          
   46d64:	8083           	orl %d3,%d0                                 
                                                                      
  /*                                                                  
   *  Calculate minimum and maximum Id's                              
   */                                                                 
  minimum_index = (maximum_per_allocation == 0) ? 0 : 1;              
   46d66:	4a81           	tstl %d1                                    
   46d68:	56c3           	sne %d3                                     
   46d6a:	49c3           	extbl %d3                                   
   46d6c:	4483           	negl %d3                                    
  uint32_t         the_class,                                         
  uint32_t         node,                                              
  uint32_t         index                                              
)                                                                     
{                                                                     
  return (( (Objects_Id) the_api )   << OBJECTS_API_START_BIT)   |    
   46d6e:	8083           	orl %d3,%d0                                 
   46d70:	2140 0006      	movel %d0,%a0@(6)                           
  /*                                                                  
   *  Calculate the maximum name length                               
   */                                                                 
  name_length = maximum_name_length;                                  
                                                                      
  if ( name_length & (OBJECTS_NAME_ALIGNMENT-1) )                     
   46d74:	7003           	moveq #3,%d0                                
   46d76:	c082           	andl %d2,%d0                                
   46d78:	670a           	beqs 46d84 <_Objects_Initialize_information+0xbc><== ALWAYS TAKEN
    name_length = (name_length + OBJECTS_NAME_ALIGNMENT) &            
   46d7a:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   46d7c:	5880           	addql #4,%d0                                <== NOT EXECUTED
   46d7e:	74fc           	moveq #-4,%d2                               <== NOT EXECUTED
   46d80:	c082           	andl %d2,%d0                                <== NOT EXECUTED
   46d82:	6002           	bras 46d86 <_Objects_Initialize_information+0xbe><== NOT EXECUTED
  /*                                                                  
   *  Calculate the maximum name length                               
   */                                                                 
  name_length = maximum_name_length;                                  
                                                                      
  if ( name_length & (OBJECTS_NAME_ALIGNMENT-1) )                     
   46d84:	2002           	movel %d2,%d0                               
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   46d86:	43e8 0020      	lea %a0@(32),%a1                            
   46d8a:	2149 001c      	movel %a1,%a0@(28)                          
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
   46d8e:	43e8 001c      	lea %a0@(28),%a1                            
    name_length = (name_length + OBJECTS_NAME_ALIGNMENT) &            
                  ~(OBJECTS_NAME_ALIGNMENT-1);                        
                                                                      
  information->name_length = name_length;                             
   46d92:	3140 0032      	movew %d0,%a0@(50)                          
  Chain_Node *tail = _Chain_Tail( the_chain );                        
                                                                      
  head->next = tail;                                                  
  head->previous = NULL;                                              
   46d96:	42a8 0020      	clrl %a0@(32)                               
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
   46d9a:	2149 0024      	movel %a1,%a0@(36)                          
  _Chain_Initialize_empty( &information->Inactive );                  
                                                                      
  /*                                                                  
   *  Initialize objects .. if there are any                          
   */                                                                 
  if ( maximum_per_allocation ) {                                     
   46d9e:	4a81           	tstl %d1                                    
   46da0:	6712           	beqs 46db4 <_Objects_Initialize_information+0xec>
    /*                                                                
     *  Always have the maximum size available so the current performance
     *  figures are create are met.  If the user moves past the maximum
     *  number then a performance hit is taken.                       
     */                                                               
    _Objects_Extend_information( information );                       
   46da2:	2d48 0008      	movel %a0,%fp@(8)                           
	_Chain_Initialize_empty( &information->global_table[ index ] );      
     }                                                                
     else                                                             
       information->global_table = NULL;                              
  #endif                                                              
}                                                                     
   46da6:	4cee 001c fff4 	moveml %fp@(-12),%d2-%d4                    
   46dac:	4e5e           	unlk %fp                                    
    /*                                                                
     *  Always have the maximum size available so the current performance
     *  figures are create are met.  If the user moves past the maximum
     *  number then a performance hit is taken.                       
     */                                                               
    _Objects_Extend_information( information );                       
   46dae:	4ef9 0004 68b8 	jmp 468b8 <_Objects_Extend_information>     
	_Chain_Initialize_empty( &information->global_table[ index ] );      
     }                                                                
     else                                                             
       information->global_table = NULL;                              
  #endif                                                              
}                                                                     
   46db4:	4cee 001c fff4 	moveml %fp@(-12),%d2-%d4                    
   46dba:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

00046dd0 <_Objects_Name_to_id_u32>: Objects_Information *information, uint32_t name, uint32_t node, Objects_Id *id ) {
   46dd0:	4e56 fff4      	linkw %fp,#-12                              <== NOT EXECUTED
   46dd4:	226e 0008      	moveal %fp@(8),%a1                          <== NOT EXECUTED
   46dd8:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     <== NOT EXECUTED
   46ddc:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
   46de0:	202e 0010      	movel %fp@(16),%d0                          <== NOT EXECUTED
   46de4:	246e 0014      	moveal %fp@(20),%a2                         <== NOT EXECUTED
  Objects_Name               name_for_mp;                             
#endif                                                                
                                                                      
  /* ASSERT: information->is_string == false */                       
                                                                      
  if ( !id )                                                          
   46de8:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   46dea:	674a           	beqs 46e36 <_Objects_Name_to_id_u32+0x66>   <== NOT EXECUTED
    return OBJECTS_INVALID_ADDRESS;                                   
                                                                      
  if ( name == 0 )                                                    
   46dec:	4a82           	tstl %d2                                    <== NOT EXECUTED
   46dee:	674a           	beqs 46e3a <_Objects_Name_to_id_u32+0x6a>   <== NOT EXECUTED
    return OBJECTS_INVALID_NAME;                                      
                                                                      
  search_local_node = false;                                          
                                                                      
  if ( information->maximum != 0 &&                                   
   46df0:	3229 000e      	movew %a1@(14),%d1                          <== NOT EXECUTED
   46df4:	6744           	beqs 46e3a <_Objects_Name_to_id_u32+0x6a>   <== NOT EXECUTED
   46df6:	4a80           	tstl %d0                                    <== NOT EXECUTED
   46df8:	672e           	beqs 46e28 <_Objects_Name_to_id_u32+0x58>   <== NOT EXECUTED
      (node == OBJECTS_SEARCH_ALL_NODES ||                            
   46dfa:	0c80 7fff ffff 	cmpil #2147483647,%d0                       <== NOT EXECUTED
   46e00:	6726           	beqs 46e28 <_Objects_Name_to_id_u32+0x58>   <== NOT EXECUTED
       node == OBJECTS_SEARCH_LOCAL_NODE ||                           
   46e02:	7601           	moveq #1,%d3                                <== NOT EXECUTED
   46e04:	b680           	cmpl %d0,%d3                                <== NOT EXECUTED
   46e06:	6632           	bnes 46e3a <_Objects_Name_to_id_u32+0x6a>   <== NOT EXECUTED
   46e08:	601e           	bras 46e28 <_Objects_Name_to_id_u32+0x58>   <== NOT EXECUTED
      ))                                                              
   search_local_node = true;                                          
                                                                      
  if ( search_local_node ) {                                          
    for ( index = 1; index <= information->maximum; index++ ) {       
      the_object = information->local_table[ index ];                 
   46e0a:	2069 0018      	moveal %a1@(24),%a0                         <== NOT EXECUTED
   46e0e:	2070 0c00      	moveal %a0@(00000000,%d0:l:4),%a0           <== NOT EXECUTED
      if ( !the_object )                                              
   46e12:	4a88           	tstl %a0                                    <== NOT EXECUTED
   46e14:	670e           	beqs 46e24 <_Objects_Name_to_id_u32+0x54>   <== NOT EXECUTED
        continue;                                                     
                                                                      
      if ( name == the_object->name.name_u32 ) {                      
   46e16:	b4a8 000c      	cmpl %a0@(12),%d2                           <== NOT EXECUTED
   46e1a:	6608           	bnes 46e24 <_Objects_Name_to_id_u32+0x54>   <== NOT EXECUTED
        *id = the_object->id;                                         
   46e1c:	24a8 0008      	movel %a0@(8),%a2@                          <== NOT EXECUTED
        return OBJECTS_NAME_OR_ID_LOOKUP_SUCCESSFUL;                  
   46e20:	4280           	clrl %d0                                    <== NOT EXECUTED
   46e22:	6018           	bras 46e3c <_Objects_Name_to_id_u32+0x6c>   <== NOT EXECUTED
       _Objects_Is_local_node( node )                                 
      ))                                                              
   search_local_node = true;                                          
                                                                      
  if ( search_local_node ) {                                          
    for ( index = 1; index <= information->maximum; index++ ) {       
   46e24:	5280           	addql #1,%d0                                <== NOT EXECUTED
   46e26:	6008           	bras 46e30 <_Objects_Name_to_id_u32+0x60>   <== NOT EXECUTED
                                                                      
  search_local_node = false;                                          
                                                                      
  if ( information->maximum != 0 &&                                   
      (node == OBJECTS_SEARCH_ALL_NODES ||                            
       node == OBJECTS_SEARCH_LOCAL_NODE ||                           
   46e28:	7001           	moveq #1,%d0                                <== NOT EXECUTED
       _Objects_Is_local_node( node )                                 
      ))                                                              
   search_local_node = true;                                          
                                                                      
  if ( search_local_node ) {                                          
    for ( index = 1; index <= information->maximum; index++ ) {       
   46e2a:	0281 0000 ffff 	andil #65535,%d1                            <== NOT EXECUTED
   46e30:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   46e32:	64d6           	bccs 46e0a <_Objects_Name_to_id_u32+0x3a>   <== NOT EXECUTED
   46e34:	6004           	bras 46e3a <_Objects_Name_to_id_u32+0x6a>   <== NOT EXECUTED
#endif                                                                
                                                                      
  /* ASSERT: information->is_string == false */                       
                                                                      
  if ( !id )                                                          
    return OBJECTS_INVALID_ADDRESS;                                   
   46e36:	7002           	moveq #2,%d0                                <== NOT EXECUTED
   46e38:	6002           	bras 46e3c <_Objects_Name_to_id_u32+0x6c>   <== NOT EXECUTED
    return OBJECTS_INVALID_NAME;                                      
                                                                      
  name_for_mp.name_u32 = name;                                        
  return _Objects_MP_Global_name_search( information, name_for_mp, node, id );
#else                                                                 
  return OBJECTS_INVALID_NAME;                                        
   46e3a:	7001           	moveq #1,%d0                                <== NOT EXECUTED
#endif                                                                
}                                                                     
   46e3c:	4cd7 040c      	moveml %sp@,%d2-%d3/%a2                     <== NOT EXECUTED
   46e40:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000489cc <_Objects_Set_name>: { size_t length; const char *s; s = name; length = strnlen( name, information->name_length );
   489cc:	4280           	clrl %d0                                    <== NOT EXECUTED
bool _Objects_Set_name(                                               
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  const char          *name                                           
)                                                                     
{                                                                     
   489ce:	4e56 fff4      	linkw %fp,#-12                              <== NOT EXECUTED
  size_t                 length;                                      
  const char            *s;                                           
                                                                      
  s      = name;                                                      
  length = strnlen( name, information->name_length );                 
   489d2:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   489d6:	3028 0032      	movew %a0@(50),%d0                          <== NOT EXECUTED
bool _Objects_Set_name(                                               
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  const char          *name                                           
)                                                                     
{                                                                     
   489da:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     <== NOT EXECUTED
   489de:	246e 0010      	moveal %fp@(16),%a2                         <== NOT EXECUTED
    d[length] = '\0';                                                 
    the_object->name.name_p = d;                                      
  } else                                                              
#endif                                                                
  {                                                                   
    the_object->name.name_u32 =  _Objects_Build_name(                 
   489e2:	7601           	moveq #1,%d3                                <== NOT EXECUTED
{                                                                     
  size_t                 length;                                      
  const char            *s;                                           
                                                                      
  s      = name;                                                      
  length = strnlen( name, information->name_length );                 
   489e4:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   489e6:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   489e8:	4eb9 0004 eb68 	jsr 4eb68 <strnlen>                         <== NOT EXECUTED
    d[length] = '\0';                                                 
    the_object->name.name_p = d;                                      
  } else                                                              
#endif                                                                
  {                                                                   
    the_object->name.name_u32 =  _Objects_Build_name(                 
   489ee:	508f           	addql #8,%sp                                <== NOT EXECUTED
   489f0:	7218           	moveq #24,%d1                               <== NOT EXECUTED
   489f2:	1412           	moveb %a2@,%d2                              <== NOT EXECUTED
   489f4:	49c2           	extbl %d2                                   <== NOT EXECUTED
   489f6:	e3aa           	lsll %d1,%d2                                <== NOT EXECUTED
   489f8:	7220           	moveq #32,%d1                               <== NOT EXECUTED
   489fa:	4841           	swap %d1                                    <== NOT EXECUTED
   489fc:	b680           	cmpl %d0,%d3                                <== NOT EXECUTED
   489fe:	640a           	bccs 48a0a <_Objects_Set_name+0x3e>         <== NOT EXECUTED
   48a00:	122a 0001      	moveb %a2@(1),%d1                           <== NOT EXECUTED
   48a04:	49c1           	extbl %d1                                   <== NOT EXECUTED
   48a06:	4841           	swap %d1                                    <== NOT EXECUTED
   48a08:	4241           	clrw %d1                                    <== NOT EXECUTED
   48a0a:	7602           	moveq #2,%d3                                <== NOT EXECUTED
   48a0c:	8481           	orl %d1,%d2                                 <== NOT EXECUTED
   48a0e:	223c 0000 2000 	movel #8192,%d1                             <== NOT EXECUTED
   48a14:	b680           	cmpl %d0,%d3                                <== NOT EXECUTED
   48a16:	6408           	bccs 48a20 <_Objects_Set_name+0x54>         <== NOT EXECUTED
   48a18:	122a 0002      	moveb %a2@(2),%d1                           <== NOT EXECUTED
   48a1c:	49c1           	extbl %d1                                   <== NOT EXECUTED
   48a1e:	e189           	lsll #8,%d1                                 <== NOT EXECUTED
   48a20:	8282           	orl %d2,%d1                                 <== NOT EXECUTED
   48a22:	7403           	moveq #3,%d2                                <== NOT EXECUTED
   48a24:	b480           	cmpl %d0,%d2                                <== NOT EXECUTED
   48a26:	6408           	bccs 48a30 <_Objects_Set_name+0x64>         <== NOT EXECUTED
   48a28:	102a 0003      	moveb %a2@(3),%d0                           <== NOT EXECUTED
   48a2c:	49c0           	extbl %d0                                   <== NOT EXECUTED
   48a2e:	6002           	bras 48a32 <_Objects_Set_name+0x66>         <== NOT EXECUTED
   48a30:	7020           	moveq #32,%d0                               <== NOT EXECUTED
   48a32:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
   48a36:	8280           	orl %d0,%d1                                 <== NOT EXECUTED
    );                                                                
                                                                      
  }                                                                   
                                                                      
  return true;                                                        
}                                                                     
   48a38:	7001           	moveq #1,%d0                                <== NOT EXECUTED
    d[length] = '\0';                                                 
    the_object->name.name_p = d;                                      
  } else                                                              
#endif                                                                
  {                                                                   
    the_object->name.name_u32 =  _Objects_Build_name(                 
   48a3a:	2141 000c      	movel %d1,%a0@(12)                          <== NOT EXECUTED
    );                                                                
                                                                      
  }                                                                   
                                                                      
  return true;                                                        
}                                                                     
   48a3e:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   48a44:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046e44 <_Objects_Shrink_information>: /* * Search the list to find block or chunk with all objects inactive. */ index_base = _Objects_Get_index( information->minimum_id ); block_count = (information->maximum - index_base) /
   46e44:	4280           	clrl %d0                                    <== NOT EXECUTED
 */                                                                   
                                                                      
void _Objects_Shrink_information(                                     
  Objects_Information *information                                    
)                                                                     
{                                                                     
   46e46:	4e56 ffec      	linkw %fp,#-20                              <== NOT EXECUTED
   46e4a:	48d7 0c1c      	moveml %d2-%d4/%a2-%a3,%sp@                 <== NOT EXECUTED
   46e4e:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
                                                                      
  /*                                                                  
   * Search the list to find block or chunk with all objects inactive.
   */                                                                 
                                                                      
  index_base = _Objects_Get_index( information->minimum_id );         
   46e52:	4283           	clrl %d3                                    <== NOT EXECUTED
  block_count = (information->maximum - index_base) /                 
   46e54:	4284           	clrl %d4                                    <== NOT EXECUTED
                                                                      
  /*                                                                  
   * Search the list to find block or chunk with all objects inactive.
   */                                                                 
                                                                      
  index_base = _Objects_Get_index( information->minimum_id );         
   46e56:	362a 0008      	movew %a2@(8),%d3                           <== NOT EXECUTED
  block_count = (information->maximum - index_base) /                 
   46e5a:	302a 000e      	movew %a2@(14),%d0                          <== NOT EXECUTED
   46e5e:	382a 0012      	movew %a2@(18),%d4                          <== NOT EXECUTED
   46e62:	9083           	subl %d3,%d0                                <== NOT EXECUTED
   46e64:	4c44 0000      	remul %d4,%d0,%d0                           <== NOT EXECUTED
                 information->allocation_size;                        
                                                                      
  for ( block = 0; block < block_count; block++ ) {                   
   46e68:	4281           	clrl %d1                                    <== NOT EXECUTED
   46e6a:	6072           	bras 46ede <_Objects_Shrink_information+0x9a><== NOT EXECUTED
   46e6c:	2401           	movel %d1,%d2                               <== NOT EXECUTED
   46e6e:	e58a           	lsll #2,%d2                                 <== NOT EXECUTED
    if ( information->inactive_per_block[ block ] ==                  
   46e70:	206a 002a      	moveal %a2@(42),%a0                         <== NOT EXECUTED
   46e74:	b8b0 2800      	cmpl %a0@(00000000,%d2:l),%d4               <== NOT EXECUTED
   46e78:	6660           	bnes 46eda <_Objects_Shrink_information+0x96><== NOT EXECUTED
         information->allocation_size ) {                             
                                                                      
      /*                                                              
       *  Assume the Inactive chain is never empty at this point      
       */                                                             
      the_object = (Objects_Control *) _Chain_First( &information->Inactive );
   46e7a:	206a 001c      	moveal %a2@(28),%a0                         <== NOT EXECUTED
          */                                                          
         extract_me = the_object;                                     
         the_object = (Objects_Control *) the_object->Node.next;      
         if ((index >= index_base) &&                                 
             (index < (index_base + information->allocation_size))) { 
           _Chain_Extract( &extract_me->Node );                       
   46e7e:	47f9 0004 5f94 	lea 45f94 <_Chain_Extract>,%a3              <== NOT EXECUTED
   46e84:	6002           	bras 46e88 <_Objects_Shrink_information+0x44><== NOT EXECUTED
         index = _Objects_Get_index( the_object->id );                
         /*                                                           
          *  Get the next node before the node is extracted           
          */                                                          
         extract_me = the_object;                                     
         the_object = (Objects_Control *) the_object->Node.next;      
   46e86:	2044           	moveal %d4,%a0                              <== NOT EXECUTED
       *  Assume the Inactive chain is never empty at this point      
       */                                                             
      the_object = (Objects_Control *) _Chain_First( &information->Inactive );
                                                                      
      do {                                                            
         index = _Objects_Get_index( the_object->id );                
   46e88:	4280           	clrl %d0                                    <== NOT EXECUTED
   46e8a:	3028 000a      	movew %a0@(10),%d0                          <== NOT EXECUTED
         /*                                                           
          *  Get the next node before the node is extracted           
          */                                                          
         extract_me = the_object;                                     
         the_object = (Objects_Control *) the_object->Node.next;      
   46e8e:	2810           	movel %a0@,%d4                              <== NOT EXECUTED
         if ((index >= index_base) &&                                 
   46e90:	b680           	cmpl %d0,%d3                                <== NOT EXECUTED
   46e92:	6212           	bhis 46ea6 <_Objects_Shrink_information+0x62><== NOT EXECUTED
             (index < (index_base + information->allocation_size))) { 
   46e94:	4281           	clrl %d1                                    <== NOT EXECUTED
   46e96:	322a 0012      	movew %a2@(18),%d1                          <== NOT EXECUTED
   46e9a:	d283           	addl %d3,%d1                                <== NOT EXECUTED
         /*                                                           
          *  Get the next node before the node is extracted           
          */                                                          
         extract_me = the_object;                                     
         the_object = (Objects_Control *) the_object->Node.next;      
         if ((index >= index_base) &&                                 
   46e9c:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   46e9e:	6306           	blss 46ea6 <_Objects_Shrink_information+0x62><== NOT EXECUTED
             (index < (index_base + information->allocation_size))) { 
           _Chain_Extract( &extract_me->Node );                       
   46ea0:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   46ea2:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   46ea4:	588f           	addql #4,%sp                                <== NOT EXECUTED
         }                                                            
       }                                                              
       while ( the_object );                                          
   46ea6:	4a84           	tstl %d4                                    <== NOT EXECUTED
   46ea8:	66dc           	bnes 46e86 <_Objects_Shrink_information+0x42><== NOT EXECUTED
      /*                                                              
       *  Free the memory and reset the structures in the object' information
       */                                                             
                                                                      
      _Workspace_Free( information->object_blocks[ block ] );         
   46eaa:	206a 002e      	moveal %a2@(46),%a0                         <== NOT EXECUTED
   46eae:	2f30 2800      	movel %a0@(00000000,%d2:l),%sp@-            <== NOT EXECUTED
   46eb2:	4eb9 0004 86dc 	jsr 486dc <_Workspace_Free>                 <== NOT EXECUTED
      information->object_blocks[ block ] = NULL;                     
   46eb8:	206a 002e      	moveal %a2@(46),%a0                         <== NOT EXECUTED
      information->inactive_per_block[ block ] = 0;                   
                                                                      
      information->inactive -= information->allocation_size;          
                                                                      
      return;                                                         
   46ebc:	588f           	addql #4,%sp                                <== NOT EXECUTED
      /*                                                              
       *  Free the memory and reset the structures in the object' information
       */                                                             
                                                                      
      _Workspace_Free( information->object_blocks[ block ] );         
      information->object_blocks[ block ] = NULL;                     
   46ebe:	42b0 2800      	clrl %a0@(00000000,%d2:l)                   <== NOT EXECUTED
      information->inactive_per_block[ block ] = 0;                   
   46ec2:	206a 002a      	moveal %a2@(42),%a0                         <== NOT EXECUTED
                                                                      
      information->inactive -= information->allocation_size;          
   46ec6:	302a 0028      	movew %a2@(40),%d0                          <== NOT EXECUTED
   46eca:	322a 0012      	movew %a2@(18),%d1                          <== NOT EXECUTED
       *  Free the memory and reset the structures in the object' information
       */                                                             
                                                                      
      _Workspace_Free( information->object_blocks[ block ] );         
      information->object_blocks[ block ] = NULL;                     
      information->inactive_per_block[ block ] = 0;                   
   46ece:	42b0 2800      	clrl %a0@(00000000,%d2:l)                   <== NOT EXECUTED
                                                                      
      information->inactive -= information->allocation_size;          
   46ed2:	9081           	subl %d1,%d0                                <== NOT EXECUTED
   46ed4:	3540 0028      	movew %d0,%a2@(40)                          <== NOT EXECUTED
                                                                      
      return;                                                         
   46ed8:	6008           	bras 46ee2 <_Objects_Shrink_information+0x9e><== NOT EXECUTED
    }                                                                 
                                                                      
    index_base += information->allocation_size;                       
   46eda:	d684           	addl %d4,%d3                                <== NOT EXECUTED
                                                                      
  index_base = _Objects_Get_index( information->minimum_id );         
  block_count = (information->maximum - index_base) /                 
                 information->allocation_size;                        
                                                                      
  for ( block = 0; block < block_count; block++ ) {                   
   46edc:	5281           	addql #1,%d1                                <== NOT EXECUTED
   46ede:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   46ee0:	628a           	bhis 46e6c <_Objects_Shrink_information+0x28><== NOT EXECUTED
      return;                                                         
    }                                                                 
                                                                      
    index_base += information->allocation_size;                       
  }                                                                   
}                                                                     
   46ee2:	4cee 0c1c ffec 	moveml %fp@(-20),%d2-%d4/%a2-%a3            <== NOT EXECUTED
   46ee8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000471cc <_Protected_heap_Extend>: bool _Protected_heap_Extend( Heap_Control *the_heap, void *starting_address, uintptr_t size ) {
   471cc:	4e56 fff8      	linkw %fp,#-8                               <== NOT EXECUTED
  bool      extend_ok;                                                
  uintptr_t amount_extended;                                          
                                                                      
  _RTEMS_Lock_allocator();                                            
   471d0:	2f39 0005 cdb4 	movel 5cdb4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   471d6:	4eb9 0004 61dc 	jsr 461dc <_API_Mutex_Lock>                 <== NOT EXECUTED
    extend_ok = _Heap_Extend(the_heap, starting_address, size, &amount_extended);
   471dc:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   471e0:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   471e4:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   471e8:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   471ec:	4eb9 0004 a61c 	jsr 4a61c <_Heap_Extend>                    <== NOT EXECUTED
  _RTEMS_Unlock_allocator();                                          
   471f2:	2f39 0005 cdb4 	movel 5cdb4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   471f8:	2d40 fff8      	movel %d0,%fp@(-8)                          <== NOT EXECUTED
   471fc:	4eb9 0004 623c 	jsr 4623c <_API_Mutex_Unlock>               <== NOT EXECUTED
  return extend_ok;                                                   
}                                                                     
   47202:	202e fff8      	movel %fp@(-8),%d0                          <== NOT EXECUTED
   47206:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004b2b4 <_Protected_heap_Get_free_information>: bool _Protected_heap_Get_free_information( Heap_Control *the_heap, Heap_Information *info ) {
   4b2b4:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  /*                                                                  
   * TBD: _Heap_Get_free_information does not error check or return status.
   */                                                                 
                                                                      
  _RTEMS_Lock_allocator();                                            
   4b2b8:	2f39 0006 2014 	movel 62014 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   4b2be:	4eb9 0004 99d0 	jsr 499d0 <_API_Mutex_Lock>                 <== NOT EXECUTED
    _Heap_Get_free_information( the_heap, info );                     
   4b2c4:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   4b2c8:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4b2cc:	4eb9 0004 e8c0 	jsr 4e8c0 <_Heap_Get_free_information>      <== NOT EXECUTED
  _RTEMS_Unlock_allocator();                                          
   4b2d2:	2f39 0006 2014 	movel 62014 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   4b2d8:	4eb9 0004 9a30 	jsr 49a30 <_API_Mutex_Unlock>               <== NOT EXECUTED
                                                                      
  return true;                                                        
}                                                                     
   4b2de:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4b2e0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004758c <_Protected_heap_Get_information>: bool _Protected_heap_Get_information( Heap_Control *the_heap, Heap_Information_block *the_info ) {
   4758c:	4e56 0000      	linkw %fp,#0                                
   47590:	2f03           	movel %d3,%sp@-                             
   47592:	262e 000c      	movel %fp@(12),%d3                          
   47596:	2f02           	movel %d2,%sp@-                             
   47598:	242e 0008      	movel %fp@(8),%d2                           
  if ( !the_heap )                                                    
   4759c:	672e           	beqs 475cc <_Protected_heap_Get_information+0x40><== NEVER TAKEN
    return false;                                                     
                                                                      
  if ( !the_info )                                                    
   4759e:	4a83           	tstl %d3                                    
   475a0:	672a           	beqs 475cc <_Protected_heap_Get_information+0x40><== NEVER TAKEN
    return false;                                                     
                                                                      
  _RTEMS_Lock_allocator();                                            
   475a2:	2f39 0005 d098 	movel 5d098 <_RTEMS_Allocator_Mutex>,%sp@-  
   475a8:	4eb9 0004 6564 	jsr 46564 <_API_Mutex_Lock>                 
    _Heap_Get_information( the_heap, the_info );                      
   475ae:	2f03           	movel %d3,%sp@-                             
   475b0:	2f02           	movel %d2,%sp@-                             
   475b2:	4eb9 0004 ade8 	jsr 4ade8 <_Heap_Get_information>           
  _RTEMS_Unlock_allocator();                                          
   475b8:	2f39 0005 d098 	movel 5d098 <_RTEMS_Allocator_Mutex>,%sp@-  
   475be:	4eb9 0004 65c4 	jsr 465c4 <_API_Mutex_Unlock>               
                                                                      
  return true;                                                        
   475c4:	4fef 0010      	lea %sp@(16),%sp                            
   475c8:	7001           	moveq #1,%d0                                
   475ca:	6002           	bras 475ce <_Protected_heap_Get_information+0x42>
{                                                                     
  if ( !the_heap )                                                    
    return false;                                                     
                                                                      
  if ( !the_info )                                                    
    return false;                                                     
   475cc:	4200           	clrb %d0                                    
  _RTEMS_Lock_allocator();                                            
    _Heap_Get_information( the_heap, the_info );                      
  _RTEMS_Unlock_allocator();                                          
                                                                      
  return true;                                                        
}                                                                     
   475ce:	242e fff8      	movel %fp@(-8),%d2                          
   475d2:	262e fffc      	movel %fp@(-4),%d3                          
   475d6:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

000592c0 <_Protected_heap_Resize_block>: bool _Protected_heap_Resize_block( Heap_Control *the_heap, void *starting_address, uintptr_t size ) {
   592c0:	4e56 fff8      	linkw %fp,#-8                               <== NOT EXECUTED
   592c4:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  Heap_Resize_status status;                                          
  uintptr_t          old_mem_size;                                    
  uintptr_t          avail_mem_size;                                  
                                                                      
  _RTEMS_Lock_allocator();                                            
   592c6:	2f39 0005 c788 	movel 5c788 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   592cc:	4eb9 0004 5ec8 	jsr 45ec8 <_API_Mutex_Lock>                 <== NOT EXECUTED
    status = _Heap_Resize_block(                                      
   592d2:	486e fff8      	pea %fp@(-8)                                <== NOT EXECUTED
   592d6:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   592da:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   592de:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   592e2:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   592e6:	4eb9 0005 930c 	jsr 5930c <_Heap_Resize_block>              <== NOT EXECUTED
      the_heap, starting_address, size, &old_mem_size, &avail_mem_size );
  _RTEMS_Unlock_allocator();                                          
   592ec:	2f39 0005 c788 	movel 5c788 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
  Heap_Resize_status status;                                          
  uintptr_t          old_mem_size;                                    
  uintptr_t          avail_mem_size;                                  
                                                                      
  _RTEMS_Lock_allocator();                                            
    status = _Heap_Resize_block(                                      
   592f2:	2400           	movel %d0,%d2                               <== NOT EXECUTED
      the_heap, starting_address, size, &old_mem_size, &avail_mem_size );
  _RTEMS_Unlock_allocator();                                          
   592f4:	4eb9 0004 5f28 	jsr 45f28 <_API_Mutex_Unlock>               <== NOT EXECUTED
  return (status == HEAP_RESIZE_SUCCESSFUL);                          
   592fa:	4fef 001c      	lea %sp@(28),%sp                            <== NOT EXECUTED
   592fe:	4a82           	tstl %d2                                    <== NOT EXECUTED
   59300:	57c0           	seq %d0                                     <== NOT EXECUTED
}                                                                     
   59302:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   59306:	4480           	negl %d0                                    <== NOT EXECUTED
   59308:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004b390 <_Protected_heap_Walk>: bool _Protected_heap_Walk( Heap_Control *the_heap, int source, bool do_dump ) {
   4b390:	4e56 fff0      	linkw %fp,#-16                              <== NOT EXECUTED
   * then it is forbidden to lock a mutex.  But since we are inside   
   * a critical section, it should be safe to walk it unlocked.       
   *                                                                  
   * NOTE: Dispatching is also disabled during initialization.        
   */                                                                 
  if ( !_Thread_Dispatch_disable_level ) {                            
   4b394:	2039 0006 1f54 	movel 61f54 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
bool _Protected_heap_Walk(                                            
  Heap_Control *the_heap,                                             
  int           source,                                               
  bool          do_dump                                               
)                                                                     
{                                                                     
   4b39a:	48d7 001c      	moveml %d2-%d4,%sp@                         <== NOT EXECUTED
   4b39e:	4284           	clrl %d4                                    <== NOT EXECUTED
   4b3a0:	182e 0013      	moveb %fp@(19),%d4                          <== NOT EXECUTED
   4b3a4:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
   4b3a8:	262e 000c      	movel %fp@(12),%d3                          <== NOT EXECUTED
   * then it is forbidden to lock a mutex.  But since we are inside   
   * a critical section, it should be safe to walk it unlocked.       
   *                                                                  
   * NOTE: Dispatching is also disabled during initialization.        
   */                                                                 
  if ( !_Thread_Dispatch_disable_level ) {                            
   4b3ac:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4b3ae:	663a           	bnes 4b3ea <_Protected_heap_Walk+0x5a>      <== NOT EXECUTED
    _RTEMS_Lock_allocator();                                          
   4b3b0:	2f39 0006 2014 	movel 62014 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   4b3b6:	4eb9 0004 99d0 	jsr 499d0 <_API_Mutex_Lock>                 <== NOT EXECUTED
      status = _Heap_Walk( the_heap, source, do_dump );               
   4b3bc:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4b3be:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4b3c0:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4b3c2:	4eb9 0004 a6d6 	jsr 4a6d6 <_Heap_Walk>                      <== NOT EXECUTED
    _RTEMS_Unlock_allocator();                                        
   4b3c8:	2f39 0006 2014 	movel 62014 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   4b3ce:	2d40 fffc      	movel %d0,%fp@(-4)                          <== NOT EXECUTED
   4b3d2:	4eb9 0004 9a30 	jsr 49a30 <_API_Mutex_Unlock>               <== NOT EXECUTED
  } else {                                                            
    status = _Heap_Walk( the_heap, source, do_dump );                 
  }                                                                   
  return status;                                                      
}                                                                     
   4b3d8:	202e fffc      	movel %fp@(-4),%d0                          <== NOT EXECUTED
   * NOTE: Dispatching is also disabled during initialization.        
   */                                                                 
  if ( !_Thread_Dispatch_disable_level ) {                            
    _RTEMS_Lock_allocator();                                          
      status = _Heap_Walk( the_heap, source, do_dump );               
    _RTEMS_Unlock_allocator();                                        
   4b3dc:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
  } else {                                                            
    status = _Heap_Walk( the_heap, source, do_dump );                 
  }                                                                   
  return status;                                                      
}                                                                     
   4b3e0:	4cee 001c fff0 	moveml %fp@(-16),%d2-%d4                    <== NOT EXECUTED
   4b3e6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4b3e8:	4e75           	rts                                         <== NOT EXECUTED
  if ( !_Thread_Dispatch_disable_level ) {                            
    _RTEMS_Lock_allocator();                                          
      status = _Heap_Walk( the_heap, source, do_dump );               
    _RTEMS_Unlock_allocator();                                        
  } else {                                                            
    status = _Heap_Walk( the_heap, source, do_dump );                 
   4b3ea:	2d44 0010      	movel %d4,%fp@(16)                          <== NOT EXECUTED
   4b3ee:	2d43 000c      	movel %d3,%fp@(12)                          <== NOT EXECUTED
   4b3f2:	2d42 0008      	movel %d2,%fp@(8)                           <== NOT EXECUTED
  }                                                                   
  return status;                                                      
}                                                                     
   4b3f6:	4cee 001c fff0 	moveml %fp@(-16),%d2-%d4                    <== NOT EXECUTED
   4b3fc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  if ( !_Thread_Dispatch_disable_level ) {                            
    _RTEMS_Lock_allocator();                                          
      status = _Heap_Walk( the_heap, source, do_dump );               
    _RTEMS_Unlock_allocator();                                        
  } else {                                                            
    status = _Heap_Walk( the_heap, source, do_dump );                 
   4b3fe:	4ef9 0004 a6d6 	jmp 4a6d6 <_Heap_Walk>                      <== NOT EXECUTED
                                                                      

00049f28 <_RTEMS_Tasks_Invoke_task_variable_dtor>: void _RTEMS_Tasks_Invoke_task_variable_dtor( Thread_Control *the_thread, rtems_task_variable_t *tvp ) {
   49f28:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  void (*dtor)(void *);                                               
  void *value;                                                        
                                                                      
  dtor = tvp->dtor;                                                   
  if (_Thread_Is_executing(the_thread)) {                             
   49f2c:	2039 0005 c884 	movel 5c884 <_Per_CPU_Information+0xc>,%d0  <== NOT EXECUTED
                                                                      
void _RTEMS_Tasks_Invoke_task_variable_dtor(                          
  Thread_Control        *the_thread,                                  
  rtems_task_variable_t *tvp                                          
)                                                                     
{                                                                     
   49f32:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   49f34:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
  void (*dtor)(void *);                                               
  void *value;                                                        
                                                                      
  dtor = tvp->dtor;                                                   
   49f38:	206a 0010      	moveal %a2@(16),%a0                         <== NOT EXECUTED
  if (_Thread_Is_executing(the_thread)) {                             
   49f3c:	b0ae 0008      	cmpl %fp@(8),%d0                            <== NOT EXECUTED
   49f40:	660c           	bnes 49f4e <_RTEMS_Tasks_Invoke_task_variable_dtor+0x26><== NOT EXECUTED
    value = *tvp->ptr;                                                
   49f42:	226a 0004      	moveal %a2@(4),%a1                          <== NOT EXECUTED
   49f46:	2011           	movel %a1@,%d0                              <== NOT EXECUTED
    *tvp->ptr = tvp->gval;                                            
   49f48:	22aa 0008      	movel %a2@(8),%a1@                          <== NOT EXECUTED
   49f4c:	6004           	bras 49f52 <_RTEMS_Tasks_Invoke_task_variable_dtor+0x2a><== NOT EXECUTED
  } else {                                                            
    value = tvp->tval;                                                
   49f4e:	202a 000c      	movel %a2@(12),%d0                          <== NOT EXECUTED
  }                                                                   
                                                                      
  if ( dtor )                                                         
   49f52:	4a88           	tstl %a0                                    <== NOT EXECUTED
   49f54:	6706           	beqs 49f5c <_RTEMS_Tasks_Invoke_task_variable_dtor+0x34><== NOT EXECUTED
    (*dtor)(value);                                                   
   49f56:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   49f58:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   49f5a:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  _Workspace_Free(tvp);                                               
   49f5c:	2d4a 0008      	movel %a2,%fp@(8)                           <== NOT EXECUTED
}                                                                     
   49f60:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   49f64:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  }                                                                   
                                                                      
  if ( dtor )                                                         
    (*dtor)(value);                                                   
                                                                      
  _Workspace_Free(tvp);                                               
   49f66:	4ef9 0004 86dc 	jmp 486dc <_Workspace_Free>                 <== NOT EXECUTED
                                                                      

00049e68 <_RTEMS_tasks_Create_extension>: bool _RTEMS_tasks_Create_extension( Thread_Control *executing, Thread_Control *created ) {
   49e68:	4e56 0000      	linkw %fp,#0                                
   49e6c:	2f0a           	movel %a2,%sp@-                             
   49e6e:	246e 000c      	moveal %fp@(12),%a2                         
  /*                                                                  
   *  Notepads must be the last entry in the structure and they       
   *  can be left off if disabled in the configuration.               
   */                                                                 
  to_allocate = sizeof( RTEMS_API_Control );                          
  if ( !rtems_configuration_get_notepads_enabled() )                  
   49e72:	4a39 0005 ae64 	tstb 5ae64 <Configuration_RTEMS_API+0x4>    
   49e78:	6704           	beqs 49e7e <_RTEMS_tasks_Create_extension+0x16>
                                                                      
  /*                                                                  
   *  Notepads must be the last entry in the structure and they       
   *  can be left off if disabled in the configuration.               
   */                                                                 
  to_allocate = sizeof( RTEMS_API_Control );                          
   49e7a:	705e           	moveq #94,%d0                               
   49e7c:	6002           	bras 49e80 <_RTEMS_tasks_Create_extension+0x18>
  if ( !rtems_configuration_get_notepads_enabled() )                  
    to_allocate -= (RTEMS_NUMBER_NOTEPADS * sizeof(uint32_t));        
   49e7e:	701e           	moveq #30,%d0                               
                                                                      
  api = _Workspace_Allocate( to_allocate );                           
   49e80:	2f00           	movel %d0,%sp@-                             
   49e82:	4eb9 0004 86c0 	jsr 486c0 <_Workspace_Allocate>             
                                                                      
  if ( !api )                                                         
   49e88:	588f           	addql #4,%sp                                
   */                                                                 
  to_allocate = sizeof( RTEMS_API_Control );                          
  if ( !rtems_configuration_get_notepads_enabled() )                  
    to_allocate -= (RTEMS_NUMBER_NOTEPADS * sizeof(uint32_t));        
                                                                      
  api = _Workspace_Allocate( to_allocate );                           
   49e8a:	2040           	moveal %d0,%a0                              
                                                                      
  if ( !api )                                                         
   49e8c:	4a80           	tstl %d0                                    
   49e8e:	673e           	beqs 49ece <_RTEMS_tasks_Create_extension+0x66><== NEVER TAKEN
    return false;                                                     
                                                                      
  created->API_Extensions[ THREAD_API_RTEMS ] = api;                  
   49e90:	2540 00fc      	movel %d0,%a2@(252)                         
 */                                                                   
RTEMS_INLINE_ROUTINE void _ASR_Initialize (                           
  ASR_Information *information                                        
)                                                                     
{                                                                     
  information->is_enabled      = false;                               
   49e94:	4200           	clrb %d0                                    
                                                                      
  api->pending_events = EVENT_SETS_NONE_PENDING;                      
   49e96:	4290           	clrl %a0@                                   
   49e98:	1140 0008      	moveb %d0,%a0@(8)                           
  api->event_condition = 0;                                           
   49e9c:	42a8 0004      	clrl %a0@(4)                                
  information->handler         = NULL;                                
   49ea0:	42a8 000a      	clrl %a0@(10)                               
  information->mode_set        = RTEMS_DEFAULT_MODES;                 
   49ea4:	42a8 000e      	clrl %a0@(14)                               
  information->signals_posted  = 0;                                   
   49ea8:	42a8 0012      	clrl %a0@(18)                               
  information->signals_pending = 0;                                   
   49eac:	42a8 0016      	clrl %a0@(22)                               
  information->nest_level      = 0;                                   
   49eb0:	42a8 001a      	clrl %a0@(26)                               
  _ASR_Initialize( &api->Signal );                                    
  created->task_variables = NULL;                                     
   49eb4:	42aa 0108      	clrl %a2@(264)                              
                                                                      
  if ( rtems_configuration_get_notepads_enabled() ) {                 
   49eb8:	4a39 0005 ae64 	tstb 5ae64 <Configuration_RTEMS_API+0x4>    
   49ebe:	6712           	beqs 49ed2 <_RTEMS_tasks_Create_extension+0x6a>
 *  task is created via another API, then this routine is invoked     
 *  and this API given the opportunity to initialize its extension    
 *  area.                                                             
 */                                                                   
                                                                      
bool _RTEMS_tasks_Create_extension(                                   
   49ec0:	41e8 001e      	lea %a0@(30),%a0                            
   49ec4:	7010           	moveq #16,%d0                               
  _ASR_Initialize( &api->Signal );                                    
  created->task_variables = NULL;                                     
                                                                      
  if ( rtems_configuration_get_notepads_enabled() ) {                 
    for (i=0; i < RTEMS_NUMBER_NOTEPADS; i++)                         
      api->Notepads[i] = 0;                                           
   49ec6:	4298           	clrl %a0@+                                  
   49ec8:	5380           	subql #1,%d0                                
  api->event_condition = 0;                                           
  _ASR_Initialize( &api->Signal );                                    
  created->task_variables = NULL;                                     
                                                                      
  if ( rtems_configuration_get_notepads_enabled() ) {                 
    for (i=0; i < RTEMS_NUMBER_NOTEPADS; i++)                         
   49eca:	66fa           	bnes 49ec6 <_RTEMS_tasks_Create_extension+0x5e>
   49ecc:	6004           	bras 49ed2 <_RTEMS_tasks_Create_extension+0x6a>
    to_allocate -= (RTEMS_NUMBER_NOTEPADS * sizeof(uint32_t));        
                                                                      
  api = _Workspace_Allocate( to_allocate );                           
                                                                      
  if ( !api )                                                         
    return false;                                                     
   49ece:	4200           	clrb %d0                                    <== NOT EXECUTED
   49ed0:	6002           	bras 49ed4 <_RTEMS_tasks_Create_extension+0x6c><== NOT EXECUTED
  if ( rtems_configuration_get_notepads_enabled() ) {                 
    for (i=0; i < RTEMS_NUMBER_NOTEPADS; i++)                         
      api->Notepads[i] = 0;                                           
  }                                                                   
                                                                      
  return true;                                                        
   49ed2:	7001           	moveq #1,%d0                                
}                                                                     
   49ed4:	246e fffc      	moveal %fp@(-4),%a2                         
   49ed8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00049e22 <_RTEMS_tasks_Delete_extension>: void _RTEMS_tasks_Delete_extension( Thread_Control *executing, Thread_Control *deleted ) {
   49e22:	4e56 fff4      	linkw %fp,#-12                              
   49e26:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     
   49e2a:	246e 000c      	moveal %fp@(12),%a2                         
                                                                      
  tvp = deleted->task_variables;                                      
  deleted->task_variables = NULL;                                     
  while (tvp) {                                                       
    next = (rtems_task_variable_t *)tvp->next;                        
    _RTEMS_Tasks_Invoke_task_variable_dtor( deleted, tvp );           
   49e2e:	47f9 0004 9f28 	lea 49f28 <_RTEMS_Tasks_Invoke_task_variable_dtor>,%a3
                                                                      
  /*                                                                  
   *  Free per task variable memory                                   
   */                                                                 
                                                                      
  tvp = deleted->task_variables;                                      
   49e34:	206a 0108      	moveal %a2@(264),%a0                        
  deleted->task_variables = NULL;                                     
   49e38:	42aa 0108      	clrl %a2@(264)                              
  while (tvp) {                                                       
   49e3c:	600c           	bras 49e4a <_RTEMS_tasks_Delete_extension+0x28>
    next = (rtems_task_variable_t *)tvp->next;                        
   49e3e:	2410           	movel %a0@,%d2                              <== NOT EXECUTED
    _RTEMS_Tasks_Invoke_task_variable_dtor( deleted, tvp );           
   49e40:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   49e42:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   49e44:	4e93           	jsr %a3@                                    <== NOT EXECUTED
    tvp = next;                                                       
   49e46:	508f           	addql #8,%sp                                <== NOT EXECUTED
   49e48:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   *  Free per task variable memory                                   
   */                                                                 
                                                                      
  tvp = deleted->task_variables;                                      
  deleted->task_variables = NULL;                                     
  while (tvp) {                                                       
   49e4a:	4a88           	tstl %a0                                    
   49e4c:	66f0           	bnes 49e3e <_RTEMS_tasks_Delete_extension+0x1c><== NEVER TAKEN
                                                                      
  /*                                                                  
   *  Free API specific memory                                        
   */                                                                 
                                                                      
  (void) _Workspace_Free( deleted->API_Extensions[ THREAD_API_RTEMS ] );
   49e4e:	2f2a 00fc      	movel %a2@(252),%sp@-                       
   49e52:	4eb9 0004 86dc 	jsr 486dc <_Workspace_Free>                 
  deleted->API_Extensions[ THREAD_API_RTEMS ] = NULL;                 
   49e58:	588f           	addql #4,%sp                                
   49e5a:	42aa 00fc      	clrl %a2@(252)                              
}                                                                     
   49e5e:	4cee 0c04 fff4 	moveml %fp@(-12),%d2/%a2-%a3                
   49e64:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00049db0 <_RTEMS_tasks_Post_switch_extension>: */ void _RTEMS_tasks_Post_switch_extension( Thread_Control *executing ) {
   49db0:	4e56 ffec      	linkw %fp,#-20                              
  RTEMS_API_Control *api;                                             
  ASR_Information   *asr;                                             
  rtems_signal_set   signal_set;                                      
  Modes_Control      prev_mode;                                       
                                                                      
  api = executing->API_Extensions[ THREAD_API_RTEMS ];                
   49db4:	206e 0008      	moveal %fp@(8),%a0                          
 */                                                                   
                                                                      
void _RTEMS_tasks_Post_switch_extension(                              
  Thread_Control *executing                                           
)                                                                     
{                                                                     
   49db8:	48d7 0c0c      	moveml %d2-%d3/%a2-%a3,%sp@                 
  RTEMS_API_Control *api;                                             
  ASR_Information   *asr;                                             
  rtems_signal_set   signal_set;                                      
  Modes_Control      prev_mode;                                       
                                                                      
  api = executing->API_Extensions[ THREAD_API_RTEMS ];                
   49dbc:	2468 00fc      	moveal %a0@(252),%a2                        
  if ( !api )                                                         
   49dc0:	4a8a           	tstl %a2                                    
   49dc2:	6754           	beqs 49e18 <_RTEMS_tasks_Post_switch_extension+0x68><== NEVER TAKEN
   *  Signal Processing                                               
   */                                                                 
                                                                      
  asr = &api->Signal;                                                 
                                                                      
  _ISR_Disable( level );                                              
   49dc4:	203c 0000 0700 	movel #1792,%d0                             
   49dca:	40c1           	movew %sr,%d1                               
   49dcc:	8081           	orl %d1,%d0                                 
   49dce:	46c0           	movew %d0,%sr                               
    signal_set = asr->signals_posted;                                 
   49dd0:	262a 0012      	movel %a2@(18),%d3                          
    asr->signals_posted = 0;                                          
   49dd4:	42aa 0012      	clrl %a2@(18)                               
  _ISR_Enable( level );                                               
   49dd8:	46c1           	movew %d1,%sr                               
                                                                      
                                                                      
  if ( !signal_set ) /* similar to _ASR_Are_signals_pending( asr ) */ 
   49dda:	4a83           	tstl %d3                                    
   49ddc:	673a           	beqs 49e18 <_RTEMS_tasks_Post_switch_extension+0x68><== ALWAYS TAKEN
    return;                                                           
                                                                      
  asr->nest_level += 1;                                               
   49dde:	52aa 001a      	addql #1,%a2@(26)                           <== NOT EXECUTED
  rtems_task_mode( asr->mode_set, RTEMS_ALL_MODE_MASKS, &prev_mode ); 
   49de2:	240e           	movel %fp,%d2                               <== NOT EXECUTED
   49de4:	5982           	subql #4,%d2                                <== NOT EXECUTED
   49de6:	47f9 0004 b748 	lea 4b748 <rtems_task_mode>,%a3             <== NOT EXECUTED
   49dec:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   49dee:	2f3c 0000 ffff 	movel #65535,%sp@-                          <== NOT EXECUTED
   49df4:	2f2a 000e      	movel %a2@(14),%sp@-                        <== NOT EXECUTED
   49df8:	4e93           	jsr %a3@                                    <== NOT EXECUTED
                                                                      
  (*asr->handler)( signal_set );                                      
   49dfa:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   49dfc:	206a 000a      	moveal %a2@(10),%a0                         <== NOT EXECUTED
   49e00:	4e90           	jsr %a0@                                    <== NOT EXECUTED
                                                                      
  asr->nest_level -= 1;                                               
   49e02:	53aa 001a      	subql #1,%a2@(26)                           <== NOT EXECUTED
  rtems_task_mode( prev_mode, RTEMS_ALL_MODE_MASKS, &prev_mode );     
   49e06:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   49e08:	2f3c 0000 ffff 	movel #65535,%sp@-                          <== NOT EXECUTED
   49e0e:	2f2e fffc      	movel %fp@(-4),%sp@-                        <== NOT EXECUTED
   49e12:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   49e14:	4fef 001c      	lea %sp@(28),%sp                            <== NOT EXECUTED
                                                                      
}                                                                     
   49e18:	4cee 0c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a3            
   49e1e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00049d5a <_RTEMS_tasks_Switch_extension>: void _RTEMS_tasks_Switch_extension( Thread_Control *executing, Thread_Control *heir ) {
   49d5a:	4e56 0000      	linkw %fp,#0                                
                                                                      
  /*                                                                  
   *  Per Task Variables                                              
   */                                                                 
                                                                      
  tvp = executing->task_variables;                                    
   49d5e:	206e 0008      	moveal %fp@(8),%a0                          
   49d62:	2068 0108      	moveal %a0@(264),%a0                        
  while (tvp) {                                                       
   49d66:	600e           	bras 49d76 <_RTEMS_tasks_Switch_extension+0x1c>
    tvp->tval = *tvp->ptr;                                            
   49d68:	2268 0004      	moveal %a0@(4),%a1                          <== NOT EXECUTED
   49d6c:	2151 000c      	movel %a1@,%a0@(12)                         <== NOT EXECUTED
    *tvp->ptr = tvp->gval;                                            
   49d70:	22a8 0008      	movel %a0@(8),%a1@                          <== NOT EXECUTED
    tvp = (rtems_task_variable_t *)tvp->next;                         
   49d74:	2050           	moveal %a0@,%a0                             <== NOT EXECUTED
  /*                                                                  
   *  Per Task Variables                                              
   */                                                                 
                                                                      
  tvp = executing->task_variables;                                    
  while (tvp) {                                                       
   49d76:	4a88           	tstl %a0                                    
   49d78:	66ee           	bnes 49d68 <_RTEMS_tasks_Switch_extension+0xe><== NEVER TAKEN
    tvp->tval = *tvp->ptr;                                            
    *tvp->ptr = tvp->gval;                                            
    tvp = (rtems_task_variable_t *)tvp->next;                         
  }                                                                   
                                                                      
  tvp = heir->task_variables;                                         
   49d7a:	206e 000c      	moveal %fp@(12),%a0                         
   49d7e:	2068 0108      	moveal %a0@(264),%a0                        
  while (tvp) {                                                       
   49d82:	600e           	bras 49d92 <_RTEMS_tasks_Switch_extension+0x38>
    tvp->gval = *tvp->ptr;                                            
   49d84:	2268 0004      	moveal %a0@(4),%a1                          <== NOT EXECUTED
   49d88:	2151 0008      	movel %a1@,%a0@(8)                          <== NOT EXECUTED
    *tvp->ptr = tvp->tval;                                            
   49d8c:	22a8 000c      	movel %a0@(12),%a1@                         <== NOT EXECUTED
    tvp = (rtems_task_variable_t *)tvp->next;                         
   49d90:	2050           	moveal %a0@,%a0                             <== NOT EXECUTED
    *tvp->ptr = tvp->gval;                                            
    tvp = (rtems_task_variable_t *)tvp->next;                         
  }                                                                   
                                                                      
  tvp = heir->task_variables;                                         
  while (tvp) {                                                       
   49d92:	4a88           	tstl %a0                                    
   49d94:	66ee           	bnes 49d84 <_RTEMS_tasks_Switch_extension+0x2a><== NEVER TAKEN
    tvp->gval = *tvp->ptr;                                            
    *tvp->ptr = tvp->tval;                                            
    tvp = (rtems_task_variable_t *)tvp->next;                         
  }                                                                   
}                                                                     
   49d96:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004611c <_Rate_monotonic_Get_status>: bool _Rate_monotonic_Get_status( Rate_monotonic_Control *the_period, Rate_monotonic_Period_time_t *wall_since_last_period, Thread_CPU_usage_t *cpu_since_last_period ) {
   4611c:	4e56 ffd4      	linkw %fp,#-44                              <== NOT EXECUTED
   46120:	48d7 1c0c      	moveml %d2-%d3/%a2-%a4,%sp@                 <== NOT EXECUTED
   46124:	266e 0008      	moveal %fp@(8),%a3                          <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Determine elapsed wall time since period initiated.             
   */                                                                 
  #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                          
    _TOD_Get_uptime( &uptime );                                       
   46128:	240e           	movel %fp,%d2                               <== NOT EXECUTED
   4612a:	5182           	subql #8,%d2                                <== NOT EXECUTED
    _Timestamp_Subtract(                                              
   4612c:	45f9 0004 9888 	lea 49888 <_Timespec_Subtract>,%a2          <== NOT EXECUTED
)                                                                     
{                                                                     
  #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                          
    Timestamp_Control        uptime;                                  
  #endif                                                              
    Thread_Control          *owning_thread = the_period->owner;       
   46132:	286b 0040      	moveal %a3@(64),%a4                         <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Determine elapsed wall time since period initiated.             
   */                                                                 
  #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                          
    _TOD_Get_uptime( &uptime );                                       
   46136:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   46138:	4eb9 0004 786c 	jsr 4786c <_TOD_Get_uptime>                 <== NOT EXECUTED
    _Timestamp_Subtract(                                              
   4613e:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   46142:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   46144:	486b 004c      	pea %a3@(76)                                <== NOT EXECUTED
   46148:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   *  Determine cpu usage since period initiated.                     
   */                                                                 
  used = owning_thread->cpu_time_used;                                
                                                                      
  #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                          
    if (owning_thread == _Thread_Executing) {                         
   4614a:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
  #endif                                                              
                                                                      
  /*                                                                  
   *  Determine cpu usage since period initiated.                     
   */                                                                 
  used = owning_thread->cpu_time_used;                                
   4614e:	202c 0082      	movel %a4@(130),%d0                         <== NOT EXECUTED
   46152:	222c 0086      	movel %a4@(134),%d1                         <== NOT EXECUTED
   46156:	2d40 fff0      	movel %d0,%fp@(-16)                         <== NOT EXECUTED
   4615a:	2d41 fff4      	movel %d1,%fp@(-12)                         <== NOT EXECUTED
                                                                      
  #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                          
    if (owning_thread == _Thread_Executing) {                         
   4615e:	b9f9 0005 e4dc 	cmpal 5e4dc <_Per_CPU_Information+0xc>,%a4  <== NOT EXECUTED
   46164:	6644           	bnes 461aa <_Rate_monotonic_Get_status+0x8e><== NOT EXECUTED
                                                                      
      Thread_CPU_usage_t ran;                                         
                                                                      
      /* How much time time since last context switch */              
      _Timestamp_Subtract(                                            
   46166:	260e           	movel %fp,%d3                               <== NOT EXECUTED
   46168:	0683 ffff ffe8 	addil #-24,%d3                              <== NOT EXECUTED
                                                                      
      /*                                                              
       *  The cpu usage info was reset while executing.  Can't        
       *  determine a status.                                         
       */                                                             
      if (_Timestamp_Less_than(&used, &the_period->cpu_usage_period_initiated))
   4616e:	47eb 0044      	lea %a3@(68),%a3                            <== NOT EXECUTED
    if (owning_thread == _Thread_Executing) {                         
                                                                      
      Thread_CPU_usage_t ran;                                         
                                                                      
      /* How much time time since last context switch */              
      _Timestamp_Subtract(                                            
   46172:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   46174:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   46176:	4879 0005 e3ec 	pea 5e3ec <_Thread_Time_of_last_context_switch><== NOT EXECUTED
        &_Thread_Time_of_last_context_switch, &uptime, &ran           
      );                                                              
                                                                      
      /* cpu usage += ran */                                          
      _Timestamp_Add_to( &used, &ran );                               
   4617c:	5182           	subql #8,%d2                                <== NOT EXECUTED
    if (owning_thread == _Thread_Executing) {                         
                                                                      
      Thread_CPU_usage_t ran;                                         
                                                                      
      /* How much time time since last context switch */              
      _Timestamp_Subtract(                                            
   4617e:	4e92           	jsr %a2@                                    <== NOT EXECUTED
        &_Thread_Time_of_last_context_switch, &uptime, &ran           
      );                                                              
                                                                      
      /* cpu usage += ran */                                          
      _Timestamp_Add_to( &used, &ran );                               
   46180:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   46182:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   46184:	4eb9 0004 9760 	jsr 49760 <_Timespec_Add_to>                <== NOT EXECUTED
                                                                      
      /*                                                              
       *  The cpu usage info was reset while executing.  Can't        
       *  determine a status.                                         
       */                                                             
      if (_Timestamp_Less_than(&used, &the_period->cpu_usage_period_initiated))
   4618a:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   4618c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4618e:	4eb9 0004 9858 	jsr 49858 <_Timespec_Less_than>             <== NOT EXECUTED
   46194:	4fef 001c      	lea %sp@(28),%sp                            <== NOT EXECUTED
   46198:	4a00           	tstb %d0                                    <== NOT EXECUTED
   4619a:	6612           	bnes 461ae <_Rate_monotonic_Get_status+0x92><== NOT EXECUTED
        return false;                                                 
                                                                      
       /* used = current cpu usage - cpu usage at start of period */  
      _Timestamp_Subtract(                                            
   4619c:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   461a0:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   461a2:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   461a4:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   461a6:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
      if (used < the_period->cpu_usage_period_initiated)              
        return false;                                                 
                                                                      
      *cpu_since_last_period = used - the_period->cpu_usage_period_initiated;
  #endif                                                              
  return true;                                                        
   461aa:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   461ac:	6002           	bras 461b0 <_Rate_monotonic_Get_status+0x94><== NOT EXECUTED
      /*                                                              
       *  The cpu usage info was reset while executing.  Can't        
       *  determine a status.                                         
       */                                                             
      if (_Timestamp_Less_than(&used, &the_period->cpu_usage_period_initiated))
        return false;                                                 
   461ae:	4200           	clrb %d0                                    <== NOT EXECUTED
        return false;                                                 
                                                                      
      *cpu_since_last_period = used - the_period->cpu_usage_period_initiated;
  #endif                                                              
  return true;                                                        
}                                                                     
   461b0:	4cee 1c0c ffd4 	moveml %fp@(-44),%d2-%d3/%a2-%a4            <== NOT EXECUTED
   461b6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000461ba <_Rate_monotonic_Initiate_statistics>: void _Rate_monotonic_Initiate_statistics( Rate_monotonic_Control *the_period ) {
   461ba:	4e56 ffe0      	linkw %fp,#-32                              <== NOT EXECUTED
   461be:	48d7 0c0c      	moveml %d2-%d3/%a2-%a3,%sp@                 <== NOT EXECUTED
   461c2:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   *  If using nanosecond statistics, we need to obtain the uptime.   
   */                                                                 
  #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                          
    Timestamp_Control  uptime;                                        
                                                                      
    _TOD_Get_uptime( &uptime );                                       
   461c6:	260e           	movel %fp,%d3                               <== NOT EXECUTED
   461c8:	5183           	subql #8,%d3                                <== NOT EXECUTED
                                                                      
void _Rate_monotonic_Initiate_statistics(                             
  Rate_monotonic_Control *the_period                                  
)                                                                     
{                                                                     
  Thread_Control *owning_thread = the_period->owner;                  
   461ca:	266a 0040      	moveal %a2@(64),%a3                         <== NOT EXECUTED
   *  If using nanosecond statistics, we need to obtain the uptime.   
   */                                                                 
  #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                          
    Timestamp_Control  uptime;                                        
                                                                      
    _TOD_Get_uptime( &uptime );                                       
   461ce:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   461d0:	4eb9 0004 786c 	jsr 4786c <_TOD_Get_uptime>                 <== NOT EXECUTED
   *  routine is invoked from rtems_rate_monotonic_period, the owner will
   *  be the executing thread.  When this routine is invoked from     
   *  _Rate_monotonic_Timeout, it will not.                           
   */                                                                 
  #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                          
    if (owning_thread == _Thread_Executing) {                         
   461d6:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Set the starting point and the CPU time used for the statistics.
   */                                                                 
  #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                          
    the_period->time_period_initiated = uptime;                       
   461d8:	202e fff8      	movel %fp@(-8),%d0                          <== NOT EXECUTED
   461dc:	222e fffc      	movel %fp@(-4),%d1                          <== NOT EXECUTED
   461e0:	2540 004c      	movel %d0,%a2@(76)                          <== NOT EXECUTED
   461e4:	2541 0050      	movel %d1,%a2@(80)                          <== NOT EXECUTED
  #else                                                               
    the_period->time_period_initiated = _Watchdog_Ticks_since_boot;   
  #endif                                                              
                                                                      
  the_period->cpu_usage_period_initiated = owning_thread->cpu_time_used;
   461e8:	202b 0082      	movel %a3@(130),%d0                         <== NOT EXECUTED
   461ec:	222b 0086      	movel %a3@(134),%d1                         <== NOT EXECUTED
   461f0:	2540 0044      	movel %d0,%a2@(68)                          <== NOT EXECUTED
   461f4:	2541 0048      	movel %d1,%a2@(72)                          <== NOT EXECUTED
   *  routine is invoked from rtems_rate_monotonic_period, the owner will
   *  be the executing thread.  When this routine is invoked from     
   *  _Rate_monotonic_Timeout, it will not.                           
   */                                                                 
  #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                          
    if (owning_thread == _Thread_Executing) {                         
   461f8:	b7f9 0005 e4dc 	cmpal 5e4dc <_Per_CPU_Information+0xc>,%a3  <== NOT EXECUTED
   461fe:	6628           	bnes 46228 <_Rate_monotonic_Initiate_statistics+0x6e><== NOT EXECUTED
      /*                                                              
       *  Adjust the CPU time used to account for the time since last 
       *  context switch.                                             
       */                                                             
      _Timespec_Subtract(                                             
        &_Thread_Time_of_last_context_switch, &uptime, &ran           
   46200:	240e           	movel %fp,%d2                               <== NOT EXECUTED
   46202:	0682 ffff fff0 	addil #-16,%d2                              <== NOT EXECUTED
                                                                      
      /*                                                              
       *  Adjust the CPU time used to account for the time since last 
       *  context switch.                                             
       */                                                             
      _Timespec_Subtract(                                             
   46208:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4620a:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4620c:	4879 0005 e3ec 	pea 5e3ec <_Thread_Time_of_last_context_switch><== NOT EXECUTED
   46212:	4eb9 0004 9888 	jsr 49888 <_Timespec_Subtract>              <== NOT EXECUTED
        &_Thread_Time_of_last_context_switch, &uptime, &ran           
      );                                                              
                                                                      
      _Timespec_Add_to( &the_period->cpu_usage_period_initiated, &ran );
   46218:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4621a:	486a 0044      	pea %a2@(68)                                <== NOT EXECUTED
   4621e:	4eb9 0004 9760 	jsr 49760 <_Timespec_Add_to>                <== NOT EXECUTED
   46224:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
    }                                                                 
  #endif                                                              
}                                                                     
   46228:	4cee 0c0c ffe0 	moveml %fp@(-32),%d2-%d3/%a2-%a3            <== NOT EXECUTED
   4622e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000466e8 <_Rate_monotonic_Timeout>: void _Rate_monotonic_Timeout( Objects_Id id, void *ignored ) {
   466e8:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   466ec:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   466ee:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   466f2:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   466f6:	4879 0005 e230 	pea 5e230 <_Rate_monotonic_Information>     <== NOT EXECUTED
   466fc:	4eb9 0004 8274 	jsr 48274 <_Objects_Get>                    <== NOT EXECUTED
  /*                                                                  
   *  When we get here, the Timer is already off the chain so we do not
   *  have to worry about that -- hence no _Watchdog_Remove().        
   */                                                                 
  the_period = _Rate_monotonic_Get( id, &location );                  
  switch ( location ) {                                               
   46702:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   46706:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   46708:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4670c:	6600 0096      	bnew 467a4 <_Rate_monotonic_Timeout+0xbc>   <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      the_thread = the_period->owner;                                 
   46710:	206a 0040      	moveal %a2@(64),%a0                         <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE bool _States_Is_waiting_for_period (             
  States_Control the_states                                           
)                                                                     
{                                                                     
   return (the_states & STATES_WAITING_FOR_PERIOD);                   
   46714:	2028 0010      	movel %a0@(16),%d0                          <== NOT EXECUTED
   46718:	0280 0000 4000 	andil #16384,%d0                            <== NOT EXECUTED
      if ( _States_Is_waiting_for_period( the_thread->current_state ) &&
   4671e:	673c           	beqs 4675c <_Rate_monotonic_Timeout+0x74>   <== NOT EXECUTED
   46720:	202a 0008      	movel %a2@(8),%d0                           <== NOT EXECUTED
   46724:	b0a8 0020      	cmpl %a0@(32),%d0                           <== NOT EXECUTED
   46728:	6632           	bnes 4675c <_Rate_monotonic_Timeout+0x74>   <== NOT EXECUTED
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unblock (                           
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
  _Thread_Clear_state( the_thread, STATES_BLOCKED );                  
   4672a:	2f3c 1003 fff8 	movel #268697592,%sp@-                      <== NOT EXECUTED
   46730:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   46732:	4eb9 0004 89cc 	jsr 489cc <_Thread_Clear_state>             <== NOT EXECUTED
            the_thread->Wait.id == the_period->Object.id ) {          
        _Thread_Unblock( the_thread );                                
                                                                      
        _Rate_monotonic_Initiate_statistics( the_period );            
   46738:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4673a:	4eb9 0004 61ba 	jsr 461ba <_Rate_monotonic_Initiate_statistics><== NOT EXECUTED
  Watchdog_Control      *the_watchdog,                                
  Watchdog_Interval      units                                        
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
   46740:	256a 003c 001c 	movel %a2@(60),%a2@(28)                     <== NOT EXECUTED
                                                                      
  _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );           
   46746:	486a 0010      	pea %a2@(16)                                <== NOT EXECUTED
   4674a:	4879 0005 e400 	pea 5e400 <_Watchdog_Ticks_chain>           <== NOT EXECUTED
   46750:	4eb9 0004 9b3c 	jsr 49b3c <_Watchdog_Insert>                <== NOT EXECUTED
                                                                      
        _Watchdog_Insert_ticks( &the_period->Timer, the_period->next_length );
   46756:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   4675a:	603a           	bras 46796 <_Rate_monotonic_Timeout+0xae>   <== NOT EXECUTED
      } else if ( the_period->state == RATE_MONOTONIC_OWNER_IS_BLOCKING ) {
   4675c:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4675e:	b0aa 0038      	cmpl %a2@(56),%d0                           <== NOT EXECUTED
   46762:	662c           	bnes 46790 <_Rate_monotonic_Timeout+0xa8>   <== NOT EXECUTED
        the_period->state = RATE_MONOTONIC_EXPIRED_WHILE_BLOCKING;    
   46764:	103c 0003      	moveb #3,%d0                                <== NOT EXECUTED
   46768:	2540 0038      	movel %d0,%a2@(56)                          <== NOT EXECUTED
                                                                      
        _Rate_monotonic_Initiate_statistics( the_period );            
   4676c:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4676e:	4eb9 0004 61ba 	jsr 461ba <_Rate_monotonic_Initiate_statistics><== NOT EXECUTED
  Watchdog_Control      *the_watchdog,                                
  Watchdog_Interval      units                                        
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
   46774:	256a 003c 001c 	movel %a2@(60),%a2@(28)                     <== NOT EXECUTED
                                                                      
  _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );           
   4677a:	486a 0010      	pea %a2@(16)                                <== NOT EXECUTED
   4677e:	4879 0005 e400 	pea 5e400 <_Watchdog_Ticks_chain>           <== NOT EXECUTED
   46784:	4eb9 0004 9b3c 	jsr 49b3c <_Watchdog_Insert>                <== NOT EXECUTED
   4678a:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4678e:	6006           	bras 46796 <_Rate_monotonic_Timeout+0xae>   <== NOT EXECUTED
                                                                      
        _Watchdog_Insert_ticks( &the_period->Timer, the_period->next_length );
      } else                                                          
        the_period->state = RATE_MONOTONIC_EXPIRED;                   
   46790:	7004           	moveq #4,%d0                                <== NOT EXECUTED
   46792:	2540 0038      	movel %d0,%a2@(56)                          <== NOT EXECUTED
 */                                                                   
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unnest_dispatch( void )             
{                                                                     
  RTEMS_COMPILER_MEMORY_BARRIER();                                    
  _Thread_Dispatch_disable_level -= 1;                                
   46796:	2039 0005 e320 	movel 5e320 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   4679c:	5380           	subql #1,%d0                                <== NOT EXECUTED
   4679e:	23c0 0005 e320 	movel %d0,5e320 <_Thread_Dispatch_disable_level><== NOT EXECUTED
    case OBJECTS_REMOTE:  /* impossible */                            
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
}                                                                     
   467a4:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   467a8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046232 <_Rate_monotonic_Update_statistics>: * Update the counts. */ stats = &the_period->Statistics; stats->count++; if ( the_period->state == RATE_MONOTONIC_EXPIRED )
   46232:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
                                                                      
void _Rate_monotonic_Update_statistics(                               
  Rate_monotonic_Control    *the_period                               
)                                                                     
{                                                                     
   46234:	4e56 fff0      	linkw %fp,#-16                              <== NOT EXECUTED
   46238:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4623a:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   4623e:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Update the counts.                                              
   */                                                                 
  stats = &the_period->Statistics;                                    
  stats->count++;                                                     
   46240:	52aa 0054      	addql #1,%a2@(84)                           <== NOT EXECUTED
                                                                      
  if ( the_period->state == RATE_MONOTONIC_EXPIRED )                  
   46244:	b0aa 0038      	cmpl %a2@(56),%d0                           <== NOT EXECUTED
   46248:	6604           	bnes 4624e <_Rate_monotonic_Update_statistics+0x1c><== NOT EXECUTED
    stats->missed_count++;                                            
   4624a:	52aa 0058      	addql #1,%a2@(88)                           <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Grab status for time statistics.                                
   */                                                                 
  valid_status =                                                      
    _Rate_monotonic_Get_status( the_period, &since_last_period, &executed );
   4624e:	240e           	movel %fp,%d2                               <== NOT EXECUTED
   46250:	5182           	subql #8,%d2                                <== NOT EXECUTED
    stats->missed_count++;                                            
                                                                      
  /*                                                                  
   *  Grab status for time statistics.                                
   */                                                                 
  valid_status =                                                      
   46252:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   46254:	486e fff0      	pea %fp@(-16)                               <== NOT EXECUTED
   46258:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4625a:	4eb9 0004 611c 	jsr 4611c <_Rate_monotonic_Get_status>      <== NOT EXECUTED
    _Rate_monotonic_Get_status( the_period, &since_last_period, &executed );
  if (!valid_status)                                                  
   46260:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   46264:	4a00           	tstb %d0                                    <== NOT EXECUTED
   46266:	6700 00b2      	beqw 4631a <_Rate_monotonic_Update_statistics+0xe8><== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Update CPU time                                                 
   */                                                                 
  #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                          
    _Timestamp_Add_to( &stats->total_cpu_time, &executed );           
   4626a:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4626c:	486a 006c      	pea %a2@(108)                               <== NOT EXECUTED
   46270:	4eb9 0004 9760 	jsr 49760 <_Timespec_Add_to>                <== NOT EXECUTED
                                                                      
    if ( _Timestamp_Less_than( &executed, &stats->min_cpu_time ) )    
   46276:	486a 005c      	pea %a2@(92)                                <== NOT EXECUTED
   4627a:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4627c:	4eb9 0004 9858 	jsr 49858 <_Timespec_Less_than>             <== NOT EXECUTED
   46282:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   46286:	4a00           	tstb %d0                                    <== NOT EXECUTED
   46288:	6710           	beqs 4629a <_Rate_monotonic_Update_statistics+0x68><== NOT EXECUTED
      stats->min_cpu_time = executed;                                 
   4628a:	202e fff8      	movel %fp@(-8),%d0                          <== NOT EXECUTED
   4628e:	222e fffc      	movel %fp@(-4),%d1                          <== NOT EXECUTED
   46292:	2540 005c      	movel %d0,%a2@(92)                          <== NOT EXECUTED
   46296:	2541 0060      	movel %d1,%a2@(96)                          <== NOT EXECUTED
                                                                      
    if ( _Timestamp_Greater_than( &executed, &stats->max_cpu_time ) ) 
   4629a:	486a 0064      	pea %a2@(100)                               <== NOT EXECUTED
   4629e:	486e fff8      	pea %fp@(-8)                                <== NOT EXECUTED
   462a2:	4eb9 0004 9828 	jsr 49828 <_Timespec_Greater_than>          <== NOT EXECUTED
   462a8:	508f           	addql #8,%sp                                <== NOT EXECUTED
   462aa:	4a00           	tstb %d0                                    <== NOT EXECUTED
   462ac:	6710           	beqs 462be <_Rate_monotonic_Update_statistics+0x8c><== NOT EXECUTED
      stats->max_cpu_time = executed;                                 
   462ae:	202e fff8      	movel %fp@(-8),%d0                          <== NOT EXECUTED
   462b2:	222e fffc      	movel %fp@(-4),%d1                          <== NOT EXECUTED
   462b6:	2540 0064      	movel %d0,%a2@(100)                         <== NOT EXECUTED
   462ba:	2541 0068      	movel %d1,%a2@(104)                         <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Update Wall time                                                
   */                                                                 
  #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                          
    _Timestamp_Add_to( &stats->total_wall_time, &since_last_period ); 
   462be:	240e           	movel %fp,%d2                               <== NOT EXECUTED
   462c0:	0682 ffff fff0 	addil #-16,%d2                              <== NOT EXECUTED
   462c6:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   462c8:	486a 0084      	pea %a2@(132)                               <== NOT EXECUTED
   462cc:	4eb9 0004 9760 	jsr 49760 <_Timespec_Add_to>                <== NOT EXECUTED
                                                                      
    if ( _Timestamp_Less_than( &since_last_period, &stats->min_wall_time ) )
   462d2:	486a 0074      	pea %a2@(116)                               <== NOT EXECUTED
   462d6:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   462d8:	4eb9 0004 9858 	jsr 49858 <_Timespec_Less_than>             <== NOT EXECUTED
   462de:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   462e2:	4a00           	tstb %d0                                    <== NOT EXECUTED
   462e4:	6710           	beqs 462f6 <_Rate_monotonic_Update_statistics+0xc4><== NOT EXECUTED
      stats->min_wall_time = since_last_period;                       
   462e6:	202e fff0      	movel %fp@(-16),%d0                         <== NOT EXECUTED
   462ea:	222e fff4      	movel %fp@(-12),%d1                         <== NOT EXECUTED
   462ee:	2540 0074      	movel %d0,%a2@(116)                         <== NOT EXECUTED
   462f2:	2541 0078      	movel %d1,%a2@(120)                         <== NOT EXECUTED
                                                                      
    if ( _Timestamp_Greater_than( &since_last_period, &stats->max_wall_time ) )
   462f6:	486a 007c      	pea %a2@(124)                               <== NOT EXECUTED
   462fa:	486e fff0      	pea %fp@(-16)                               <== NOT EXECUTED
   462fe:	4eb9 0004 9828 	jsr 49828 <_Timespec_Greater_than>          <== NOT EXECUTED
   46304:	508f           	addql #8,%sp                                <== NOT EXECUTED
   46306:	4a00           	tstb %d0                                    <== NOT EXECUTED
   46308:	6710           	beqs 4631a <_Rate_monotonic_Update_statistics+0xe8><== NOT EXECUTED
      stats->max_wall_time = since_last_period;                       
   4630a:	202e fff0      	movel %fp@(-16),%d0                         <== NOT EXECUTED
   4630e:	222e fff4      	movel %fp@(-12),%d1                         <== NOT EXECUTED
   46312:	2540 007c      	movel %d0,%a2@(124)                         <== NOT EXECUTED
   46316:	2541 0080      	movel %d1,%a2@(128)                         <== NOT EXECUTED
      stats->min_wall_time = since_last_period;                       
                                                                      
    if ( since_last_period > stats->max_wall_time )                   
      stats->max_wall_time = since_last_period;                       
  #endif                                                              
}                                                                     
   4631a:	242e ffe8      	movel %fp@(-24),%d2                         <== NOT EXECUTED
   4631e:	246e ffec      	moveal %fp@(-20),%a2                        <== NOT EXECUTED
   46322:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000575c4 <_Region_Process_queue>: */ void _Region_Process_queue( Region_Control *the_region ) {
   575c4:	4e56 ffe4      	linkw %fp,#-28                              <== NOT EXECUTED
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   575c8:	2039 0007 5004 	movel 75004 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   575ce:	5280           	addql #1,%d0                                <== NOT EXECUTED
   575d0:	48d7 3c1c      	moveml %d2-%d4/%a2-%a5,%sp@                 <== NOT EXECUTED
   575d4:	266e 0008      	moveal %fp@(8),%a3                          <== NOT EXECUTED
   575d8:	23c0 0007 5004 	movel %d0,75004 <_Thread_Dispatch_disable_level><== NOT EXECUTED
   *  NOTE: Be sure to disable dispatching before unlocking the mutex 
   *        since we do not want to open a window where a context     
   *        switch could occur.                                       
   */                                                                 
  _Thread_Disable_dispatch();                                         
  _RTEMS_Unlock_allocator();                                          
   575de:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
  /*                                                                  
   *  NOTE: The following loop is O(n) where n is the number of       
   *        threads whose memory request is satisfied.                
   */                                                                 
  for ( ; ; ) {                                                       
    the_thread = _Thread_queue_First( &the_region->Wait_queue );      
   575e4:	240b           	movel %a3,%d2                               <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void *_Region_Allocate_segment (                 
  Region_Control *the_region,                                         
  uintptr_t       size                                                
)                                                                     
{                                                                     
  return _Heap_Allocate( &the_region->Memory, size );                 
   575e6:	260b           	movel %a3,%d3                               <== NOT EXECUTED
   575e8:	0682 0000 0010 	addil #16,%d2                               <== NOT EXECUTED
   575ee:	0683 0000 0068 	addil #104,%d3                              <== NOT EXECUTED
   575f4:	4bf9 0005 3364 	lea 53364 <_Heap_Allocate_aligned_with_boundary>,%a5<== NOT EXECUTED
    if ( the_segment == NULL )                                        
      break;                                                          
                                                                      
    *(void **)the_thread->Wait.return_argument = the_segment;         
    the_region->number_of_used_blocks += 1;                           
    _Thread_queue_Extract( &the_region->Wait_queue, the_thread );     
   575fa:	49f9 0005 7c7c 	lea 57c7c <_Thread_queue_Extract>,%a4       <== NOT EXECUTED
   *  NOTE: Be sure to disable dispatching before unlocking the mutex 
   *        since we do not want to open a window where a context     
   *        switch could occur.                                       
   */                                                                 
  _Thread_Disable_dispatch();                                         
  _RTEMS_Unlock_allocator();                                          
   57600:	4eb9 0005 29b8 	jsr 529b8 <_API_Mutex_Unlock>               <== NOT EXECUTED
   57606:	588f           	addql #4,%sp                                <== NOT EXECUTED
  /*                                                                  
   *  NOTE: The following loop is O(n) where n is the number of       
   *        threads whose memory request is satisfied.                
   */                                                                 
  for ( ; ; ) {                                                       
    the_thread = _Thread_queue_First( &the_region->Wait_queue );      
   57608:	283c 0005 7d80 	movel #359808,%d4                           <== NOT EXECUTED
   5760e:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   57610:	2044           	moveal %d4,%a0                              <== NOT EXECUTED
   57612:	4e90           	jsr %a0@                                    <== NOT EXECUTED
                                                                      
    if ( the_thread == NULL )                                         
   57614:	588f           	addql #4,%sp                                <== NOT EXECUTED
  /*                                                                  
   *  NOTE: The following loop is O(n) where n is the number of       
   *        threads whose memory request is satisfied.                
   */                                                                 
  for ( ; ; ) {                                                       
    the_thread = _Thread_queue_First( &the_region->Wait_queue );      
   57616:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
                                                                      
    if ( the_thread == NULL )                                         
   57618:	4a80           	tstl %d0                                    <== NOT EXECUTED
   5761a:	672c           	beqs 57648 <_Region_Process_queue+0x84>     <== NOT EXECUTED
   5761c:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   5761e:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   57620:	2f2a 0024      	movel %a2@(36),%sp@-                        <== NOT EXECUTED
   57624:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   57626:	4e95           	jsr %a5@                                    <== NOT EXECUTED
    the_segment = (void **) _Region_Allocate_segment(                 
      the_region,                                                     
      the_thread->Wait.count                                          
    );                                                                
                                                                      
    if ( the_segment == NULL )                                        
   57628:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   5762c:	4a80           	tstl %d0                                    <== NOT EXECUTED
   5762e:	6718           	beqs 57648 <_Region_Process_queue+0x84>     <== NOT EXECUTED
      break;                                                          
                                                                      
    *(void **)the_thread->Wait.return_argument = the_segment;         
   57630:	206a 0028      	moveal %a2@(40),%a0                         <== NOT EXECUTED
   57634:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
    the_region->number_of_used_blocks += 1;                           
   57636:	52ab 0064      	addql #1,%a3@(100)                          <== NOT EXECUTED
    _Thread_queue_Extract( &the_region->Wait_queue, the_thread );     
   5763a:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   5763c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   5763e:	4e94           	jsr %a4@                                    <== NOT EXECUTED
    the_thread->Wait.return_code = RTEMS_SUCCESSFUL;                  
  }                                                                   
   57640:	508f           	addql #8,%sp                                <== NOT EXECUTED
      break;                                                          
                                                                      
    *(void **)the_thread->Wait.return_argument = the_segment;         
    the_region->number_of_used_blocks += 1;                           
    _Thread_queue_Extract( &the_region->Wait_queue, the_thread );     
    the_thread->Wait.return_code = RTEMS_SUCCESSFUL;                  
   57642:	42aa 0034      	clrl %a2@(52)                               <== NOT EXECUTED
  }                                                                   
   57646:	60c6           	bras 5760e <_Region_Process_queue+0x4a>     <== NOT EXECUTED
  _Thread_Enable_dispatch();                                          
}                                                                     
   57648:	4cee 3c1c ffe4 	moveml %fp@(-28),%d2-%d4/%a2-%a5            <== NOT EXECUTED
   5764e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
    *(void **)the_thread->Wait.return_argument = the_segment;         
    the_region->number_of_used_blocks += 1;                           
    _Thread_queue_Extract( &the_region->Wait_queue, the_thread );     
    the_thread->Wait.return_code = RTEMS_SUCCESSFUL;                  
  }                                                                   
  _Thread_Enable_dispatch();                                          
   57650:	4ef9 0005 4d7a 	jmp 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
	...                                                                  
                                                                      

0004a4b0 <_Scheduler_priority_Block>: void _Scheduler_priority_Block( Scheduler_Control *the_scheduler, Thread_Control *the_thread ) {
   4a4b0:	4e56 0000      	linkw %fp,#0                                
   4a4b4:	226e 000c      	moveal %fp@(12),%a1                         
   4a4b8:	2f0a           	movel %a2,%sp@-                             
                                                                      
RTEMS_INLINE_ROUTINE void _Scheduler_priority_Ready_queue_extract(    
  Thread_Control        *the_thread                                   
)                                                                     
{                                                                     
  Chain_Control         *ready  = the_thread->scheduler.priority->ready_chain;
   4a4ba:	2069 008a      	moveal %a1@(138),%a0                        
   4a4be:	2050           	moveal %a0@,%a0                             
                                                                      
  if ( _Chain_Has_only_one_node( ready ) ) {                          
   4a4c0:	2028 0008      	movel %a0@(8),%d0                           
   4a4c4:	b090           	cmpl %a0@,%d0                               
   4a4c6:	6636           	bnes 4a4fe <_Scheduler_priority_Block+0x4e> 
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   4a4c8:	2008           	movel %a0,%d0                               
   4a4ca:	5880           	addql #4,%d0                                
                                                                      
  head->next = tail;                                                  
  head->previous = NULL;                                              
   4a4cc:	42a8 0004      	clrl %a0@(4)                                
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   4a4d0:	2080           	movel %d0,%a0@                              
                                                                      
  head->next = tail;                                                  
  head->previous = NULL;                                              
  tail->previous = head;                                              
   4a4d2:	2148 0008      	movel %a0,%a0@(8)                           
    _Chain_Initialize_empty( ready );                                 
    _Priority_bit_map_Remove( &the_thread->scheduler.priority->Priority_map );
   4a4d6:	2069 008a      	moveal %a1@(138),%a0                        
                                                                      
RTEMS_INLINE_ROUTINE void _Priority_bit_map_Remove (                  
  Priority_bit_map_Information *the_priority_map                      
)                                                                     
{                                                                     
  *the_priority_map->minor &= the_priority_map->block_minor;          
   4a4da:	2468 0004      	moveal %a0@(4),%a2                          
   4a4de:	3028 000e      	movew %a0@(14),%d0                          
   4a4e2:	3212           	movew %a2@,%d1                              
   4a4e4:	c081           	andl %d1,%d0                                
   4a4e6:	3480           	movew %d0,%a2@                              
  if ( *the_priority_map->minor == 0 )                                
   4a4e8:	6620           	bnes 4a50a <_Scheduler_priority_Block+0x5a> 
    _Priority_Major_bit_map &= the_priority_map->block_major;         
   4a4ea:	3039 0005 c894 	movew 5c894 <_Priority_Major_bit_map>,%d0   
   4a4f0:	3228 000c      	movew %a0@(12),%d1                          
   4a4f4:	c081           	andl %d1,%d0                                
   4a4f6:	33c0 0005 c894 	movew %d0,5c894 <_Priority_Major_bit_map>   
   4a4fc:	600c           	bras 4a50a <_Scheduler_priority_Block+0x5a> 
)                                                                     
{                                                                     
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
   4a4fe:	2451           	moveal %a1@,%a2                             
  previous       = the_node->previous;                                
   4a500:	2069 0004      	moveal %a1@(4),%a0                          
  next->previous = previous;                                          
   4a504:	2548 0004      	movel %a0,%a2@(4)                           
  previous->next = next;                                              
   4a508:	208a           	movel %a2,%a0@                              
{                                                                     
  _Scheduler_priority_Ready_queue_extract(the_thread);                
                                                                      
  /* TODO: flash critical section */                                  
                                                                      
  if ( _Thread_Is_heir( the_thread ) )                                
   4a50a:	b3f9 0005 c888 	cmpal 5c888 <_Per_CPU_Information+0x10>,%a1 
   4a510:	6646           	bnes 4a558 <_Scheduler_priority_Block+0xa8> 
RTEMS_INLINE_ROUTINE Priority_Control _Priority_bit_map_Get_highest( void )
{                                                                     
  Priority_bit_map_Control minor;                                     
  Priority_bit_map_Control major;                                     
                                                                      
  _Bitfield_Find_first_bit( _Priority_Major_bit_map, major );         
   4a512:	3039 0005 c894 	movew 5c894 <_Priority_Major_bit_map>,%d0   
   4a518:	4840           	swap %d0                                    
   4a51a:	04c0           	ff1 %d0                                     
  _Bitfield_Find_first_bit( _Priority_Bit_map[major], minor );        
   4a51c:	41f9 0005 c898 	lea 5c898 <_Priority_Bit_map>,%a0           
   4a522:	0280 0000 ffff 	andil #65535,%d0                            
   4a528:	3230 0a00      	movew %a0@(00000000,%d0:l:2),%d1            
   4a52c:	4841           	swap %d1                                    
   4a52e:	04c1           	ff1 %d1                                     
  _Scheduler_priority_Block_body(the_scheduler, the_thread);          
}                                                                     
   4a530:	206e 0008      	moveal %fp@(8),%a0                          
                                                                      
  return (_Priority_Bits_index( major ) << 4) +                       
   4a534:	0281 0000 ffff 	andil #65535,%d1                            
   4a53a:	e988           	lsll #4,%d0                                 
   4a53c:	2050           	moveal %a0@,%a0                             
   4a53e:	d081           	addl %d1,%d0                                
  Chain_Control       *the_ready_queue                                
)                                                                     
{                                                                     
  Priority_Control index = _Priority_bit_map_Get_highest();           
                                                                      
  if ( !_Chain_Is_empty( &the_ready_queue[ index ] ) )                
   4a540:	2200           	movel %d0,%d1                               
   4a542:	e988           	lsll #4,%d0                                 
   4a544:	e589           	lsll #2,%d1                                 
   4a546:	9081           	subl %d1,%d0                                
   4a548:	d1c0           	addal %d0,%a0                               
   4a54a:	2018           	movel %a0@+,%d0                             
   4a54c:	b1c0           	cmpal %d0,%a0                               
   4a54e:	6602           	bnes 4a552 <_Scheduler_priority_Block+0xa2> <== ALWAYS TAKEN
    return (Thread_Control *) _Chain_First( &the_ready_queue[ index ] );
                                                                      
  return NULL;                                                        
   4a550:	4280           	clrl %d0                                    <== NOT EXECUTED
                                                                      
RTEMS_INLINE_ROUTINE void _Scheduler_priority_Schedule_body(          
  Scheduler_Control     *the_scheduler                                
)                                                                     
{                                                                     
  _Thread_Heir = _Scheduler_priority_Ready_queue_first(               
   4a552:	23c0 0005 c888 	movel %d0,5c888 <_Per_CPU_Information+0x10> 
  /* TODO: flash critical section */                                  
                                                                      
  if ( _Thread_Is_heir( the_thread ) )                                
     _Scheduler_priority_Schedule_body(the_scheduler);                
                                                                      
  if ( _Thread_Is_executing( the_thread ) )                           
   4a558:	b3f9 0005 c884 	cmpal 5c884 <_Per_CPU_Information+0xc>,%a1  
   4a55e:	6608           	bnes 4a568 <_Scheduler_priority_Block+0xb8> 
    _Thread_Dispatch_necessary = true;                                
   4a560:	7001           	moveq #1,%d0                                
   4a562:	13c0 0005 c890 	moveb %d0,5c890 <_Per_CPU_Information+0x18> 
   4a568:	245f           	moveal %sp@+,%a2                            
   4a56a:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

0004704c <_Scheduler_priority_Schedule>: */ void _Scheduler_priority_Schedule( Scheduler_Control *the_scheduler ) {
   4704c:	4e56 0000      	linkw %fp,#0                                
RTEMS_INLINE_ROUTINE Priority_Control _Priority_bit_map_Get_highest( void )
{                                                                     
  Priority_bit_map_Control minor;                                     
  Priority_bit_map_Control major;                                     
                                                                      
  _Bitfield_Find_first_bit( _Priority_Major_bit_map, major );         
   47050:	3039 0005 c894 	movew 5c894 <_Priority_Major_bit_map>,%d0   
   47056:	4840           	swap %d0                                    
   47058:	04c0           	ff1 %d0                                     
  _Bitfield_Find_first_bit( _Priority_Bit_map[major], minor );        
   4705a:	41f9 0005 c898 	lea 5c898 <_Priority_Bit_map>,%a0           
   47060:	0280 0000 ffff 	andil #65535,%d0                            
   47066:	3230 0a00      	movew %a0@(00000000,%d0:l:2),%d1            
   4706a:	4841           	swap %d1                                    
   4706c:	04c1           	ff1 %d1                                     
  _Scheduler_priority_Schedule_body( the_scheduler );                 
}                                                                     
   4706e:	206e 0008      	moveal %fp@(8),%a0                          
                                                                      
  return (_Priority_Bits_index( major ) << 4) +                       
   47072:	0281 0000 ffff 	andil #65535,%d1                            
   47078:	e988           	lsll #4,%d0                                 
   4707a:	2050           	moveal %a0@,%a0                             
   4707c:	d081           	addl %d1,%d0                                
  Chain_Control       *the_ready_queue                                
)                                                                     
{                                                                     
  Priority_Control index = _Priority_bit_map_Get_highest();           
                                                                      
  if ( !_Chain_Is_empty( &the_ready_queue[ index ] ) )                
   4707e:	2200           	movel %d0,%d1                               
   47080:	e988           	lsll #4,%d0                                 
   47082:	e589           	lsll #2,%d1                                 
   47084:	9081           	subl %d1,%d0                                
   47086:	d1c0           	addal %d0,%a0                               
   47088:	2018           	movel %a0@+,%d0                             
   4708a:	b1c0           	cmpal %d0,%a0                               
   4708c:	6602           	bnes 47090 <_Scheduler_priority_Schedule+0x44><== ALWAYS TAKEN
    return (Thread_Control *) _Chain_First( &the_ready_queue[ index ] );
                                                                      
  return NULL;                                                        
   4708e:	4280           	clrl %d0                                    <== NOT EXECUTED
                                                                      
RTEMS_INLINE_ROUTINE void _Scheduler_priority_Schedule_body(          
  Scheduler_Control     *the_scheduler                                
)                                                                     
{                                                                     
  _Thread_Heir = _Scheduler_priority_Ready_queue_first(               
   47090:	23c0 0005 c888 	movel %d0,5c888 <_Per_CPU_Information+0x10> 
   47096:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

000470b8 <_Scheduler_priority_Thread_scheduler_free>: void _Scheduler_priority_Thread_scheduler_free ( Scheduler_Control *the_scheduler __attribute__((unused)), Thread_Control *the_thread ) {
   470b8:	4e56 0000      	linkw %fp,#0                                
  _Workspace_Free( the_thread->scheduler.priority );                  
   470bc:	206e 000c      	moveal %fp@(12),%a0                         
   470c0:	2d68 008a 0008 	movel %a0@(138),%fp@(8)                     
}                                                                     
   470c6:	4e5e           	unlk %fp                                    
void _Scheduler_priority_Thread_scheduler_free (                      
    Scheduler_Control *the_scheduler __attribute__((unused)),         
    Thread_Control    *the_thread                                     
)                                                                     
{                                                                     
  _Workspace_Free( the_thread->scheduler.priority );                  
   470c8:	4ef9 0004 86dc 	jmp 486dc <_Workspace_Free>                 
	...                                                                  
                                                                      

00047140 <_Scheduler_priority_Unblock>: void _Scheduler_priority_Unblock ( Scheduler_Control *the_scheduler, Thread_Control *the_thread ) {
   47140:	4e56 0000      	linkw %fp,#0                                
   47144:	206e 000c      	moveal %fp@(12),%a0                         
   47148:	2f0a           	movel %a2,%sp@-                             
                                                                      
RTEMS_INLINE_ROUTINE void _Scheduler_priority_Ready_queue_enqueue(    
  Thread_Control                  *the_thread                         
)                                                                     
{                                                                     
  _Priority_bit_map_Add( &the_thread->scheduler.priority->Priority_map );
   4714a:	2268 008a      	moveal %a0@(138),%a1                        
                                                                      
RTEMS_INLINE_ROUTINE void _Priority_bit_map_Add (                     
  Priority_bit_map_Information *the_priority_map                      
)                                                                     
{                                                                     
  *the_priority_map->minor |= the_priority_map->ready_minor;          
   4714e:	2469 0004      	moveal %a1@(4),%a2                          
   47152:	3029 000a      	movew %a1@(10),%d0                          
   47156:	3212           	movew %a2@,%d1                              
   47158:	8081           	orl %d1,%d0                                 
   4715a:	3480           	movew %d0,%a2@                              
  _Priority_Major_bit_map  |= the_priority_map->ready_major;          
   4715c:	3229 0008      	movew %a1@(8),%d1                           
   47160:	3039 0005 c894 	movew 5c894 <_Priority_Major_bit_map>,%d0   
                                                                      
  _Chain_Append_unprotected( the_thread->scheduler.priority->ready_chain,
   47166:	2251           	moveal %a1@,%a1                             
   47168:	8081           	orl %d1,%d0                                 
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
  Chain_Node *old_last = tail->previous;                              
   4716a:	2469 0008      	moveal %a1@(8),%a2                          
   4716e:	33c0 0005 c894 	movew %d0,5c894 <_Priority_Major_bit_map>   
RTEMS_INLINE_ROUTINE void _Chain_Append_unprotected(                  
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   47174:	2009           	movel %a1,%d0                               
   47176:	5880           	addql #4,%d0                                
  Chain_Node *old_last = tail->previous;                              
                                                                      
  the_node->next = tail;                                              
  tail->previous = the_node;                                          
   47178:	2348 0008      	movel %a0,%a1@(8)                           
   *    a context switch.                                             
   *  Pseudo-ISR case:                                                
   *    Even if the thread isn't preemptible, if the new heir is      
   *    a pseudo-ISR system task, we need to do a context switch.     
   */                                                                 
  if ( the_thread->current_priority < _Thread_Heir->current_priority ) {
   4717c:	2279 0005 c888 	moveal 5c888 <_Per_CPU_Information+0x10>,%a1
RTEMS_INLINE_ROUTINE void _Chain_Append_unprotected(                  
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   47182:	2080           	movel %d0,%a0@                              
   47184:	2028 0014      	movel %a0@(20),%d0                          
  Chain_Node *old_last = tail->previous;                              
                                                                      
  the_node->next = tail;                                              
  tail->previous = the_node;                                          
  old_last->next = the_node;                                          
   47188:	2488           	movel %a0,%a2@                              
  the_node->previous = old_last;                                      
   4718a:	214a 0004      	movel %a2,%a0@(4)                           
   4718e:	b0a9 0014      	cmpl %a1@(20),%d0                           
   47192:	641e           	bccs 471b2 <_Scheduler_priority_Unblock+0x72>
    _Thread_Heir = the_thread;                                        
   47194:	23c8 0005 c888 	movel %a0,5c888 <_Per_CPU_Information+0x10> 
    if ( _Thread_Executing->is_preemptible ||                         
   4719a:	2079 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a0 
   471a0:	4a28 0074      	tstb %a0@(116)                              
   471a4:	6604           	bnes 471aa <_Scheduler_priority_Unblock+0x6a>
   471a6:	4a80           	tstl %d0                                    
   471a8:	6608           	bnes 471b2 <_Scheduler_priority_Unblock+0x72><== ALWAYS TAKEN
        the_thread->current_priority == 0 )                           
      _Thread_Dispatch_necessary = true;                              
   471aa:	7001           	moveq #1,%d0                                
   471ac:	13c0 0005 c890 	moveb %d0,5c890 <_Per_CPU_Information+0x18> 
  _Scheduler_priority_Unblock_body(the_scheduler, the_thread);        
}                                                                     
   471b2:	245f           	moveal %sp@+,%a2                            
   471b4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000471b8 <_Scheduler_priority_Yield>: */ void _Scheduler_priority_Yield( Scheduler_Control *the_scheduler __attribute__((unused)) ) {
   471b8:	4e56 fff4      	linkw %fp,#-12                              <== NOT EXECUTED
  ISR_Level       level;                                              
  Thread_Control *executing;                                          
  Chain_Control  *ready;                                              
                                                                      
  executing = _Thread_Executing;                                      
   471bc:	2079 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
 */                                                                   
                                                                      
void _Scheduler_priority_Yield(                                       
    Scheduler_Control   *the_scheduler __attribute__((unused))        
)                                                                     
{                                                                     
   471c2:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     <== NOT EXECUTED
  Thread_Control *executing;                                          
  Chain_Control  *ready;                                              
                                                                      
  executing = _Thread_Executing;                                      
  ready = executing->scheduler.priority->ready_chain;                 
  _ISR_Disable( level );                                              
   471c6:	243c 0000 0700 	movel #1792,%d2                             <== NOT EXECUTED
   471cc:	2002           	movel %d2,%d0                               <== NOT EXECUTED
  ISR_Level       level;                                              
  Thread_Control *executing;                                          
  Chain_Control  *ready;                                              
                                                                      
  executing = _Thread_Executing;                                      
  ready = executing->scheduler.priority->ready_chain;                 
   471ce:	2268 008a      	moveal %a0@(138),%a1                        <== NOT EXECUTED
   471d2:	2251           	moveal %a1@,%a1                             <== NOT EXECUTED
  _ISR_Disable( level );                                              
   471d4:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   471d6:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   471d8:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
    if ( !_Chain_Has_only_one_node( ready ) ) {                       
   471da:	2029 0008      	movel %a1@(8),%d0                           <== NOT EXECUTED
   471de:	b091           	cmpl %a1@,%d0                               <== NOT EXECUTED
   471e0:	6738           	beqs 4721a <_Scheduler_priority_Yield+0x62> <== NOT EXECUTED
{                                                                     
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
  previous       = the_node->previous;                                
   471e2:	2468 0004      	moveal %a0@(4),%a2                          <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Chain_Append_unprotected(                  
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   471e6:	2009           	movel %a1,%d0                               <== NOT EXECUTED
   471e8:	5880           	addql #4,%d0                                <== NOT EXECUTED
)                                                                     
{                                                                     
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
   471ea:	2650           	moveal %a0@,%a3                             <== NOT EXECUTED
  previous       = the_node->previous;                                
  next->previous = previous;                                          
   471ec:	274a 0004      	movel %a2,%a3@(4)                           <== NOT EXECUTED
  previous->next = next;                                              
   471f0:	248b           	movel %a3,%a2@                              <== NOT EXECUTED
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
  Chain_Node *old_last = tail->previous;                              
   471f2:	2469 0008      	moveal %a1@(8),%a2                          <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Chain_Append_unprotected(                  
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   471f6:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
  Chain_Node *old_last = tail->previous;                              
                                                                      
  the_node->next = tail;                                              
  tail->previous = the_node;                                          
   471f8:	2348 0008      	movel %a0,%a1@(8)                           <== NOT EXECUTED
  old_last->next = the_node;                                          
   471fc:	2488           	movel %a0,%a2@                              <== NOT EXECUTED
  the_node->previous = old_last;                                      
   471fe:	214a 0004      	movel %a2,%a0@(4)                           <== NOT EXECUTED
      _Chain_Extract_unprotected( &executing->Object.Node );          
      _Chain_Append_unprotected( ready, &executing->Object.Node );    
                                                                      
      _ISR_Flash( level );                                            
   47202:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   47204:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
   47206:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   47208:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
                                                                      
      if ( _Thread_Is_heir( executing ) )                             
   4720a:	b1f9 0005 c888 	cmpal 5c888 <_Per_CPU_Information+0x10>,%a0 <== NOT EXECUTED
   47210:	6610           	bnes 47222 <_Scheduler_priority_Yield+0x6a> <== NOT EXECUTED
        _Thread_Heir = (Thread_Control *) _Chain_First( ready );      
   47212:	23d1 0005 c888 	movel %a1@,5c888 <_Per_CPU_Information+0x10><== NOT EXECUTED
   47218:	6008           	bras 47222 <_Scheduler_priority_Yield+0x6a> <== NOT EXECUTED
      _Thread_Dispatch_necessary = true;                              
    }                                                                 
    else if ( !_Thread_Is_heir( executing ) )                         
   4721a:	b1f9 0005 c888 	cmpal 5c888 <_Per_CPU_Information+0x10>,%a0 <== NOT EXECUTED
   47220:	6708           	beqs 4722a <_Scheduler_priority_Yield+0x72> <== NOT EXECUTED
      _Thread_Dispatch_necessary = true;                              
   47222:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   47224:	13c0 0005 c890 	moveb %d0,5c890 <_Per_CPU_Information+0x18> <== NOT EXECUTED
                                                                      
  _ISR_Enable( level );                                               
   4722a:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
}                                                                     
   4722c:	4cd7 0c04      	moveml %sp@,%d2/%a2-%a3                     <== NOT EXECUTED
   47230:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00045796 <_Semaphore_Translate_core_semaphore_return_code>: #if defined(RTEMS_DEBUG) if ( status > CORE_SEMAPHORE_STATUS_LAST ) return RTEMS_INTERNAL_ERROR; #endif return _Semaphore_Translate_core_semaphore_return_code_[status]; }
   45796:	41f9 0005 a0fe 	lea 5a0fe <_Semaphore_Translate_core_semaphore_return_code_>,%a0<== NOT EXECUTED
};                                                                    
                                                                      
rtems_status_code _Semaphore_Translate_core_semaphore_return_code (   
  uint32_t   status                                                   
)                                                                     
{                                                                     
   4579c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  #if defined(RTEMS_DEBUG)                                            
    if ( status > CORE_SEMAPHORE_STATUS_LAST )                        
      return RTEMS_INTERNAL_ERROR;                                    
  #endif                                                              
  return _Semaphore_Translate_core_semaphore_return_code_[status];    
}                                                                     
   457a0:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   457a4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   457a6:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
                                                                      

0004672c <_TOD_Get_uptime_as_timespec>: */ void _TOD_Get_uptime_as_timespec( struct timespec *uptime ) {
   4672c:	4e56 fff8      	linkw %fp,#-8                               <== NOT EXECUTED
  Timestamp_Control uptime_ts;                                        
                                                                      
  /* assume time checked for NULL by caller */                        
  _TOD_Get_uptime( &uptime_ts );                                      
   46730:	486e fff8      	pea %fp@(-8)                                <== NOT EXECUTED
   46734:	4eb9 0004 a574 	jsr 4a574 <_TOD_Get_uptime>                 <== NOT EXECUTED
  _Timestamp_To_timespec( &uptime_ts, uptime );                       
   4673a:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   4673e:	588f           	addql #4,%sp                                <== NOT EXECUTED
   46740:	202e fff8      	movel %fp@(-8),%d0                          <== NOT EXECUTED
   46744:	222e fffc      	movel %fp@(-4),%d1                          <== NOT EXECUTED
}                                                                     
   46748:	4e5e           	unlk %fp                                    <== NOT EXECUTED
{                                                                     
  Timestamp_Control uptime_ts;                                        
                                                                      
  /* assume time checked for NULL by caller */                        
  _TOD_Get_uptime( &uptime_ts );                                      
  _Timestamp_To_timespec( &uptime_ts, uptime );                       
   4674a:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
   4674c:	2141 0004      	movel %d1,%a0@(4)                           <== NOT EXECUTED
}                                                                     
	...                                                                  
                                                                      

00047644 <_TOD_Set>: */ void _TOD_Set( const struct timespec *time ) {
   47644:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   47648:	2039 0006 65a8 	movel 665a8 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   4764e:	5280           	addql #1,%d0                                <== NOT EXECUTED
   47650:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   47652:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   47656:	23c0 0006 65a8 	movel %d0,665a8 <_Thread_Dispatch_disable_level><== NOT EXECUTED
  long seconds;                                                       
                                                                      
  _Thread_Disable_dispatch();                                         
  _TOD_Deactivate();                                                  
                                                                      
  seconds = _TOD_Seconds_since_epoch();                               
   4765c:	2039 0006 6652 	movel 66652 <_TOD_Now>,%d0                  <== NOT EXECUTED
   47662:	41f9 0004 9940 	lea 49940 <_Watchdog_Adjust>,%a0            <== NOT EXECUTED
                                                                      
  if ( time->tv_sec < seconds )                                       
   47668:	2212           	movel %a2@,%d1                              <== NOT EXECUTED
   4766a:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   4766c:	6f0a           	bles 47678 <_TOD_Set+0x34>                  <== NOT EXECUTED
  Watchdog_Adjust_directions direction,                               
  Watchdog_Interval          units                                    
)                                                                     
{                                                                     
                                                                      
  _Watchdog_Adjust( &_Watchdog_Seconds_chain, direction, units );     
   4766e:	9081           	subl %d1,%d0                                <== NOT EXECUTED
   47670:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   47672:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   47676:	6006           	bras 4767e <_TOD_Set+0x3a>                  <== NOT EXECUTED
   47678:	9280           	subl %d0,%d1                                <== NOT EXECUTED
   4767a:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   4767c:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4767e:	4879 0006 667c 	pea 6667c <_Watchdog_Seconds_chain>         <== NOT EXECUTED
   47684:	4e90           	jsr %a0@                                    <== NOT EXECUTED
    _Watchdog_Adjust_seconds( WATCHDOG_BACKWARD, seconds - time->tv_sec );
  else                                                                
    _Watchdog_Adjust_seconds( WATCHDOG_FORWARD, time->tv_sec - seconds );
                                                                      
  /* POSIX format TOD (timespec) */                                   
  _Timestamp_Set( &_TOD_Now, time->tv_sec, time->tv_nsec );           
   47686:	23d2 0006 6652 	movel %a2@,66652 <_TOD_Now>                 <== NOT EXECUTED
   4768c:	588a           	addql #4,%a2                                <== NOT EXECUTED
   4768e:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   47692:	23d2 0006 6656 	movel %a2@,66656 <_TOD_Now+0x4>             <== NOT EXECUTED
  _TOD_Is_set = true;                                                 
                                                                      
  _TOD_Activate();                                                    
                                                                      
  _Thread_Enable_dispatch();                                          
}                                                                     
   47698:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   4769c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  else                                                                
    _Watchdog_Adjust_seconds( WATCHDOG_FORWARD, time->tv_sec - seconds );
                                                                      
  /* POSIX format TOD (timespec) */                                   
  _Timestamp_Set( &_TOD_Now, time->tv_sec, time->tv_nsec );           
  _TOD_Is_set = true;                                                 
   4769e:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   476a0:	13c0 0006 65b8 	moveb %d0,665b8 <_TOD_Is_set>               <== NOT EXECUTED
                                                                      
  _TOD_Activate();                                                    
                                                                      
  _Thread_Enable_dispatch();                                          
   476a6:	4ef9 0004 8aba 	jmp 48aba <_Thread_Enable_dispatch>         <== NOT EXECUTED
                                                                      

000463c0 <_TOD_Tickle_ticks>: { Timestamp_Control tick; uint32_t seconds; /* Convert the tick quantum to a timestamp */ _Timestamp_Set( &tick, 0, rtems_configuration_get_nanoseconds_per_tick() );
   463c0:	223c 0000 03e8 	movel #1000,%d1                             
 *                                                                    
 *  Output parameters: NONE                                           
 */                                                                   
                                                                      
void _TOD_Tickle_ticks( void )                                        
{                                                                     
   463c6:	4e56 fff8      	linkw %fp,#-8                               
  Timestamp_Control tick;                                             
  uint32_t          seconds;                                          
                                                                      
  /* Convert the tick quantum to a timestamp */                       
  _Timestamp_Set( &tick, 0, rtems_configuration_get_nanoseconds_per_tick() );
   463ca:	2039 0005 aea0 	movel 5aea0 <Configuration+0xc>,%d0         
   463d0:	4c01 0800      	mulsl %d1,%d0                               
 *                                                                    
 *  Output parameters: NONE                                           
 */                                                                   
                                                                      
void _TOD_Tickle_ticks( void )                                        
{                                                                     
   463d4:	2f0a           	movel %a2,%sp@-                             
                                                                      
  /* Update the counter of ticks since boot */                        
  _Watchdog_Ticks_since_boot += 1;                                    
                                                                      
  /* Update the timespec format uptime */                             
  _Timestamp_Add_to( &_TOD_Uptime, &tick );                           
   463d6:	45f9 0004 8154 	lea 48154 <_Timespec_Add_to>,%a2            
 *                                                                    
 *  Output parameters: NONE                                           
 */                                                                   
                                                                      
void _TOD_Tickle_ticks( void )                                        
{                                                                     
   463dc:	2f02           	movel %d2,%sp@-                             
                                                                      
  /* Update the counter of ticks since boot */                        
  _Watchdog_Ticks_since_boot += 1;                                    
                                                                      
  /* Update the timespec format uptime */                             
  _Timestamp_Add_to( &_TOD_Uptime, &tick );                           
   463de:	240e           	movel %fp,%d2                               
   463e0:	5182           	subql #8,%d2                                
{                                                                     
  Timestamp_Control tick;                                             
  uint32_t          seconds;                                          
                                                                      
  /* Convert the tick quantum to a timestamp */                       
  _Timestamp_Set( &tick, 0, rtems_configuration_get_nanoseconds_per_tick() );
   463e2:	2d40 fffc      	movel %d0,%fp@(-4)                          
                                                                      
  /* Update the counter of ticks since boot */                        
  _Watchdog_Ticks_since_boot += 1;                                    
   463e6:	2039 0005 c7f0 	movel 5c7f0 <_Watchdog_Ticks_since_boot>,%d0
   463ec:	5280           	addql #1,%d0                                
                                                                      
  /* Update the timespec format uptime */                             
  _Timestamp_Add_to( &_TOD_Uptime, &tick );                           
   463ee:	2f02           	movel %d2,%sp@-                             
   463f0:	4879 0005 c742 	pea 5c742 <_TOD_Uptime>                     
{                                                                     
  Timestamp_Control tick;                                             
  uint32_t          seconds;                                          
                                                                      
  /* Convert the tick quantum to a timestamp */                       
  _Timestamp_Set( &tick, 0, rtems_configuration_get_nanoseconds_per_tick() );
   463f6:	42ae fff8      	clrl %fp@(-8)                               
                                                                      
  /* Update the counter of ticks since boot */                        
  _Watchdog_Ticks_since_boot += 1;                                    
   463fa:	23c0 0005 c7f0 	movel %d0,5c7f0 <_Watchdog_Ticks_since_boot>
                                                                      
  /* Update the timespec format uptime */                             
  _Timestamp_Add_to( &_TOD_Uptime, &tick );                           
   46400:	4e92           	jsr %a2@                                    
  /* we do not care how much the uptime changed */                    
                                                                      
  /* Update the timespec format TOD */                                
  seconds = _Timestamp_Add_to_at_tick( &_TOD_Now, &tick );            
   46402:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   46404:	4879 0005 c772 	pea 5c772 <_TOD_Now>                        <== NOT EXECUTED
   4640a:	4e92           	jsr %a2@                                    <== NOT EXECUTED
  while ( seconds ) {                                                 
   4640c:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
 */                                                                   
                                                                      
RTEMS_INLINE_ROUTINE void _Watchdog_Tickle_seconds( void )            
{                                                                     
                                                                      
  _Watchdog_Tickle( &_Watchdog_Seconds_chain );                       
   46410:	45f9 0004 85e4 	lea 485e4 <_Watchdog_Tickle>,%a2            <== NOT EXECUTED
  /* Update the timespec format uptime */                             
  _Timestamp_Add_to( &_TOD_Uptime, &tick );                           
  /* we do not care how much the uptime changed */                    
                                                                      
  /* Update the timespec format TOD */                                
  seconds = _Timestamp_Add_to_at_tick( &_TOD_Now, &tick );            
   46416:	2400           	movel %d0,%d2                               <== NOT EXECUTED
  while ( seconds ) {                                                 
   46418:	600c           	bras 46426 <_TOD_Tickle_ticks+0x66>         <== NOT EXECUTED
   4641a:	4879 0005 c79c 	pea 5c79c <_Watchdog_Seconds_chain>         <== NOT EXECUTED
    _Watchdog_Tickle_seconds();                                       
    seconds--;                                                        
   46420:	5382           	subql #1,%d2                                <== NOT EXECUTED
   46422:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   46424:	588f           	addql #4,%sp                                <== NOT EXECUTED
  _Timestamp_Add_to( &_TOD_Uptime, &tick );                           
  /* we do not care how much the uptime changed */                    
                                                                      
  /* Update the timespec format TOD */                                
  seconds = _Timestamp_Add_to_at_tick( &_TOD_Now, &tick );            
  while ( seconds ) {                                                 
   46426:	4a82           	tstl %d2                                    <== NOT EXECUTED
   46428:	66f0           	bnes 4641a <_TOD_Tickle_ticks+0x5a>         <== NOT EXECUTED
    _Watchdog_Tickle_seconds();                                       
    seconds--;                                                        
  }                                                                   
}                                                                     
   4642a:	242e fff0      	movel %fp@(-16),%d2                         <== NOT EXECUTED
   4642e:	246e fff4      	moveal %fp@(-12),%a2                        <== NOT EXECUTED
   46432:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00045f70 <_TOD_To_seconds>: */ uint32_t _TOD_To_seconds( const rtems_time_of_day *the_tod ) {
   45f70:	43f9 0005 c0ea 	lea 5c0ea <_TOD_Days_to_date>,%a1           <== NOT EXECUTED
   45f76:	4e56 fff4      	linkw %fp,#-12                              <== NOT EXECUTED
   45f7a:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   45f7e:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     <== NOT EXECUTED
  uint32_t   time;                                                    
  uint32_t   year_mod_4;                                              
                                                                      
  time = the_tod->day - 1;                                            
  year_mod_4 = the_tod->year & 3;                                     
   45f82:	2210           	movel %a0@,%d1                              <== NOT EXECUTED
   45f84:	7403           	moveq #3,%d2                                <== NOT EXECUTED
)                                                                     
{                                                                     
  uint32_t   time;                                                    
  uint32_t   year_mod_4;                                              
                                                                      
  time = the_tod->day - 1;                                            
   45f86:	2028 0008      	movel %a0@(8),%d0                           <== NOT EXECUTED
   45f8a:	5380           	subql #1,%d0                                <== NOT EXECUTED
  year_mod_4 = the_tod->year & 3;                                     
   45f8c:	c481           	andl %d1,%d2                                <== NOT EXECUTED
                                                                      
  if ( year_mod_4 == 0 )                                              
   45f8e:	660c           	bnes 45f9c <_TOD_To_seconds+0x2c>           <== NOT EXECUTED
    time += _TOD_Days_to_date[ 1 ][ the_tod->month ];                 
   45f90:	2628 0004      	movel %a0@(4),%d3                           <== NOT EXECUTED
   45f94:	0683 0000 000d 	addil #13,%d3                               <== NOT EXECUTED
   45f9a:	6004           	bras 45fa0 <_TOD_To_seconds+0x30>           <== NOT EXECUTED
  else                                                                
    time += _TOD_Days_to_date[ 0 ][ the_tod->month ];                 
   45f9c:	2628 0004      	movel %a0@(4),%d3                           <== NOT EXECUTED
                                                                      
  time += ( (the_tod->year - TOD_BASE_YEAR) / 4 ) *                   
            ( (TOD_DAYS_PER_YEAR * 4) + 1);                           
                                                                      
  time += _TOD_Days_since_last_leap_year[ year_mod_4 ];               
   45fa0:	45f9 0005 c11e 	lea 5c11e <_TOD_Days_since_last_leap_year>,%a2<== NOT EXECUTED
  if ( year_mod_4 == 0 )                                              
    time += _TOD_Days_to_date[ 1 ][ the_tod->month ];                 
  else                                                                
    time += _TOD_Days_to_date[ 0 ][ the_tod->month ];                 
                                                                      
  time += ( (the_tod->year - TOD_BASE_YEAR) / 4 ) *                   
   45fa6:	0681 ffff f83c 	addil #-1988,%d1                            <== NOT EXECUTED
   45fac:	e489           	lsrl #2,%d1                                 <== NOT EXECUTED
  year_mod_4 = the_tod->year & 3;                                     
                                                                      
  if ( year_mod_4 == 0 )                                              
    time += _TOD_Days_to_date[ 1 ][ the_tod->month ];                 
  else                                                                
    time += _TOD_Days_to_date[ 0 ][ the_tod->month ];                 
   45fae:	3631 3a00      	movew %a1@(00000000,%d3:l:2),%d3            <== NOT EXECUTED
   45fb2:	0283 0000 ffff 	andil #65535,%d3                            <== NOT EXECUTED
   45fb8:	2243           	moveal %d3,%a1                              <== NOT EXECUTED
   45fba:	d3c0           	addal %d0,%a1                               <== NOT EXECUTED
                                                                      
  time += ( (the_tod->year - TOD_BASE_YEAR) / 4 ) *                   
            ( (TOD_DAYS_PER_YEAR * 4) + 1);                           
                                                                      
  time += _TOD_Days_since_last_leap_year[ year_mod_4 ];               
   45fbc:	4280           	clrl %d0                                    <== NOT EXECUTED
   45fbe:	3032 2a00      	movew %a2@(00000000,%d2:l:2),%d0            <== NOT EXECUTED
  if ( year_mod_4 == 0 )                                              
    time += _TOD_Days_to_date[ 1 ][ the_tod->month ];                 
  else                                                                
    time += _TOD_Days_to_date[ 0 ][ the_tod->month ];                 
                                                                      
  time += ( (the_tod->year - TOD_BASE_YEAR) / 4 ) *                   
   45fc2:	243c 0000 05b5 	movel #1461,%d2                             <== NOT EXECUTED
   45fc8:	4c02 1800      	mulsl %d2,%d1                               <== NOT EXECUTED
   45fcc:	d280           	addl %d0,%d1                                <== NOT EXECUTED
            ( (TOD_DAYS_PER_YEAR * 4) + 1);                           
                                                                      
  time += _TOD_Days_since_last_leap_year[ year_mod_4 ];               
   45fce:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   45fd0:	d089           	addl %a1,%d0                                <== NOT EXECUTED
                                                                      
  time *= TOD_SECONDS_PER_DAY;                                        
   45fd2:	223c 0001 5180 	movel #86400,%d1                            <== NOT EXECUTED
   45fd8:	4c01 0800      	mulsl %d1,%d0                               <== NOT EXECUTED
                                                                      
  time += ((the_tod->hour * TOD_MINUTES_PER_HOUR) + the_tod->minute)  
   45fdc:	2228 000c      	movel %a0@(12),%d1                          <== NOT EXECUTED
   45fe0:	2401           	movel %d1,%d2                               <== NOT EXECUTED
   45fe2:	ed89           	lsll #6,%d1                                 <== NOT EXECUTED
   45fe4:	e58a           	lsll #2,%d2                                 <== NOT EXECUTED
   45fe6:	2268 0014      	moveal %a0@(20),%a1                         <== NOT EXECUTED
   45fea:	9282           	subl %d2,%d1                                <== NOT EXECUTED
   45fec:	d2a8 0010      	addl %a0@(16),%d1                           <== NOT EXECUTED
   45ff0:	d3fc 21da e500 	addal #567993600,%a1                        <== NOT EXECUTED
             * TOD_SECONDS_PER_MINUTE;                                
   45ff6:	2401           	movel %d1,%d2                               <== NOT EXECUTED
   45ff8:	ed89           	lsll #6,%d1                                 <== NOT EXECUTED
   45ffa:	e58a           	lsll #2,%d2                                 <== NOT EXECUTED
   45ffc:	9282           	subl %d2,%d1                                <== NOT EXECUTED
                                                                      
  time += the_tod->second;                                            
   45ffe:	d289           	addl %a1,%d1                                <== NOT EXECUTED
                                                                      
  time += TOD_SECONDS_1970_THROUGH_1988;                              
                                                                      
  return( time );                                                     
}                                                                     
   46000:	d081           	addl %d1,%d0                                <== NOT EXECUTED
   46002:	4cd7 040c      	moveml %sp@,%d2-%d3/%a2                     <== NOT EXECUTED
   46006:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004600c <_TOD_Validate>: */ bool _TOD_Validate( const rtems_time_of_day *the_tod ) {
   4600c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   46010:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   46014:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
  uint32_t   days_in_month;                                           
  uint32_t   ticks_per_second;                                        
                                                                      
  ticks_per_second = TOD_MICROSECONDS_PER_SECOND /                    
	    rtems_configuration_get_microseconds_per_tick();                 
   46016:	2039 0005 cfc0 	movel 5cfc0 <Configuration+0xc>,%d0         <== NOT EXECUTED
 */                                                                   
                                                                      
bool _TOD_Validate(                                                   
  const rtems_time_of_day *the_tod                                    
)                                                                     
{                                                                     
   4601c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  uint32_t   days_in_month;                                           
  uint32_t   ticks_per_second;                                        
                                                                      
  ticks_per_second = TOD_MICROSECONDS_PER_SECOND /                    
	    rtems_configuration_get_microseconds_per_tick();                 
  if ((!the_tod)                                  ||                  
   4601e:	4a88           	tstl %a0                                    <== NOT EXECUTED
   46020:	6762           	beqs 46084 <_TOD_Validate+0x78>             <== NOT EXECUTED
)                                                                     
{                                                                     
  uint32_t   days_in_month;                                           
  uint32_t   ticks_per_second;                                        
                                                                      
  ticks_per_second = TOD_MICROSECONDS_PER_SECOND /                    
   46022:	243c 000f 4240 	movel #1000000,%d2                          <== NOT EXECUTED
   46028:	4c40 2002      	remul %d0,%d2,%d2                           <== NOT EXECUTED
	    rtems_configuration_get_microseconds_per_tick();                 
  if ((!the_tod)                                  ||                  
   4602c:	b4a8 0018      	cmpl %a0@(24),%d2                           <== NOT EXECUTED
   46030:	6352           	blss 46084 <_TOD_Validate+0x78>             <== NOT EXECUTED
      (the_tod->ticks  >= ticks_per_second)       ||                  
   46032:	763b           	moveq #59,%d3                               <== NOT EXECUTED
   46034:	b6a8 0014      	cmpl %a0@(20),%d3                           <== NOT EXECUTED
   46038:	654a           	bcss 46084 <_TOD_Validate+0x78>             <== NOT EXECUTED
      (the_tod->second >= TOD_SECONDS_PER_MINUTE) ||                  
   4603a:	b6a8 0010      	cmpl %a0@(16),%d3                           <== NOT EXECUTED
   4603e:	6544           	bcss 46084 <_TOD_Validate+0x78>             <== NOT EXECUTED
      (the_tod->minute >= TOD_MINUTES_PER_HOUR)   ||                  
   46040:	7017           	moveq #23,%d0                               <== NOT EXECUTED
   46042:	b0a8 000c      	cmpl %a0@(12),%d0                           <== NOT EXECUTED
   46046:	653c           	bcss 46084 <_TOD_Validate+0x78>             <== NOT EXECUTED
      (the_tod->hour   >= TOD_HOURS_PER_DAY)      ||                  
      (the_tod->month  == 0)                      ||                  
   46048:	2028 0004      	movel %a0@(4),%d0                           <== NOT EXECUTED
	    rtems_configuration_get_microseconds_per_tick();                 
  if ((!the_tod)                                  ||                  
      (the_tod->ticks  >= ticks_per_second)       ||                  
      (the_tod->second >= TOD_SECONDS_PER_MINUTE) ||                  
      (the_tod->minute >= TOD_MINUTES_PER_HOUR)   ||                  
      (the_tod->hour   >= TOD_HOURS_PER_DAY)      ||                  
   4604c:	6736           	beqs 46084 <_TOD_Validate+0x78>             <== NOT EXECUTED
      (the_tod->month  == 0)                      ||                  
   4604e:	720c           	moveq #12,%d1                               <== NOT EXECUTED
   46050:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   46052:	6530           	bcss 46084 <_TOD_Validate+0x78>             <== NOT EXECUTED
      (the_tod->month  >  TOD_MONTHS_PER_YEAR)    ||                  
      (the_tod->year   <  TOD_BASE_YEAR)          ||                  
   46054:	2410           	movel %a0@,%d2                              <== NOT EXECUTED
      (the_tod->ticks  >= ticks_per_second)       ||                  
      (the_tod->second >= TOD_SECONDS_PER_MINUTE) ||                  
      (the_tod->minute >= TOD_MINUTES_PER_HOUR)   ||                  
      (the_tod->hour   >= TOD_HOURS_PER_DAY)      ||                  
      (the_tod->month  == 0)                      ||                  
      (the_tod->month  >  TOD_MONTHS_PER_YEAR)    ||                  
   46056:	0c82 0000 07c3 	cmpil #1987,%d2                             <== NOT EXECUTED
   4605c:	6326           	blss 46084 <_TOD_Validate+0x78>             <== NOT EXECUTED
      (the_tod->year   <  TOD_BASE_YEAR)          ||                  
      (the_tod->day    == 0) )                                        
   4605e:	2228 0008      	movel %a0@(8),%d1                           <== NOT EXECUTED
      (the_tod->second >= TOD_SECONDS_PER_MINUTE) ||                  
      (the_tod->minute >= TOD_MINUTES_PER_HOUR)   ||                  
      (the_tod->hour   >= TOD_HOURS_PER_DAY)      ||                  
      (the_tod->month  == 0)                      ||                  
      (the_tod->month  >  TOD_MONTHS_PER_YEAR)    ||                  
      (the_tod->year   <  TOD_BASE_YEAR)          ||                  
   46062:	6720           	beqs 46084 <_TOD_Validate+0x78>             <== NOT EXECUTED
      (the_tod->day    == 0) )                                        
     return false;                                                    
                                                                      
  if ( (the_tod->year % 4) == 0 )                                     
   46064:	163c 0003      	moveb #3,%d3                                <== NOT EXECUTED
   46068:	41f9 0005 c126 	lea 5c126 <_TOD_Days_per_month>,%a0         <== NOT EXECUTED
   4606e:	c483           	andl %d3,%d2                                <== NOT EXECUTED
   46070:	6606           	bnes 46078 <_TOD_Validate+0x6c>             <== NOT EXECUTED
    days_in_month = _TOD_Days_per_month[ 1 ][ the_tod->month ];       
   46072:	2030 0c34      	movel %a0@(00000034,%d0:l:4),%d0            <== NOT EXECUTED
   46076:	6004           	bras 4607c <_TOD_Validate+0x70>             <== NOT EXECUTED
  else                                                                
    days_in_month = _TOD_Days_per_month[ 0 ][ the_tod->month ];       
   46078:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
 *    false - if the the_tod is invalid                               
 *                                                                    
 *  NOTE: This routine only works for leap-years through 2099.        
 */                                                                   
                                                                      
bool _TOD_Validate(                                                   
   4607c:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   4607e:	54c0           	scc %d0                                     <== NOT EXECUTED
   46080:	4480           	negl %d0                                    <== NOT EXECUTED
   46082:	6002           	bras 46086 <_TOD_Validate+0x7a>             <== NOT EXECUTED
      (the_tod->hour   >= TOD_HOURS_PER_DAY)      ||                  
      (the_tod->month  == 0)                      ||                  
      (the_tod->month  >  TOD_MONTHS_PER_YEAR)    ||                  
      (the_tod->year   <  TOD_BASE_YEAR)          ||                  
      (the_tod->day    == 0) )                                        
     return false;                                                    
   46084:	4200           	clrb %d0                                    <== NOT EXECUTED
                                                                      
  if ( the_tod->day > days_in_month )                                 
    return false;                                                     
                                                                      
  return true;                                                        
}                                                                     
   46086:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
   46088:	261f           	movel %sp@+,%d3                             <== NOT EXECUTED
   4608a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00047284 <_Thread_Change_priority>: void _Thread_Change_priority( Thread_Control *the_thread, Priority_Control new_priority, bool prepend_it ) {
   47284:	4e56 fff0      	linkw %fp,#-16                              
   47288:	48d7 041c      	moveml %d2-%d4/%a2,%sp@                     
   4728c:	246e 0008      	moveal %fp@(8),%a2                          
*/                                                                    
                                                                      
  /*                                                                  
   * Save original state                                              
   */                                                                 
  original_state = the_thread->current_state;                         
   47290:	282a 0010      	movel %a2@(16),%d4                          
void _Thread_Change_priority(                                         
  Thread_Control   *the_thread,                                       
  Priority_Control  new_priority,                                     
  bool              prepend_it                                        
)                                                                     
{                                                                     
   47294:	242e 000c      	movel %fp@(12),%d2                          
  /*                                                                  
   * Set a transient state for the thread so it is pulled off the Ready chains.
   * This will prevent it from being scheduled no matter what happens in an
   * ISR.                                                             
   */                                                                 
  _Thread_Set_transient( the_thread );                                
   47298:	2f0a           	movel %a2,%sp@-                             
void _Thread_Change_priority(                                         
  Thread_Control   *the_thread,                                       
  Priority_Control  new_priority,                                     
  bool              prepend_it                                        
)                                                                     
{                                                                     
   4729a:	162e 0013      	moveb %fp@(19),%d3                          
  /*                                                                  
   * Set a transient state for the thread so it is pulled off the Ready chains.
   * This will prevent it from being scheduled no matter what happens in an
   * ISR.                                                             
   */                                                                 
  _Thread_Set_transient( the_thread );                                
   4729e:	4eb9 0004 7f18 	jsr 47f18 <_Thread_Set_transient>           
                                                                      
  /*                                                                  
   *  Do not bother recomputing all the priority related information if
   *  we are not REALLY changing priority.                            
   */                                                                 
 if ( the_thread->current_priority != new_priority )                  
   472a4:	588f           	addql #4,%sp                                
   472a6:	b4aa 0014      	cmpl %a2@(20),%d2                           
   472aa:	670c           	beqs 472b8 <_Thread_Change_priority+0x34>   
    _Thread_Set_priority( the_thread, new_priority );                 
   472ac:	2f02           	movel %d2,%sp@-                             
   472ae:	2f0a           	movel %a2,%sp@-                             
   472b0:	4eb9 0004 7ea4 	jsr 47ea4 <_Thread_Set_priority>            
   472b6:	508f           	addql #8,%sp                                
                                                                      
  _ISR_Disable( level );                                              
   472b8:	203c 0000 0700 	movel #1792,%d0                             
   472be:	40c2           	movew %sr,%d2                               
   472c0:	8082           	orl %d2,%d0                                 
   472c2:	46c0           	movew %d0,%sr                               
   472c4:	7204           	moveq #4,%d1                                
                                                                      
  /*                                                                  
   *  If the thread has more than STATES_TRANSIENT set, then it is blocked,
   *  If it is blocked on a thread queue, then we need to requeue it. 
   */                                                                 
  state = the_thread->current_state;                                  
   472c6:	202a 0010      	movel %a2@(16),%d0                          
   472ca:	c284           	andl %d4,%d1                                
  if ( state != STATES_TRANSIENT ) {                                  
   472cc:	7804           	moveq #4,%d4                                
   472ce:	b880           	cmpl %d0,%d4                                
   472d0:	6730           	beqs 47302 <_Thread_Change_priority+0x7e>   
    /* Only clear the transient state if it wasn't set already */     
    if ( ! _States_Is_transient( original_state ) )                   
   472d2:	4a81           	tstl %d1                                    
   472d4:	6608           	bnes 472de <_Thread_Change_priority+0x5a>   <== NEVER TAKEN
RTEMS_INLINE_ROUTINE States_Control _States_Clear (                   
  States_Control states_to_clear,                                     
  States_Control current_state                                        
)                                                                     
{                                                                     
   return (current_state & ~states_to_clear);                         
   472d6:	72fb           	moveq #-5,%d1                               
   472d8:	c280           	andl %d0,%d1                                
   472da:	2541 0010      	movel %d1,%a2@(16)                          
      the_thread->current_state = _States_Clear( STATES_TRANSIENT, state );
    _ISR_Enable( level );                                             
   472de:	46c2           	movew %d2,%sr                               
 */                                                                   
RTEMS_INLINE_ROUTINE bool _States_Is_waiting_on_thread_queue (        
  States_Control the_states                                           
)                                                                     
{                                                                     
   return (the_states & STATES_WAITING_ON_THREAD_QUEUE);              
   472e0:	0280 0003 bee0 	andil #245472,%d0                           
    if ( _States_Is_waiting_on_thread_queue( state ) ) {              
   472e6:	6700 00cc      	beqw 473b4 <_Thread_Change_priority+0x130>  
      _Thread_queue_Requeue( the_thread->Wait.queue, the_thread );    
   472ea:	2d4a 000c      	movel %a2,%fp@(12)                          
   472ee:	2d6a 0044 0008 	movel %a2@(68),%fp@(8)                      
                                                                      
  if ( !_Thread_Is_executing_also_the_heir() &&                       
       _Thread_Executing->is_preemptible )                            
    _Thread_Dispatch_necessary = true;                                
  _ISR_Enable( level );                                               
}                                                                     
   472f4:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                
   472fa:	4e5e           	unlk %fp                                    
    /* Only clear the transient state if it wasn't set already */     
    if ( ! _States_Is_transient( original_state ) )                   
      the_thread->current_state = _States_Clear( STATES_TRANSIENT, state );
    _ISR_Enable( level );                                             
    if ( _States_Is_waiting_on_thread_queue( state ) ) {              
      _Thread_queue_Requeue( the_thread->Wait.queue, the_thread );    
   472fc:	4ef9 0004 7e08 	jmp 47e08 <_Thread_queue_Requeue>           
    }                                                                 
    return;                                                           
  }                                                                   
                                                                      
  /* Only clear the transient state if it wasn't set already */       
  if ( ! _States_Is_transient( original_state ) ) {                   
   47302:	4a81           	tstl %d1                                    
   47304:	6674           	bnes 4737a <_Thread_Change_priority+0xf6>   <== NEVER TAKEN
   47306:	206a 008a      	moveal %a2@(138),%a0                        
     *  Ready Queue with interrupts off.                              
     *                                                                
     *  FIXME: hard-coded for priority scheduling. Might be ok since this
     *  function is specific to priority scheduling?                  
     */                                                               
    the_thread->current_state = _States_Clear( STATES_TRANSIENT, state );
   4730a:	42aa 0010      	clrl %a2@(16)                               
                                                                      
    if ( prepend_it )                                                 
   4730e:	4a03           	tstb %d3                                    
   47310:	6732           	beqs 47344 <_Thread_Change_priority+0xc0>   
                                                                      
RTEMS_INLINE_ROUTINE void _Priority_bit_map_Add (                     
  Priority_bit_map_Information *the_priority_map                      
)                                                                     
{                                                                     
  *the_priority_map->minor |= the_priority_map->ready_minor;          
   47312:	2268 0004      	moveal %a0@(4),%a1                          
   47316:	3028 000a      	movew %a0@(10),%d0                          
   4731a:	3211           	movew %a1@,%d1                              
   4731c:	8081           	orl %d1,%d0                                 
   4731e:	3280           	movew %d0,%a1@                              
  _Priority_Major_bit_map  |= the_priority_map->ready_major;          
   47320:	3228 0008      	movew %a0@(8),%d1                           
   47324:	3039 0005 c894 	movew 5c894 <_Priority_Major_bit_map>,%d0   
  Thread_Control                   *the_thread                        
)                                                                     
{                                                                     
  _Priority_bit_map_Add( &the_thread->scheduler.priority->Priority_map );
                                                                      
  _Chain_Prepend_unprotected( the_thread->scheduler.priority->ready_chain,
   4732a:	2050           	moveal %a0@,%a0                             
   4732c:	8081           	orl %d1,%d0                                 
)                                                                     
{                                                                     
  Chain_Node *before_node;                                            
                                                                      
  the_node->previous    = after_node;                                 
  before_node           = after_node->next;                           
   4732e:	2250           	moveal %a0@,%a1                             
   47330:	33c0 0005 c894 	movew %d0,5c894 <_Priority_Major_bit_map>   
  Chain_Node *the_node                                                
)                                                                     
{                                                                     
  Chain_Node *before_node;                                            
                                                                      
  the_node->previous    = after_node;                                 
   47336:	2548 0004      	movel %a0,%a2@(4)                           
  before_node           = after_node->next;                           
  after_node->next      = the_node;                                   
   4733a:	208a           	movel %a2,%a0@                              
  the_node->next        = before_node;                                
  before_node->previous = the_node;                                   
   4733c:	234a 0004      	movel %a2,%a1@(4)                           
  Chain_Node *before_node;                                            
                                                                      
  the_node->previous    = after_node;                                 
  before_node           = after_node->next;                           
  after_node->next      = the_node;                                   
  the_node->next        = before_node;                                
   47340:	2489           	movel %a1,%a2@                              
   47342:	6036           	bras 4737a <_Thread_Change_priority+0xf6>   
                                                                      
RTEMS_INLINE_ROUTINE void _Priority_bit_map_Add (                     
  Priority_bit_map_Information *the_priority_map                      
)                                                                     
{                                                                     
  *the_priority_map->minor |= the_priority_map->ready_minor;          
   47344:	2268 0004      	moveal %a0@(4),%a1                          
   47348:	3028 000a      	movew %a0@(10),%d0                          
   4734c:	3211           	movew %a1@,%d1                              
   4734e:	8081           	orl %d1,%d0                                 
   47350:	3280           	movew %d0,%a1@                              
  _Priority_Major_bit_map  |= the_priority_map->ready_major;          
   47352:	3228 0008      	movew %a0@(8),%d1                           
   47356:	3039 0005 c894 	movew 5c894 <_Priority_Major_bit_map>,%d0   
  Thread_Control                  *the_thread                         
)                                                                     
{                                                                     
  _Priority_bit_map_Add( &the_thread->scheduler.priority->Priority_map );
                                                                      
  _Chain_Append_unprotected( the_thread->scheduler.priority->ready_chain,
   4735c:	2050           	moveal %a0@,%a0                             
RTEMS_INLINE_ROUTINE void _Chain_Append_unprotected(                  
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   4735e:	2808           	movel %a0,%d4                               
   47360:	5884           	addql #4,%d4                                
   47362:	8081           	orl %d1,%d0                                 
  Chain_Node *old_last = tail->previous;                              
   47364:	2268 0008      	moveal %a0@(8),%a1                          
   47368:	33c0 0005 c894 	movew %d0,5c894 <_Priority_Major_bit_map>   
                                                                      
  the_node->next = tail;                                              
  tail->previous = the_node;                                          
   4736e:	214a 0008      	movel %a2,%a0@(8)                           
RTEMS_INLINE_ROUTINE void _Chain_Append_unprotected(                  
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   47372:	2484           	movel %d4,%a2@                              
  Chain_Node *old_last = tail->previous;                              
                                                                      
  the_node->next = tail;                                              
  tail->previous = the_node;                                          
  old_last->next = the_node;                                          
  the_node->previous = old_last;                                      
   47374:	2549 0004      	movel %a1,%a2@(4)                           
  Chain_Node *tail = _Chain_Tail( the_chain );                        
  Chain_Node *old_last = tail->previous;                              
                                                                      
  the_node->next = tail;                                              
  tail->previous = the_node;                                          
  old_last->next = the_node;                                          
   47378:	228a           	movel %a2,%a1@                              
      _Scheduler_priority_Ready_queue_enqueue_first( the_thread );    
    else                                                              
      _Scheduler_priority_Ready_queue_enqueue( the_thread );          
  }                                                                   
                                                                      
  _ISR_Flash( level );                                                
   4737a:	203c 0000 0700 	movel #1792,%d0                             
   47380:	46c2           	movew %d2,%sr                               
   47382:	8082           	orl %d2,%d0                                 
   47384:	46c0           	movew %d0,%sr                               
 */                                                                   
RTEMS_INLINE_ROUTINE void _Scheduler_Schedule(                        
    Scheduler_Control *the_scheduler                                  
)                                                                     
{                                                                     
  the_scheduler->Operations.schedule( the_scheduler );                
   47386:	4879 0005 c74e 	pea 5c74e <_Scheduler>                      
   4738c:	2079 0005 c752 	moveal 5c752 <_Scheduler+0x4>,%a0           
   47392:	4e90           	jsr %a0@                                    
 *  is also the heir thread, and false otherwise.                     
 */                                                                   
                                                                      
RTEMS_INLINE_ROUTINE bool _Thread_Is_executing_also_the_heir( void )  
{                                                                     
  return ( _Thread_Executing == _Thread_Heir );                       
   47394:	2079 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a0 
   *  We altered the set of thread priorities.  So let's figure out   
   *  who is the heir and if we need to switch to them.               
   */                                                                 
  _Scheduler_Schedule(&_Scheduler);                                   
                                                                      
  if ( !_Thread_Is_executing_also_the_heir() &&                       
   4739a:	588f           	addql #4,%sp                                
   4739c:	b1f9 0005 c888 	cmpal 5c888 <_Per_CPU_Information+0x10>,%a0 
   473a2:	670e           	beqs 473b2 <_Thread_Change_priority+0x12e>  
   473a4:	4a28 0074      	tstb %a0@(116)                              
   473a8:	6708           	beqs 473b2 <_Thread_Change_priority+0x12e>  <== NEVER TAKEN
       _Thread_Executing->is_preemptible )                            
    _Thread_Dispatch_necessary = true;                                
   473aa:	7001           	moveq #1,%d0                                
   473ac:	13c0 0005 c890 	moveb %d0,5c890 <_Per_CPU_Information+0x18> 
  _ISR_Enable( level );                                               
   473b2:	46c2           	movew %d2,%sr                               
}                                                                     
   473b4:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                
   473ba:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

000473c0 <_Thread_Clear_state>: ) { ISR_Level level; States_Control current_state; _ISR_Disable( level );
   473c0:	223c 0000 0700 	movel #1792,%d1                             
                                                                      
void _Thread_Clear_state(                                             
  Thread_Control *the_thread,                                         
  States_Control  state                                               
)                                                                     
{                                                                     
   473c6:	4e56 0000      	linkw %fp,#0                                
   473ca:	206e 0008      	moveal %fp@(8),%a0                          
   473ce:	2f03           	movel %d3,%sp@-                             
   473d0:	202e 000c      	movel %fp@(12),%d0                          
   473d4:	2f02           	movel %d2,%sp@-                             
  ISR_Level       level;                                              
  States_Control  current_state;                                      
                                                                      
  _ISR_Disable( level );                                              
   473d6:	40c2           	movew %sr,%d2                               
   473d8:	8282           	orl %d2,%d1                                 
   473da:	46c1           	movew %d1,%sr                               
    current_state = the_thread->current_state;                        
   473dc:	2228 0010      	movel %a0@(16),%d1                          
                                                                      
    if ( current_state & state ) {                                    
   473e0:	2600           	movel %d0,%d3                               
   473e2:	c681           	andl %d1,%d3                                
   473e4:	671c           	beqs 47402 <_Thread_Clear_state+0x42>       <== NEVER TAKEN
RTEMS_INLINE_ROUTINE States_Control _States_Clear (                   
  States_Control states_to_clear,                                     
  States_Control current_state                                        
)                                                                     
{                                                                     
   return (current_state & ~states_to_clear);                         
   473e6:	4680           	notl %d0                                    
   473e8:	c081           	andl %d1,%d0                                
      current_state =                                                 
      the_thread->current_state = _States_Clear( state, current_state );
   473ea:	2140 0010      	movel %d0,%a0@(16)                          
                                                                      
      if ( _States_Is_ready( current_state ) ) {                      
   473ee:	6612           	bnes 47402 <_Thread_Clear_state+0x42>       <== NEVER TAKEN
RTEMS_INLINE_ROUTINE void _Scheduler_Unblock(                         
    Scheduler_Control *the_scheduler,                                 
    Thread_Control    *the_thread                                     
)                                                                     
{                                                                     
  the_scheduler->Operations.unblock( the_scheduler, the_thread );     
   473f0:	2f08           	movel %a0,%sp@-                             
   473f2:	4879 0005 c74e 	pea 5c74e <_Scheduler>                      
   473f8:	2079 0005 c75e 	moveal 5c75e <_Scheduler+0x10>,%a0          
   473fe:	4e90           	jsr %a0@                                    
   47400:	508f           	addql #8,%sp                                
        _Scheduler_Unblock( &_Scheduler, the_thread);                 
      }                                                               
  }                                                                   
  _ISR_Enable( level );                                               
   47402:	46c2           	movew %d2,%sr                               
}                                                                     
   47404:	242e fff8      	movel %fp@(-8),%d2                          
   47408:	262e fffc      	movel %fp@(-4),%d3                          
   4740c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00047410 <_Thread_Close>: RTEMS_INLINE_ROUTINE void _Objects_Invalidate_Id( Objects_Information *information, Objects_Control *the_object ) { _Objects_Set_local_object(
   47410:	4280           	clrl %d0                                    
                                                                      
void _Thread_Close(                                                   
  Objects_Information  *information,                                  
  Thread_Control       *the_thread                                    
)                                                                     
{                                                                     
   47412:	4e56 0000      	linkw %fp,#0                                
   47416:	2f0b           	movel %a3,%sp@-                             
   47418:	266e 0008      	moveal %fp@(8),%a3                          
   4741c:	2f0a           	movel %a2,%sp@-                             
   4741e:	246e 000c      	moveal %fp@(12),%a2                         
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   47422:	206b 0018      	moveal %a3@(24),%a0                         
RTEMS_INLINE_ROUTINE void _Objects_Invalidate_Id(                     
  Objects_Information  *information,                                  
  Objects_Control      *the_object                                    
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   47426:	302a 000a      	movew %a2@(10),%d0                          
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   4742a:	42b0 0c00      	clrl %a0@(00000000,%d0:l:4)                 
 */                                                                   
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unnest_dispatch( void )             
{                                                                     
  RTEMS_COMPILER_MEMORY_BARRIER();                                    
  _Thread_Dispatch_disable_level -= 1;                                
   4742e:	2039 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d0
   47434:	5380           	subql #1,%d0                                
   *  disappear and set a transient state on it.  So we temporarily   
   *  unnest dispatching.                                             
   */                                                                 
  _Thread_Unnest_dispatch();                                          
                                                                      
  _User_extensions_Thread_delete( the_thread );                       
   47436:	2f0a           	movel %a2,%sp@-                             
   47438:	23c0 0005 c6c8 	movel %d0,5c6c8 <_Thread_Dispatch_disable_level>
   4743e:	4eb9 0004 8388 	jsr 48388 <_User_extensions_Thread_delete>  
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   47444:	2039 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d0
   4744a:	5280           	addql #1,%d0                                
   4744c:	23c0 0005 c6c8 	movel %d0,5c6c8 <_Thread_Dispatch_disable_level>
  /*                                                                  
   *  Now we are in a dispatching critical section again and we       
   *  can take the thread OUT of the published set.  It is invalid    
   *  to use this thread's Id OR name after this call.                
   */                                                                 
  _Objects_Close( information, &the_thread->Object );                 
   47452:	2f0a           	movel %a2,%sp@-                             
   47454:	2f0b           	movel %a3,%sp@-                             
   47456:	4eb9 0004 688c 	jsr 4688c <_Objects_Close>                  
                                                                      
  /*                                                                  
   *  By setting the dormant state, the thread will not be considered 
   *  for scheduling when we remove any blocking states.              
   */                                                                 
  _Thread_Set_state( the_thread, STATES_DORMANT );                    
   4745c:	4878 0001      	pea 1 <ADD>                                 
   47460:	2f0a           	movel %a2,%sp@-                             
   47462:	4eb9 0004 7ecc 	jsr 47ecc <_Thread_Set_state>               
                                                                      
  if ( !_Thread_queue_Extract_with_proxy( the_thread ) ) {            
   47468:	2f0a           	movel %a2,%sp@-                             
   4746a:	4eb9 0004 7d3c 	jsr 47d3c <_Thread_queue_Extract_with_proxy>
   47470:	4fef 0018      	lea %sp@(24),%sp                            
   47474:	4a00           	tstb %d0                                    
   47476:	6614           	bnes 4748c <_Thread_Close+0x7c>             <== NEVER TAKEN
    if ( _Watchdog_Is_active( &the_thread->Timer ) )                  
   47478:	7002           	moveq #2,%d0                                
   4747a:	b0aa 0050      	cmpl %a2@(80),%d0                           
   4747e:	660c           	bnes 4748c <_Thread_Close+0x7c>             <== ALWAYS TAKEN
      (void) _Watchdog_Remove( &the_thread->Timer );                  
   47480:	486a 0048      	pea %a2@(72)                                <== NOT EXECUTED
   47484:	4eb9 0004 8568 	jsr 48568 <_Watchdog_Remove>                <== NOT EXECUTED
   4748a:	588f           	addql #4,%sp                                <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Scheduler_Thread_scheduler_free(           
  Scheduler_Control *the_scheduler,                                   
  Thread_Control    *the_thread                                       
)                                                                     
{                                                                     
  return the_scheduler->Operations.scheduler_free( the_scheduler, the_thread );
   4748c:	2f0a           	movel %a2,%sp@-                             
   4748e:	4879 0005 c74e 	pea 5c74e <_Scheduler>                      
   47494:	2079 0005 c766 	moveal 5c766 <_Scheduler+0x18>,%a0          
   4749a:	4e90           	jsr %a0@                                    
  /*                                                                  
   *  The thread might have been FP.  So deal with that.              
   */                                                                 
#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )        
#if ( CPU_USE_DEFERRED_FP_SWITCH == TRUE )                            
  if ( _Thread_Is_allocated_fp( the_thread ) )                        
   4749c:	508f           	addql #8,%sp                                
   4749e:	b5f9 0005 c74a 	cmpal 5c74a <_Thread_Allocated_fp>,%a2      
   474a4:	6606           	bnes 474ac <_Thread_Close+0x9c>             <== ALWAYS TAKEN
 */                                                                   
                                                                      
#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )        
RTEMS_INLINE_ROUTINE void _Thread_Deallocate_fp( void )               
{                                                                     
  _Thread_Allocated_fp = NULL;                                        
   474a6:	42b9 0005 c74a 	clrl 5c74a <_Thread_Allocated_fp>           <== NOT EXECUTED
    _Thread_Deallocate_fp();                                          
#endif                                                                
  the_thread->fp_context = NULL;                                      
                                                                      
  if ( the_thread->Start.fp_context )                                 
   474ac:	202a 00b8      	movel %a2@(184),%d0                         
#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )        
#if ( CPU_USE_DEFERRED_FP_SWITCH == TRUE )                            
  if ( _Thread_Is_allocated_fp( the_thread ) )                        
    _Thread_Deallocate_fp();                                          
#endif                                                                
  the_thread->fp_context = NULL;                                      
   474b0:	42aa 00f4      	clrl %a2@(244)                              
                                                                      
  if ( the_thread->Start.fp_context )                                 
   474b4:	4a80           	tstl %d0                                    
   474b6:	670a           	beqs 474c2 <_Thread_Close+0xb2>             <== ALWAYS TAKEN
    (void) _Workspace_Free( the_thread->Start.fp_context );           
   474b8:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   474ba:	4eb9 0004 86dc 	jsr 486dc <_Workspace_Free>                 <== NOT EXECUTED
   474c0:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Free the rest of the memory associated with this task           
   *  and set the associated pointers to NULL for safety.             
   */                                                                 
  _Thread_Stack_Free( the_thread );                                   
   474c2:	2f0a           	movel %a2,%sp@-                             
   474c4:	4eb9 0004 7fe8 	jsr 47fe8 <_Thread_Stack_Free>              
  the_thread->Start.stack = NULL;                                     
                                                                      
  if ( the_thread->extensions )                                       
   474ca:	202a 0104      	movel %a2@(260),%d0                         
   474ce:	588f           	addql #4,%sp                                
  /*                                                                  
   *  Free the rest of the memory associated with this task           
   *  and set the associated pointers to NULL for safety.             
   */                                                                 
  _Thread_Stack_Free( the_thread );                                   
  the_thread->Start.stack = NULL;                                     
   474d0:	42aa 00bc      	clrl %a2@(188)                              
                                                                      
  if ( the_thread->extensions )                                       
   474d4:	4a80           	tstl %d0                                    
   474d6:	670a           	beqs 474e2 <_Thread_Close+0xd2>             <== ALWAYS TAKEN
    (void) _Workspace_Free( the_thread->extensions );                 
   474d8:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   474da:	4eb9 0004 86dc 	jsr 486dc <_Workspace_Free>                 <== NOT EXECUTED
   474e0:	588f           	addql #4,%sp                                <== NOT EXECUTED
  the_thread->extensions = NULL;                                      
   474e2:	42aa 0104      	clrl %a2@(260)                              
}                                                                     
   474e6:	246e fff8      	moveal %fp@(-8),%a2                         
   474ea:	266e fffc      	moveal %fp@(-4),%a3                         
   474ee:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

000475a4 <_Thread_Delay_ended>: void _Thread_Delay_ended( Objects_Id id, void *ignored __attribute__((unused)) ) {
   475a4:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
  Thread_Control    *the_thread;                                      
  Objects_Locations  location;                                        
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   475a8:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   475ac:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   475b0:	4eb9 0004 7744 	jsr 47744 <_Thread_Get>                     <== NOT EXECUTED
  switch ( location ) {                                               
   475b6:	508f           	addql #8,%sp                                <== NOT EXECUTED
   475b8:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   475bc:	661e           	bnes 475dc <_Thread_Delay_ended+0x38>       <== NOT EXECUTED
#if defined(RTEMS_MULTIPROCESSING)                                    
    case OBJECTS_REMOTE:  /* impossible */                            
#endif                                                                
      break;                                                          
    case OBJECTS_LOCAL:                                               
      _Thread_Clear_state(                                            
   475be:	2f3c 1000 0018 	movel #268435480,%sp@-                      <== NOT EXECUTED
   475c4:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   475c6:	4eb9 0004 73c0 	jsr 473c0 <_Thread_Clear_state>             <== NOT EXECUTED
   475cc:	508f           	addql #8,%sp                                <== NOT EXECUTED
   475ce:	2039 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   475d4:	5380           	subql #1,%d0                                <== NOT EXECUTED
   475d6:	23c0 0005 c6c8 	movel %d0,5c6c8 <_Thread_Dispatch_disable_level><== NOT EXECUTED
          | STATES_INTERRUPTIBLE_BY_SIGNAL                            
      );                                                              
      _Thread_Unnest_dispatch();                                      
      break;                                                          
  }                                                                   
}                                                                     
   475dc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00040564 <_Thread_Disable_dispatch>: */ extern Heap_Control *RTEMS_Malloc_Heap; #endif RTEMS_INLINE_ROUTINE void _Thread_Disable_dispatch( void ) {
   40564:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   40568:	2039 0006 1f54 	movel 61f54 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   4056e:	5280           	addql #1,%d0                                <== NOT EXECUTED
   40570:	23c0 0006 1f54 	movel %d0,61f54 <_Thread_Dispatch_disable_level><== NOT EXECUTED
  #if defined(RTEMS_HEAVY_MALLOC_DEBUG)                               
    if ( _Thread_Dispatch_disable_level == 1 ) {                      
      _Heap_Walk( RTEMS_Malloc_Heap,99, false );                      
    }                                                                 
  #endif                                                              
}                                                                     
   40576:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000475e0 <_Thread_Dispatch>: * dispatch thread * no dispatch thread */ void _Thread_Dispatch( void ) {
   475e0:	4e56 ffc8      	linkw %fp,#-56                              
   475e4:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 
  Thread_Control   *executing;                                        
  Thread_Control   *heir;                                             
  ISR_Level         level;                                            
                                                                      
  executing   = _Thread_Executing;                                    
  _ISR_Disable( level );                                              
   475e8:	283c 0000 0700 	movel #1792,%d4                             
   475ee:	2204           	movel %d4,%d1                               
{                                                                     
  Thread_Control   *executing;                                        
  Thread_Control   *heir;                                             
  ISR_Level         level;                                            
                                                                      
  executing   = _Thread_Executing;                                    
   475f0:	2479 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a2 
  _ISR_Disable( level );                                              
   475f6:	40c0           	movew %sr,%d0                               
   475f8:	8280           	orl %d0,%d1                                 
   475fa:	46c1           	movew %d1,%sr                               
    _ISR_Enable( level );                                             
                                                                      
    #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                        
      {                                                               
        Timestamp_Control uptime, ran;                                
        _TOD_Get_uptime( &uptime );                                   
   475fc:	260e           	movel %fp,%d3                               
        _Timestamp_Subtract(                                          
   475fe:	240e           	movel %fp,%d2                               
    _ISR_Enable( level );                                             
                                                                      
    #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                        
      {                                                               
        Timestamp_Control uptime, ran;                                
        _TOD_Get_uptime( &uptime );                                   
   47600:	5183           	subql #8,%d3                                
        _Timestamp_Subtract(                                          
   47602:	0682 ffff fff0 	addil #-16,%d2                              
          &_Thread_Time_of_last_context_switch,                       
          &uptime,                                                    
          &ran                                                        
        );                                                            
        _Timestamp_Add_to( &executing->cpu_time_used, &ran );         
   47608:	2e3c 0004 8154 	movel #295252,%d7                           
    if ( _Thread_libc_reent ) {                                       
      executing->libc_reent = *_Thread_libc_reent;                    
      *_Thread_libc_reent = heir->libc_reent;                         
    }                                                                 
                                                                      
    _User_extensions_Thread_switch( executing, heir );                
   4760e:	2c3c 0004 8408 	movel #295944,%d6                           
    if ( executing->fp_context != NULL )                              
      _Context_Save_fp( &executing->fp_context );                     
#endif                                                                
#endif                                                                
                                                                      
    _Context_Switch( &executing->Registers, &heir->Registers );       
   47614:	2a3c 0004 8728 	movel #296744,%d5                           
#if ( CPU_USE_DEFERRED_FP_SWITCH == TRUE )                            
    if ( (executing->fp_context != NULL) &&                           
         !_Thread_Is_allocated_fp( executing ) ) {                    
      if ( _Thread_Allocated_fp != NULL )                             
        _Context_Save_fp( &_Thread_Allocated_fp->fp_context );        
      _Context_Restore_fp( &executing->fp_context );                  
   4761a:	4bf9 0004 8890 	lea 48890 <_CPU_Context_restore_fp>,%a5     
#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )        
#if ( CPU_USE_DEFERRED_FP_SWITCH == TRUE )                            
    if ( (executing->fp_context != NULL) &&                           
         !_Thread_Is_allocated_fp( executing ) ) {                    
      if ( _Thread_Allocated_fp != NULL )                             
        _Context_Save_fp( &_Thread_Allocated_fp->fp_context );        
   47620:	49f9 0004 886e 	lea 4886e <_CPU_Context_save_fp>,%a4        
  Thread_Control   *heir;                                             
  ISR_Level         level;                                            
                                                                      
  executing   = _Thread_Executing;                                    
  _ISR_Disable( level );                                              
  while ( _Thread_Dispatch_necessary == true ) {                      
   47626:	6000 00d4      	braw 476fc <_Thread_Dispatch+0x11c>         
    heir = _Thread_Heir;                                              
    _Thread_Dispatch_disable_level = 1;                               
   4762a:	7201           	moveq #1,%d1                                
   4762c:	23c1 0005 c6c8 	movel %d1,5c6c8 <_Thread_Dispatch_disable_level>
  ISR_Level         level;                                            
                                                                      
  executing   = _Thread_Executing;                                    
  _ISR_Disable( level );                                              
  while ( _Thread_Dispatch_necessary == true ) {                      
    heir = _Thread_Heir;                                              
   47632:	2679 0005 c888 	moveal 5c888 <_Per_CPU_Information+0x10>,%a3
    _Thread_Dispatch_disable_level = 1;                               
    _Thread_Dispatch_necessary = false;                               
   47638:	4201           	clrb %d1                                    
    _Thread_Executing = heir;                                         
   4763a:	23cb 0005 c884 	movel %a3,5c884 <_Per_CPU_Information+0xc>  
  executing   = _Thread_Executing;                                    
  _ISR_Disable( level );                                              
  while ( _Thread_Dispatch_necessary == true ) {                      
    heir = _Thread_Heir;                                              
    _Thread_Dispatch_disable_level = 1;                               
    _Thread_Dispatch_necessary = false;                               
   47640:	13c1 0005 c890 	moveb %d1,5c890 <_Per_CPU_Information+0x18> 
    /*                                                                
     *  When the heir and executing are the same, then we are being   
     *  requested to do the post switch dispatching.  This is normally
     *  done to dispatch signals.                                     
     */                                                               
    if ( heir == executing )                                          
   47646:	b5cb           	cmpal %a3,%a2                               
   47648:	6700 00bc      	beqw 47706 <_Thread_Dispatch+0x126>         
     */                                                               
#if __RTEMS_ADA__                                                     
    executing->rtems_ada_self = rtems_ada_self;                       
    rtems_ada_self = heir->rtems_ada_self;                            
#endif                                                                
    if ( heir->budget_algorithm == THREAD_CPU_BUDGET_ALGORITHM_RESET_TIMESLICE )
   4764c:	7201           	moveq #1,%d1                                
   4764e:	b2ab 007a      	cmpl %a3@(122),%d1                          
   47652:	660a           	bnes 4765e <_Thread_Dispatch+0x7e>          <== ALWAYS TAKEN
      heir->cpu_time_budget = _Thread_Ticks_per_timeslice;            
   47654:	41f9 0005 c680 	lea 5c680 <_Thread_Ticks_per_timeslice>,%a0 <== NOT EXECUTED
   4765a:	2750 0076      	movel %a0@,%a3@(118)                        <== NOT EXECUTED
                                                                      
    _ISR_Enable( level );                                             
   4765e:	46c0           	movew %d0,%sr                               
                                                                      
    #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                        
      {                                                               
        Timestamp_Control uptime, ran;                                
        _TOD_Get_uptime( &uptime );                                   
   47660:	2f03           	movel %d3,%sp@-                             
   47662:	4eb9 0004 a13c 	jsr 4a13c <_TOD_Get_uptime>                 
        _Timestamp_Subtract(                                          
   47668:	2f02           	movel %d2,%sp@-                             
   4766a:	2f03           	movel %d3,%sp@-                             
   4766c:	4879 0005 c794 	pea 5c794 <_Thread_Time_of_last_context_switch>
   47672:	4eb9 0004 818c 	jsr 4818c <_Timespec_Subtract>              
          &_Thread_Time_of_last_context_switch,                       
          &uptime,                                                    
          &ran                                                        
        );                                                            
        _Timestamp_Add_to( &executing->cpu_time_used, &ran );         
   47678:	2047           	moveal %d7,%a0                              
   4767a:	2f02           	movel %d2,%sp@-                             
   4767c:	486a 0082      	pea %a2@(130)                               
   47680:	4e90           	jsr %a0@                                    
    #endif                                                            
                                                                      
    /*                                                                
     * Switch libc's task specific data.                              
     */                                                               
    if ( _Thread_libc_reent ) {                                       
   47682:	2079 0005 c76e 	moveal 5c76e <_Thread_libc_reent>,%a0       
   47688:	4fef 0018      	lea %sp@(24),%sp                            
          &_Thread_Time_of_last_context_switch,                       
          &uptime,                                                    
          &ran                                                        
        );                                                            
        _Timestamp_Add_to( &executing->cpu_time_used, &ran );         
        _Thread_Time_of_last_context_switch = uptime;                 
   4768c:	202e fff8      	movel %fp@(-8),%d0                          
   47690:	222e fffc      	movel %fp@(-4),%d1                          
   47694:	23c0 0005 c794 	movel %d0,5c794 <_Thread_Time_of_last_context_switch>
   4769a:	23c1 0005 c798 	movel %d1,5c798 <_Thread_Time_of_last_context_switch+0x4>
    #endif                                                            
                                                                      
    /*                                                                
     * Switch libc's task specific data.                              
     */                                                               
    if ( _Thread_libc_reent ) {                                       
   476a0:	4a88           	tstl %a0                                    
   476a2:	6708           	beqs 476ac <_Thread_Dispatch+0xcc>          <== NEVER TAKEN
      executing->libc_reent = *_Thread_libc_reent;                    
   476a4:	2550 00f8      	movel %a0@,%a2@(248)                        
      *_Thread_libc_reent = heir->libc_reent;                         
   476a8:	20ab 00f8      	movel %a3@(248),%a0@                        
    }                                                                 
                                                                      
    _User_extensions_Thread_switch( executing, heir );                
   476ac:	2f0b           	movel %a3,%sp@-                             
   476ae:	2046           	moveal %d6,%a0                              
   476b0:	2f0a           	movel %a2,%sp@-                             
   476b2:	4e90           	jsr %a0@                                    
    if ( executing->fp_context != NULL )                              
      _Context_Save_fp( &executing->fp_context );                     
#endif                                                                
#endif                                                                
                                                                      
    _Context_Switch( &executing->Registers, &heir->Registers );       
   476b4:	486b 00c0      	pea %a3@(192)                               
   476b8:	2045           	moveal %d5,%a0                              
   476ba:	486a 00c0      	pea %a2@(192)                               
   476be:	4e90           	jsr %a0@                                    
                                                                      
#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )        
#if ( CPU_USE_DEFERRED_FP_SWITCH == TRUE )                            
    if ( (executing->fp_context != NULL) &&                           
   476c0:	4fef 0010      	lea %sp@(16),%sp                            
   476c4:	4aaa 00f4      	tstl %a2@(244)                              
   476c8:	6724           	beqs 476ee <_Thread_Dispatch+0x10e>         <== ALWAYS TAKEN
#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )        
RTEMS_INLINE_ROUTINE bool _Thread_Is_allocated_fp (                   
  const Thread_Control *the_thread                                    
)                                                                     
{                                                                     
  return ( the_thread == _Thread_Allocated_fp );                      
   476ca:	2079 0005 c74a 	moveal 5c74a <_Thread_Allocated_fp>,%a0     <== NOT EXECUTED
   476d0:	b1ca           	cmpal %a2,%a0                               <== NOT EXECUTED
   476d2:	671a           	beqs 476ee <_Thread_Dispatch+0x10e>         <== NOT EXECUTED
         !_Thread_Is_allocated_fp( executing ) ) {                    
      if ( _Thread_Allocated_fp != NULL )                             
   476d4:	4a88           	tstl %a0                                    <== NOT EXECUTED
   476d6:	6708           	beqs 476e0 <_Thread_Dispatch+0x100>         <== NOT EXECUTED
        _Context_Save_fp( &_Thread_Allocated_fp->fp_context );        
   476d8:	4868 00f4      	pea %a0@(244)                               <== NOT EXECUTED
   476dc:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   476de:	588f           	addql #4,%sp                                <== NOT EXECUTED
      _Context_Restore_fp( &executing->fp_context );                  
   476e0:	486a 00f4      	pea %a2@(244)                               <== NOT EXECUTED
   476e4:	4e95           	jsr %a5@                                    <== NOT EXECUTED
      _Thread_Allocated_fp = executing;                               
   476e6:	588f           	addql #4,%sp                                <== NOT EXECUTED
   476e8:	23ca 0005 c74a 	movel %a2,5c74a <_Thread_Allocated_fp>      <== NOT EXECUTED
    if ( executing->fp_context != NULL )                              
      _Context_Restore_fp( &executing->fp_context );                  
#endif                                                                
#endif                                                                
                                                                      
    executing = _Thread_Executing;                                    
   476ee:	2479 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a2 
                                                                      
    _ISR_Disable( level );                                            
   476f4:	2204           	movel %d4,%d1                               
   476f6:	40c0           	movew %sr,%d0                               
   476f8:	8280           	orl %d0,%d1                                 
   476fa:	46c1           	movew %d1,%sr                               
  Thread_Control   *heir;                                             
  ISR_Level         level;                                            
                                                                      
  executing   = _Thread_Executing;                                    
  _ISR_Disable( level );                                              
  while ( _Thread_Dispatch_necessary == true ) {                      
   476fc:	1239 0005 c890 	moveb 5c890 <_Per_CPU_Information+0x18>,%d1 
   47702:	6600 ff26      	bnew 4762a <_Thread_Dispatch+0x4a>          
                                                                      
    _ISR_Disable( level );                                            
  }                                                                   
                                                                      
post_switch:                                                          
  _Thread_Dispatch_disable_level = 0;                                 
   47706:	42b9 0005 c6c8 	clrl 5c6c8 <_Thread_Dispatch_disable_level> 
                                                                      
  _ISR_Enable( level );                                               
   4770c:	46c0           	movew %d0,%sr                               
                                                                      
  _API_extensions_Run_postswitch();                                   
   4770e:	4eb9 0004 5e2c 	jsr 45e2c <_API_extensions_Run_postswitch>  
}                                                                     
   47714:	4cee 3cfc ffc8 	moveml %fp@(-56),%d2-%d7/%a2-%a5            
   4771a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00047744 <_Thread_Get>: */ Thread_Control *_Thread_Get ( Objects_Id id, Objects_Locations *location ) {
   47744:	4e56 0000      	linkw %fp,#0                                
   47748:	202e 0008      	movel %fp@(8),%d0                           
   4774c:	2f03           	movel %d3,%sp@-                             
   4774e:	206e 000c      	moveal %fp@(12),%a0                         
   47752:	2f02           	movel %d2,%sp@-                             
  uint32_t             the_class;                                     
  Objects_Information **api_information;                              
  Objects_Information *information;                                   
  Thread_Control      *tp = (Thread_Control *) 0;                     
                                                                      
  if ( _Objects_Are_ids_equal( id, OBJECTS_ID_OF_SELF ) ) {           
   47754:	4a80           	tstl %d0                                    
   47756:	6618           	bnes 47770 <_Thread_Get+0x2c>               
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   47758:	2039 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d0
   4775e:	5280           	addql #1,%d0                                
   47760:	23c0 0005 c6c8 	movel %d0,5c6c8 <_Thread_Dispatch_disable_level>
    _Thread_Disable_dispatch();                                       
    *location = OBJECTS_LOCAL;                                        
   47766:	4290           	clrl %a0@                                   
    tp = _Thread_Executing;                                           
   47768:	2039 0005 c884 	movel 5c884 <_Per_CPU_Information+0xc>,%d0  
    goto done;                                                        
   4776e:	6044           	bras 477b4 <_Thread_Get+0x70>               
 */                                                                   
RTEMS_INLINE_ROUTINE Objects_APIs _Objects_Get_API(                   
  Objects_Id id                                                       
)                                                                     
{                                                                     
  return (Objects_APIs) ((id >> OBJECTS_API_START_BIT) & OBJECTS_API_VALID_BITS);
   47770:	7418           	moveq #24,%d2                               
   47772:	2200           	movel %d0,%d1                               
   47774:	e4a9           	lsrl %d2,%d1                                
   47776:	7607           	moveq #7,%d3                                
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Objects_Is_api_valid(                      
  uint32_t   the_api                                                  
)                                                                     
{                                                                     
  if ( !the_api || the_api > OBJECTS_APIS_LAST )                      
   47778:	143c 0002      	moveb #2,%d2                                
 */                                                                   
RTEMS_INLINE_ROUTINE Objects_APIs _Objects_Get_API(                   
  Objects_Id id                                                       
)                                                                     
{                                                                     
  return (Objects_APIs) ((id >> OBJECTS_API_START_BIT) & OBJECTS_API_VALID_BITS);
   4777c:	c283           	andl %d3,%d1                                
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Objects_Is_api_valid(                      
  uint32_t   the_api                                                  
)                                                                     
{                                                                     
  if ( !the_api || the_api > OBJECTS_APIS_LAST )                      
   4777e:	2241           	moveal %d1,%a1                              
   47780:	5389           	subql #1,%a1                                
   47782:	b489           	cmpl %a1,%d2                                
   47784:	643a           	bccs 477c0 <_Thread_Get+0x7c>               <== ALWAYS TAKEN
   47786:	6014           	bras 4779c <_Thread_Get+0x58>               <== NOT EXECUTED
  if ( the_class != 1 ) {       /* threads are always first class :) */
    *location = OBJECTS_ERROR;                                        
    goto done;                                                        
  }                                                                   
                                                                      
  api_information = _Objects_Information_table[ the_api ];            
   47788:	43f9 0005 c684 	lea 5c684 <_Objects_Information_table>,%a1  
   4778e:	2271 1c00      	moveal %a1@(00000000,%d1:l:4),%a1           
  /*                                                                  
   *  There is no way for this to happen if POSIX is enabled.         
   */                                                                 
  #if !defined(RTEMS_POSIX_API)                                       
    if ( !api_information ) {                                         
   47792:	4a89           	tstl %a1                                    
   47794:	6706           	beqs 4779c <_Thread_Get+0x58>               <== NEVER TAKEN
      *location = OBJECTS_ERROR;                                      
      goto done;                                                      
    }                                                                 
  #endif                                                              
                                                                      
  information = api_information[ the_class ];                         
   47796:	2229 0004      	movel %a1@(4),%d1                           
  if ( !information ) {                                               
   4779a:	6608           	bnes 477a4 <_Thread_Get+0x60>               <== ALWAYS TAKEN
    *location = OBJECTS_ERROR;                                        
   4779c:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4779e:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
{                                                                     
  uint32_t             the_api;                                       
  uint32_t             the_class;                                     
  Objects_Information **api_information;                              
  Objects_Information *information;                                   
  Thread_Control      *tp = (Thread_Control *) 0;                     
   477a0:	4280           	clrl %d0                                    <== NOT EXECUTED
  #endif                                                              
                                                                      
  information = api_information[ the_class ];                         
  if ( !information ) {                                               
    *location = OBJECTS_ERROR;                                        
    goto done;                                                        
   477a2:	6010           	bras 477b4 <_Thread_Get+0x70>               <== NOT EXECUTED
  }                                                                   
                                                                      
  tp = (Thread_Control *) _Objects_Get( information, id, location );  
   477a4:	2f08           	movel %a0,%sp@-                             
   477a6:	2f00           	movel %d0,%sp@-                             
   477a8:	2f01           	movel %d1,%sp@-                             
   477aa:	4eb9 0004 6c68 	jsr 46c68 <_Objects_Get>                    
   477b0:	4fef 000c      	lea %sp@(12),%sp                            
                                                                      
done:                                                                 
  return tp;                                                          
}                                                                     
   477b4:	242e fff8      	movel %fp@(-8),%d2                          
   477b8:	262e fffc      	movel %fp@(-4),%d3                          
   477bc:	4e5e           	unlk %fp                                    
   477be:	4e75           	rts                                         
 */                                                                   
RTEMS_INLINE_ROUTINE uint32_t _Objects_Get_class(                     
  Objects_Id id                                                       
)                                                                     
{                                                                     
  return (uint32_t)                                                   
   477c0:	761b           	moveq #27,%d3                               
   477c2:	2400           	movel %d0,%d2                               
   477c4:	e6aa           	lsrl %d3,%d2                                
    *location = OBJECTS_ERROR;                                        
    goto done;                                                        
  }                                                                   
                                                                      
  the_class = _Objects_Get_class( id );                               
  if ( the_class != 1 ) {       /* threads are always first class :) */
   477c6:	163c 0001      	moveb #1,%d3                                
   477ca:	b682           	cmpl %d2,%d3                                
   477cc:	67ba           	beqs 47788 <_Thread_Get+0x44>               <== ALWAYS TAKEN
   477ce:	60cc           	bras 4779c <_Thread_Get+0x58>               <== NOT EXECUTED
                                                                      

0004b9c8 <_Thread_Handler>: * * Output parameters: NONE */ void _Thread_Handler( void ) {
   4b9c8:	4e56 0000      	linkw %fp,#0                                
   4b9cc:	2f0a           	movel %a2,%sp@-                             
  #if defined(EXECUTE_GLOBAL_CONSTRUCTORS)                            
    static char doneConstructors;                                     
    char doneCons;                                                    
  #endif                                                              
                                                                      
  executing = _Thread_Executing;                                      
   4b9ce:	2479 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a2 
 *                                                                    
 *  Output parameters:  NONE                                          
 */                                                                   
                                                                      
void _Thread_Handler( void )                                          
{                                                                     
   4b9d4:	2f02           	movel %d2,%sp@-                             
  /*                                                                  
   * have to put level into a register for those cpu's that use       
   * inline asm here                                                  
   */                                                                 
                                                                      
  level = executing->Start.isr_level;                                 
   4b9d6:	222a 00a8      	movel %a2@(168),%d1                         
  _ISR_Set_level(level);                                              
   4b9da:	40c0           	movew %sr,%d0                               
   4b9dc:	e189           	lsll #8,%d1                                 
   4b9de:	0280 0000 f8ff 	andil #63743,%d0                            
   4b9e4:	8081           	orl %d1,%d0                                 
   4b9e6:	46c0           	movew %d0,%sr                               
                                                                      
  #if defined(EXECUTE_GLOBAL_CONSTRUCTORS)                            
    doneCons = doneConstructors;                                      
    doneConstructors = 1;                                             
   4b9e8:	7001           	moveq #1,%d0                                
                                                                      
  level = executing->Start.isr_level;                                 
  _ISR_Set_level(level);                                              
                                                                      
  #if defined(EXECUTE_GLOBAL_CONSTRUCTORS)                            
    doneCons = doneConstructors;                                      
   4b9ea:	1439 0005 be8c 	moveb 5be8c <doneConstructors.3357>,%d2     
    doneConstructors = 1;                                             
   4b9f0:	13c0 0005 be8c 	moveb %d0,5be8c <doneConstructors.3357>     
  #endif                                                              
                                                                      
  #if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )      
    #if ( CPU_USE_DEFERRED_FP_SWITCH == TRUE )                        
      if ( (executing->fp_context != NULL) &&                         
   4b9f6:	4aaa 00f4      	tstl %a2@(244)                              
   4b9fa:	6720           	beqs 4ba1c <_Thread_Handler+0x54>           
#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )        
RTEMS_INLINE_ROUTINE bool _Thread_Is_allocated_fp (                   
  const Thread_Control *the_thread                                    
)                                                                     
{                                                                     
  return ( the_thread == _Thread_Allocated_fp );                      
   4b9fc:	2079 0005 c74a 	moveal 5c74a <_Thread_Allocated_fp>,%a0     
   4ba02:	b1ca           	cmpal %a2,%a0                               
   4ba04:	6716           	beqs 4ba1c <_Thread_Handler+0x54>           <== NEVER TAKEN
            !_Thread_Is_allocated_fp( executing ) ) {                 
        if ( _Thread_Allocated_fp != NULL )                           
   4ba06:	4a88           	tstl %a0                                    
   4ba08:	670c           	beqs 4ba16 <_Thread_Handler+0x4e>           <== ALWAYS TAKEN
          _Context_Save_fp( &_Thread_Allocated_fp->fp_context );      
   4ba0a:	4868 00f4      	pea %a0@(244)                               <== NOT EXECUTED
   4ba0e:	4eb9 0004 886e 	jsr 4886e <_CPU_Context_save_fp>            <== NOT EXECUTED
   4ba14:	588f           	addql #4,%sp                                <== NOT EXECUTED
        _Thread_Allocated_fp = executing;                             
   4ba16:	23ca 0005 c74a 	movel %a2,5c74a <_Thread_Allocated_fp>      
  /*                                                                  
   * Take care that 'begin' extensions get to complete before         
   * 'switch' extensions can run.  This means must keep dispatch      
   * disabled until all 'begin' extensions complete.                  
   */                                                                 
  _User_extensions_Thread_begin( executing );                         
   4ba1c:	2f0a           	movel %a2,%sp@-                             
   4ba1e:	4eb9 0004 8284 	jsr 48284 <_User_extensions_Thread_begin>   
                                                                      
  /*                                                                  
   *  At this point, the dispatch disable level BETTER be 1.          
   */                                                                 
  _Thread_Enable_dispatch();                                          
   4ba24:	4eb9 0004 771e 	jsr 4771e <_Thread_Enable_dispatch>         
    /*                                                                
     *  _init could be a weak symbol and we SHOULD test it but it isn't
     *  in any configuration I know of and it generates a warning on every
     *  RTEMS target configuration.  --joel (12 May 2007)             
     */                                                               
    if (!doneCons) /* && (volatile void *)_init) */ {                 
   4ba2a:	588f           	addql #4,%sp                                
   4ba2c:	4a02           	tstb %d2                                    
   4ba2e:	6606           	bnes 4ba36 <_Thread_Handler+0x6e>           
      INIT_NAME ();                                                   
   4ba30:	4eb9 0005 94f0 	jsr 594f0 <_init>                           
    }                                                                 
  #endif                                                              
                                                                      
  if ( executing->Start.prototype == THREAD_START_NUMERIC ) {         
   4ba36:	4aaa 0092      	tstl %a2@(146)                              
   4ba3a:	6610           	bnes 4ba4c <_Thread_Handler+0x84>           <== NEVER TAKEN
    executing->Wait.return_argument =                                 
      (*(Thread_Entry_numeric) executing->Start.entry_point)(         
   4ba3c:	2f2a 009a      	movel %a2@(154),%sp@-                       
   4ba40:	206a 008e      	moveal %a2@(142),%a0                        
   4ba44:	4e90           	jsr %a0@                                    
      INIT_NAME ();                                                   
    }                                                                 
  #endif                                                              
                                                                      
  if ( executing->Start.prototype == THREAD_START_NUMERIC ) {         
    executing->Wait.return_argument =                                 
   4ba46:	588f           	addql #4,%sp                                
   4ba48:	2540 0028      	movel %d0,%a2@(40)                          
   *  was placed in return_argument.  This assumed that if it returned
   *  anything (which is not supporting in all APIs), then it would be
   *  able to fit in a (void *).                                      
   */                                                                 
                                                                      
  _User_extensions_Thread_exitted( executing );                       
   4ba4c:	2f0a           	movel %a2,%sp@-                             
   4ba4e:	4eb9 0004 82bc 	jsr 482bc <_User_extensions_Thread_exitted> 
                                                                      
  _Internal_error_Occurred(                                           
   4ba54:	4878 0005      	pea 5 <COMPARE>                             
   4ba58:	4878 0001      	pea 1 <ADD>                                 
   4ba5c:	42a7           	clrl %sp@-                                  
   4ba5e:	4eb9 0004 675c 	jsr 4675c <_Internal_error_Occurred>        
                                                                      

000477d0 <_Thread_Initialize>: Thread_CPU_budget_algorithms budget_algorithm, Thread_CPU_budget_algorithm_callout budget_callout, uint32_t isr_level, Objects_Name name ) {
   477d0:	4e56 ffec      	linkw %fp,#-20                              
   477d4:	48d7 043c      	moveml %d2-%d5/%a2,%sp@                     
   477d8:	246e 000c      	moveal %fp@(12),%a2                         
   477dc:	242e 0014      	movel %fp@(20),%d2                          
                                                                      
  /*                                                                  
   *  Zero out all the allocated memory fields                        
   */                                                                 
  for ( i=0 ; i <= THREAD_API_LAST ; i++ )                            
    the_thread->API_Extensions[i] = NULL;                             
   477e0:	42aa 00fc      	clrl %a2@(252)                              
  Thread_CPU_budget_algorithms          budget_algorithm,             
  Thread_CPU_budget_algorithm_callout   budget_callout,               
  uint32_t                              isr_level,                    
  Objects_Name                          name                          
)                                                                     
{                                                                     
   477e4:	2a2e 001c      	movel %fp@(28),%d5                          
                                                                      
  /*                                                                  
   *  Zero out all the allocated memory fields                        
   */                                                                 
  for ( i=0 ; i <= THREAD_API_LAST ; i++ )                            
    the_thread->API_Extensions[i] = NULL;                             
   477e8:	42aa 0100      	clrl %a2@(256)                              
  Thread_CPU_budget_algorithms          budget_algorithm,             
  Thread_CPU_budget_algorithm_callout   budget_callout,               
  uint32_t                              isr_level,                    
  Objects_Name                          name                          
)                                                                     
{                                                                     
   477ec:	162e 001b      	moveb %fp@(27),%d3                          
   */                                                                 
  for ( i=0 ; i <= THREAD_API_LAST ; i++ )                            
    the_thread->API_Extensions[i] = NULL;                             
                                                                      
  extensions_area = NULL;                                             
  the_thread->libc_reent = NULL;                                      
   477f0:	42aa 00f8      	clrl %a2@(248)                              
  Thread_CPU_budget_algorithms          budget_algorithm,             
  Thread_CPU_budget_algorithm_callout   budget_callout,               
  uint32_t                              isr_level,                    
  Objects_Name                          name                          
)                                                                     
{                                                                     
   477f4:	182e 0023      	moveb %fp@(35),%d4                          
                                                                      
  /*                                                                  
   *  Allocate and Initialize the stack for this thread.              
   */                                                                 
  #if !defined(RTEMS_SCORE_THREAD_ENABLE_USER_PROVIDED_STACK_VIA_API) 
    actual_stack_size = _Thread_Stack_Allocate( the_thread, stack_size );
   477f8:	2f02           	movel %d2,%sp@-                             
   477fa:	2f0a           	movel %a2,%sp@-                             
   477fc:	4eb9 0004 7f9c 	jsr 47f9c <_Thread_Stack_Allocate>          
    if ( !actual_stack_size || actual_stack_size < stack_size )       
   47802:	508f           	addql #8,%sp                                
   47804:	4a80           	tstl %d0                                    
   47806:	6700 0168      	beqw 47970 <_Thread_Initialize+0x1a0>       
   4780a:	b480           	cmpl %d0,%d2                                
   4780c:	6200 0162      	bhiw 47970 <_Thread_Initialize+0x1a0>       
  void          *starting_address,                                    
  size_t         size                                                 
)                                                                     
{                                                                     
  the_stack->area = starting_address;                                 
  the_stack->size = size;                                             
   47810:	2540 00b0      	movel %d0,%a2@(176)                         
  Stack_Control *the_stack,                                           
  void          *starting_address,                                    
  size_t         size                                                 
)                                                                     
{                                                                     
  the_stack->area = starting_address;                                 
   47814:	256a 00bc 00b4 	movel %a2@(188),%a2@(180)                   
                                                                      
  /*                                                                  
   *  Allocate the floating point area for this thread                
   */                                                                 
  #if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )      
    if ( is_fp ) {                                                    
   4781a:	4a03           	tstb %d3                                    
   4781c:	6714           	beqs 47832 <_Thread_Initialize+0x62>        
      fp_area = _Workspace_Allocate( CONTEXT_FP_SIZE );               
   4781e:	4878 001c      	pea 1c <OPER2+0x8>                          
   47822:	4eb9 0004 86c0 	jsr 486c0 <_Workspace_Allocate>             
      if ( !fp_area )                                                 
   47828:	588f           	addql #4,%sp                                
  /*                                                                  
   *  Allocate the floating point area for this thread                
   */                                                                 
  #if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )      
    if ( is_fp ) {                                                    
      fp_area = _Workspace_Allocate( CONTEXT_FP_SIZE );               
   4782a:	2600           	movel %d0,%d3                               
      if ( !fp_area )                                                 
   4782c:	6606           	bnes 47834 <_Thread_Initialize+0x64>        <== ALWAYS TAKEN
   4782e:	6000 00d8      	braw 47908 <_Thread_Initialize+0x138>       <== NOT EXECUTED
                                                                      
  extensions_area = NULL;                                             
  the_thread->libc_reent = NULL;                                      
                                                                      
  #if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )      
    fp_area = NULL;                                                   
   47832:	4283           	clrl %d3                                    
  #endif                                                              
                                                                      
  /*                                                                  
   *  Allocate the extensions area for this thread                    
   */                                                                 
  if ( _Thread_Maximum_extensions ) {                                 
   47834:	2039 0005 c77a 	movel 5c77a <_Thread_Maximum_extensions>,%d0
      fp_area = _Workspace_Allocate( CONTEXT_FP_SIZE );               
      if ( !fp_area )                                                 
        goto failed;                                                  
      fp_area = _Context_Fp_start( fp_area, 0 );                      
    }                                                                 
    the_thread->fp_context       = fp_area;                           
   4783a:	2543 00f4      	movel %d3,%a2@(244)                         
    the_thread->Start.fp_context = fp_area;                           
   4783e:	2543 00b8      	movel %d3,%a2@(184)                         
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   47842:	42aa 0050      	clrl %a2@(80)                               
  the_watchdog->routine   = routine;                                  
   47846:	42aa 0064      	clrl %a2@(100)                              
  the_watchdog->id        = id;                                       
   4784a:	42aa 0068      	clrl %a2@(104)                              
  the_watchdog->user_data = user_data;                                
   4784e:	42aa 006c      	clrl %a2@(108)                              
  #endif                                                              
                                                                      
  /*                                                                  
   *  Allocate the extensions area for this thread                    
   */                                                                 
  if ( _Thread_Maximum_extensions ) {                                 
   47852:	4a80           	tstl %d0                                    
   47854:	6718           	beqs 4786e <_Thread_Initialize+0x9e>        
    extensions_area = _Workspace_Allocate(                            
   47856:	e588           	lsll #2,%d0                                 
   47858:	2040           	moveal %d0,%a0                              
   4785a:	4868 0004      	pea %a0@(4)                                 
   4785e:	4eb9 0004 86c0 	jsr 486c0 <_Workspace_Allocate>             
      (_Thread_Maximum_extensions + 1) * sizeof( void * )             
    );                                                                
    if ( !extensions_area )                                           
   47864:	588f           	addql #4,%sp                                
                                                                      
  /*                                                                  
   *  Allocate the extensions area for this thread                    
   */                                                                 
  if ( _Thread_Maximum_extensions ) {                                 
    extensions_area = _Workspace_Allocate(                            
   47866:	2400           	movel %d0,%d2                               
      (_Thread_Maximum_extensions + 1) * sizeof( void * )             
    );                                                                
    if ( !extensions_area )                                           
   47868:	6606           	bnes 47870 <_Thread_Initialize+0xa0>        <== ALWAYS TAKEN
   4786a:	6000 009e      	braw 4790a <_Thread_Initialize+0x13a>       <== NOT EXECUTED
   *  Zero out all the allocated memory fields                        
   */                                                                 
  for ( i=0 ; i <= THREAD_API_LAST ; i++ )                            
    the_thread->API_Extensions[i] = NULL;                             
                                                                      
  extensions_area = NULL;                                             
   4786e:	4282           	clrl %d2                                    
      (_Thread_Maximum_extensions + 1) * sizeof( void * )             
    );                                                                
    if ( !extensions_area )                                           
      goto failed;                                                    
  }                                                                   
  the_thread->extensions = (void **) extensions_area;                 
   47870:	2542 0104      	movel %d2,%a2@(260)                         
   * if they are linked to the thread. An extension user may          
   * create the extension long after tasks have been created          
   * so they cannot rely on the thread create user extension          
   * call.                                                            
   */                                                                 
  if ( the_thread->extensions ) {                                     
   47874:	6714           	beqs 4788a <_Thread_Initialize+0xba>        
    for ( i = 0; i <= _Thread_Maximum_extensions ; i++ )              
   47876:	2239 0005 c77a 	movel 5c77a <_Thread_Maximum_extensions>,%d1
   4787c:	2042           	moveal %d2,%a0                              
   4787e:	4280           	clrl %d0                                    
   47880:	6004           	bras 47886 <_Thread_Initialize+0xb6>        
      the_thread->extensions[i] = NULL;                               
   47882:	4298           	clrl %a0@+                                  
   * create the extension long after tasks have been created          
   * so they cannot rely on the thread create user extension          
   * call.                                                            
   */                                                                 
  if ( the_thread->extensions ) {                                     
    for ( i = 0; i <= _Thread_Maximum_extensions ; i++ )              
   47884:	5280           	addql #1,%d0                                
   47886:	b280           	cmpl %d0,%d1                                
   47888:	64f8           	bccs 47882 <_Thread_Initialize+0xb2>        
    #endif                                                            
  }                                                                   
                                                                      
  the_thread->Start.isr_level         = isr_level;                    
                                                                      
  the_thread->current_state           = STATES_DORMANT;               
   4788a:	7001           	moveq #1,%d0                                
  /*                                                                  
   *  General initialization                                          
   */                                                                 
                                                                      
  the_thread->Start.is_preemptible   = is_preemptible;                
  the_thread->Start.budget_algorithm = budget_algorithm;              
   4788c:	256e 0024 00a0 	movel %fp@(36),%a2@(160)                    
  the_thread->Start.budget_callout   = budget_callout;                
   47892:	256e 0028 00a4 	movel %fp@(40),%a2@(164)                    
      case THREAD_CPU_BUDGET_ALGORITHM_CALLOUT:                       
	break;                                                               
    #endif                                                            
  }                                                                   
                                                                      
  the_thread->Start.isr_level         = isr_level;                    
   47898:	256e 002c 00a8 	movel %fp@(44),%a2@(168)                    
RTEMS_INLINE_ROUTINE void* _Scheduler_Thread_scheduler_allocate(      
  Scheduler_Control *the_scheduler,                                   
  Thread_Control    *the_thread                                       
)                                                                     
{                                                                     
  return                                                              
   4789e:	2079 0005 c762 	moveal 5c762 <_Scheduler+0x14>,%a0          
                                                                      
  the_thread->current_state           = STATES_DORMANT;               
   478a4:	2540 0010      	movel %d0,%a2@(16)                          
                                                                      
  /*                                                                  
   *  General initialization                                          
   */                                                                 
                                                                      
  the_thread->Start.is_preemptible   = is_preemptible;                
   478a8:	1544 009e      	moveb %d4,%a2@(158)                         
  }                                                                   
                                                                      
  the_thread->Start.isr_level         = isr_level;                    
                                                                      
  the_thread->current_state           = STATES_DORMANT;               
  the_thread->Wait.queue              = NULL;                         
   478ac:	42aa 0044      	clrl %a2@(68)                               
  the_thread->resource_count          = 0;                            
   478b0:	42aa 001c      	clrl %a2@(28)                               
  the_thread->real_priority           = priority;                     
   478b4:	2545 0018      	movel %d5,%a2@(24)                          
  the_thread->Start.initial_priority  = priority;                     
   478b8:	2545 00ac      	movel %d5,%a2@(172)                         
   478bc:	2f0a           	movel %a2,%sp@-                             
   478be:	4879 0005 c74e 	pea 5c74e <_Scheduler>                      
   478c4:	4e90           	jsr %a0@                                    
  sched =_Scheduler_Thread_scheduler_allocate( &_Scheduler, the_thread );
  if ( !sched )                                                       
   478c6:	508f           	addql #8,%sp                                
   478c8:	2800           	movel %d0,%d4                               
   478ca:	6740           	beqs 4790c <_Thread_Initialize+0x13c>       <== NEVER TAKEN
    goto failed;                                                      
  _Thread_Set_priority( the_thread, priority );                       
   478cc:	2f05           	movel %d5,%sp@-                             
   478ce:	2f0a           	movel %a2,%sp@-                             
   478d0:	4eb9 0004 7ea4 	jsr 47ea4 <_Thread_Set_priority>            
                                                                      
   _Thread_Stack_Free( the_thread );                                  
  return false;                                                       
                                                                      
                                                                      
}                                                                     
   478d6:	206e 0008      	moveal %fp@(8),%a0                          
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   478da:	4280           	clrl %d0                                    
   478dc:	2068 0018      	moveal %a0@(24),%a0                         
   478e0:	302a 000a      	movew %a2@(10),%d0                          
                                                                      
  /*                                                                  
   *  Initialize the CPU usage statistics                             
   */                                                                 
  #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                          
    _Timestamp_Set_to_zero( &the_thread->cpu_time_used );             
   478e4:	42aa 0082      	clrl %a2@(130)                              
   478e8:	42aa 0086      	clrl %a2@(134)                              
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   478ec:	218a 0c00      	movel %a2,%a0@(00000000,%d0:l:4)            
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
    the_object                                                        
  );                                                                  
                                                                      
  the_object->name = name;                                            
   478f0:	256e 0030 000c 	movel %fp@(48),%a2@(12)                     
   *  enabled when we get here.  We want to be able to run the        
   *  user extensions with dispatching enabled.  The Allocator        
   *  Mutex provides sufficient protection to let the user extensions 
   *  run safely.                                                     
   */                                                                 
  extension_status = _User_extensions_Thread_create( the_thread );    
   478f6:	2f0a           	movel %a2,%sp@-                             
   478f8:	4eb9 0004 8340 	jsr 48340 <_User_extensions_Thread_create>  
  if ( extension_status )                                             
   478fe:	4fef 000c      	lea %sp@(12),%sp                            
   47902:	4a00           	tstb %d0                                    
   47904:	6706           	beqs 4790c <_Thread_Initialize+0x13c>       <== NEVER TAKEN
   47906:	606c           	bras 47974 <_Thread_Initialize+0x1a4>       
   *  Zero out all the allocated memory fields                        
   */                                                                 
  for ( i=0 ; i <= THREAD_API_LAST ; i++ )                            
    the_thread->API_Extensions[i] = NULL;                             
                                                                      
  extensions_area = NULL;                                             
   47908:	4282           	clrl %d2                                    <== NOT EXECUTED
  size_t               actual_stack_size = 0;                         
  void                *stack = NULL;                                  
  #if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )      
    void              *fp_area;                                       
  #endif                                                              
  void                *sched = NULL;                                  
   4790a:	4284           	clrl %d4                                    <== NOT EXECUTED
  extension_status = _User_extensions_Thread_create( the_thread );    
  if ( extension_status )                                             
    return true;                                                      
                                                                      
failed:                                                               
  if ( the_thread->libc_reent )                                       
   4790c:	202a 00f8      	movel %a2@(248),%d0                         <== NOT EXECUTED
   47910:	670a           	beqs 4791c <_Thread_Initialize+0x14c>       <== NOT EXECUTED
    _Workspace_Free( the_thread->libc_reent );                        
   47912:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   47914:	4eb9 0004 86dc 	jsr 486dc <_Workspace_Free>                 <== NOT EXECUTED
   4791a:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  for ( i=0 ; i <= THREAD_API_LAST ; i++ )                            
    if ( the_thread->API_Extensions[i] )                              
   4791c:	202a 00fc      	movel %a2@(252),%d0                         <== NOT EXECUTED
   47920:	670a           	beqs 4792c <_Thread_Initialize+0x15c>       <== NOT EXECUTED
      _Workspace_Free( the_thread->API_Extensions[i] );               
   47922:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   47924:	4eb9 0004 86dc 	jsr 486dc <_Workspace_Free>                 <== NOT EXECUTED
   4792a:	588f           	addql #4,%sp                                <== NOT EXECUTED
failed:                                                               
  if ( the_thread->libc_reent )                                       
    _Workspace_Free( the_thread->libc_reent );                        
                                                                      
  for ( i=0 ; i <= THREAD_API_LAST ; i++ )                            
    if ( the_thread->API_Extensions[i] )                              
   4792c:	202a 0100      	movel %a2@(256),%d0                         <== NOT EXECUTED
   47930:	670a           	beqs 4793c <_Thread_Initialize+0x16c>       <== NOT EXECUTED
      _Workspace_Free( the_thread->API_Extensions[i] );               
   47932:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   47934:	4eb9 0004 86dc 	jsr 486dc <_Workspace_Free>                 <== NOT EXECUTED
   4793a:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  if ( extensions_area )                                              
   4793c:	4a82           	tstl %d2                                    <== NOT EXECUTED
   4793e:	670a           	beqs 4794a <_Thread_Initialize+0x17a>       <== NOT EXECUTED
    (void) _Workspace_Free( extensions_area );                        
   47940:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   47942:	4eb9 0004 86dc 	jsr 486dc <_Workspace_Free>                 <== NOT EXECUTED
   47948:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  #if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )      
    if ( fp_area )                                                    
   4794a:	4a83           	tstl %d3                                    <== NOT EXECUTED
   4794c:	670a           	beqs 47958 <_Thread_Initialize+0x188>       <== NOT EXECUTED
      (void) _Workspace_Free( fp_area );                              
   4794e:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   47950:	4eb9 0004 86dc 	jsr 486dc <_Workspace_Free>                 <== NOT EXECUTED
   47956:	588f           	addql #4,%sp                                <== NOT EXECUTED
  #endif                                                              
                                                                      
  if ( sched )                                                        
   47958:	4a84           	tstl %d4                                    <== NOT EXECUTED
   4795a:	670a           	beqs 47966 <_Thread_Initialize+0x196>       <== NOT EXECUTED
    (void) _Workspace_Free( sched );                                  
   4795c:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4795e:	4eb9 0004 86dc 	jsr 486dc <_Workspace_Free>                 <== NOT EXECUTED
   47964:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
   _Thread_Stack_Free( the_thread );                                  
   47966:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   47968:	4eb9 0004 7fe8 	jsr 47fe8 <_Thread_Stack_Free>              <== NOT EXECUTED
  return false;                                                       
   4796e:	588f           	addql #4,%sp                                <== NOT EXECUTED
   *  Allocate and Initialize the stack for this thread.              
   */                                                                 
  #if !defined(RTEMS_SCORE_THREAD_ENABLE_USER_PROVIDED_STACK_VIA_API) 
    actual_stack_size = _Thread_Stack_Allocate( the_thread, stack_size );
    if ( !actual_stack_size || actual_stack_size < stack_size )       
      return false;                     /* stack allocation failed */ 
   47970:	4200           	clrb %d0                                    
   47972:	6002           	bras 47976 <_Thread_Initialize+0x1a6>       
   *  Mutex provides sufficient protection to let the user extensions 
   *  run safely.                                                     
   */                                                                 
  extension_status = _User_extensions_Thread_create( the_thread );    
  if ( extension_status )                                             
    return true;                                                      
   47974:	7001           	moveq #1,%d0                                
                                                                      
   _Thread_Stack_Free( the_thread );                                  
  return false;                                                       
                                                                      
                                                                      
}                                                                     
   47976:	4cee 043c ffec 	moveml %fp@(-20),%d2-%d5/%a2                
   4797c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004b0bc <_Thread_Reset>: void _Thread_Reset( Thread_Control *the_thread, void *pointer_argument, Thread_Entry_numeric_type numeric_argument ) {
   4b0bc:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4b0c0:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4b0c2:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
  the_thread->resource_count   = 0;                                   
  the_thread->is_preemptible   = the_thread->Start.is_preemptible;    
  the_thread->budget_algorithm = the_thread->Start.budget_algorithm;  
   4b0c6:	256a 00a0 007a 	movel %a2@(160),%a2@(122)                   <== NOT EXECUTED
  the_thread->budget_callout   = the_thread->Start.budget_callout;    
   4b0cc:	256a 00a4 007e 	movel %a2@(164),%a2@(126)                   <== NOT EXECUTED
                                                                      
  the_thread->Start.pointer_argument = pointer_argument;              
   4b0d2:	256e 000c 0096 	movel %fp@(12),%a2@(150)                    <== NOT EXECUTED
  the_thread->Start.numeric_argument = numeric_argument;              
   4b0d8:	256e 0010 009a 	movel %fp@(16),%a2@(154)                    <== NOT EXECUTED
  void                      *pointer_argument,                        
  Thread_Entry_numeric_type  numeric_argument                         
)                                                                     
{                                                                     
  the_thread->resource_count   = 0;                                   
  the_thread->is_preemptible   = the_thread->Start.is_preemptible;    
   4b0de:	156a 009e 0074 	moveb %a2@(158),%a2@(116)                   <== NOT EXECUTED
  Thread_Control            *the_thread,                              
  void                      *pointer_argument,                        
  Thread_Entry_numeric_type  numeric_argument                         
)                                                                     
{                                                                     
  the_thread->resource_count   = 0;                                   
   4b0e4:	42aa 001c      	clrl %a2@(28)                               <== NOT EXECUTED
  the_thread->budget_callout   = the_thread->Start.budget_callout;    
                                                                      
  the_thread->Start.pointer_argument = pointer_argument;              
  the_thread->Start.numeric_argument = numeric_argument;              
                                                                      
  if ( !_Thread_queue_Extract_with_proxy( the_thread ) ) {            
   4b0e8:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4b0ea:	4eb9 0004 84f4 	jsr 484f4 <_Thread_queue_Extract_with_proxy><== NOT EXECUTED
   4b0f0:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4b0f2:	4a00           	tstb %d0                                    <== NOT EXECUTED
   4b0f4:	6614           	bnes 4b10a <_Thread_Reset+0x4e>             <== NOT EXECUTED
                                                                      
    if ( _Watchdog_Is_active( &the_thread->Timer ) )                  
   4b0f6:	7002           	moveq #2,%d0                                <== NOT EXECUTED
   4b0f8:	b0aa 0050      	cmpl %a2@(80),%d0                           <== NOT EXECUTED
   4b0fc:	660c           	bnes 4b10a <_Thread_Reset+0x4e>             <== NOT EXECUTED
      (void) _Watchdog_Remove( &the_thread->Timer );                  
   4b0fe:	486a 0048      	pea %a2@(72)                                <== NOT EXECUTED
   4b102:	4eb9 0004 8de4 	jsr 48de4 <_Watchdog_Remove>                <== NOT EXECUTED
   4b108:	588f           	addql #4,%sp                                <== NOT EXECUTED
  }                                                                   
                                                                      
  if ( the_thread->current_priority != the_thread->Start.initial_priority ) {
   4b10a:	202a 00ac      	movel %a2@(172),%d0                         <== NOT EXECUTED
   4b10e:	b0aa 0014      	cmpl %a2@(20),%d0                           <== NOT EXECUTED
   4b112:	6718           	beqs 4b12c <_Thread_Reset+0x70>             <== NOT EXECUTED
    the_thread->real_priority = the_thread->Start.initial_priority;   
   4b114:	2540 0018      	movel %d0,%a2@(24)                          <== NOT EXECUTED
    _Thread_Set_priority( the_thread, the_thread->Start.initial_priority );
   4b118:	2d4a 0008      	movel %a2,%fp@(8)                           <== NOT EXECUTED
  }                                                                   
}                                                                     
   4b11c:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
      (void) _Watchdog_Remove( &the_thread->Timer );                  
  }                                                                   
                                                                      
  if ( the_thread->current_priority != the_thread->Start.initial_priority ) {
    the_thread->real_priority = the_thread->Start.initial_priority;   
    _Thread_Set_priority( the_thread, the_thread->Start.initial_priority );
   4b120:	2d40 000c      	movel %d0,%fp@(12)                          <== NOT EXECUTED
  }                                                                   
}                                                                     
   4b124:	4e5e           	unlk %fp                                    <== NOT EXECUTED
      (void) _Watchdog_Remove( &the_thread->Timer );                  
  }                                                                   
                                                                      
  if ( the_thread->current_priority != the_thread->Start.initial_priority ) {
    the_thread->real_priority = the_thread->Start.initial_priority;   
    _Thread_Set_priority( the_thread, the_thread->Start.initial_priority );
   4b126:	4ef9 0004 86e0 	jmp 486e0 <_Thread_Set_priority>            <== NOT EXECUTED
  }                                                                   
}                                                                     
   4b12c:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   4b130:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004865c <_Thread_Restart>: */ RTEMS_INLINE_ROUTINE bool _States_Is_dormant ( States_Control the_states ) { return (the_states & STATES_DORMANT);
   4865c:	7001           	moveq #1,%d0                                <== NOT EXECUTED
bool _Thread_Restart(                                                 
  Thread_Control            *the_thread,                              
  void                      *pointer_argument,                        
  Thread_Entry_numeric_type  numeric_argument                         
)                                                                     
{                                                                     
   4865e:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   48662:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   48664:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   48668:	c0aa 0010      	andl %a2@(16),%d0                           <== NOT EXECUTED
  if ( !_States_Is_dormant( the_thread->current_state ) ) {           
   4866c:	6664           	bnes 486d2 <_Thread_Restart+0x76>           <== NOT EXECUTED
                                                                      
    _Thread_Set_transient( the_thread );                              
   4866e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   48670:	4eb9 0004 8754 	jsr 48754 <_Thread_Set_transient>           <== NOT EXECUTED
                                                                      
    _Thread_Reset( the_thread, pointer_argument, numeric_argument );  
   48676:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   4867a:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   4867e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   48680:	4eb9 0004 b0bc 	jsr 4b0bc <_Thread_Reset>                   <== NOT EXECUTED
                                                                      
    _Thread_Load_environment( the_thread );                           
   48686:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   48688:	4eb9 0004 adec 	jsr 4adec <_Thread_Load_environment>        <== NOT EXECUTED
                                                                      
    _Thread_Ready( the_thread );                                      
   4868e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   48690:	4eb9 0004 b084 	jsr 4b084 <_Thread_Ready>                   <== NOT EXECUTED
                                                                      
    _User_extensions_Thread_restart( the_thread );                    
   48696:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   48698:	4eb9 0004 8c04 	jsr 48c04 <_User_extensions_Thread_restart> <== NOT EXECUTED
                                                                      
    if ( _Thread_Is_executing ( the_thread ) )                        
   4869e:	4fef 001c      	lea %sp@(28),%sp                            <== NOT EXECUTED
   486a2:	b5f9 0005 d3ac 	cmpal 5d3ac <_Per_CPU_Information+0xc>,%a2  <== NOT EXECUTED
   486a8:	662c           	bnes 486d6 <_Thread_Restart+0x7a>           <== NOT EXECUTED
 */                                                                   
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Restart_self( void )                
{                                                                     
#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )        
  if ( _Thread_Executing->fp_context != NULL )                        
   486aa:	4aaa 00f4      	tstl %a2@(244)                              <== NOT EXECUTED
   486ae:	670c           	beqs 486bc <_Thread_Restart+0x60>           <== NOT EXECUTED
    _Context_Restore_fp( &_Thread_Executing->fp_context );            
   486b0:	486a 00f4      	pea %a2@(244)                               <== NOT EXECUTED
   486b4:	4eb9 0004 910c 	jsr 4910c <_CPU_Context_restore_fp>         <== NOT EXECUTED
   486ba:	588f           	addql #4,%sp                                <== NOT EXECUTED
#endif                                                                
                                                                      
  _CPU_Context_Restart_self( &_Thread_Executing->Registers );         
   486bc:	2079 0005 d3ac 	moveal 5d3ac <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
   486c2:	41e8 00c0      	lea %a0@(192),%a0                           <== NOT EXECUTED
   486c6:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   486c8:	4eb9 0004 8fba 	jsr 48fba <_CPU_Context_Restart_self>       <== NOT EXECUTED
   486ce:	588f           	addql #4,%sp                                <== NOT EXECUTED
   486d0:	6004           	bras 486d6 <_Thread_Restart+0x7a>           <== NOT EXECUTED
      _Thread_Restart_self();                                         
                                                                      
    return true;                                                      
  }                                                                   
                                                                      
  return false;                                                       
   486d2:	4200           	clrb %d0                                    <== NOT EXECUTED
   486d4:	6002           	bras 486d8 <_Thread_Restart+0x7c>           <== NOT EXECUTED
    _User_extensions_Thread_restart( the_thread );                    
                                                                      
    if ( _Thread_Is_executing ( the_thread ) )                        
      _Thread_Restart_self();                                         
                                                                      
    return true;                                                      
   486d6:	7001           	moveq #1,%d0                                <== NOT EXECUTED
  }                                                                   
                                                                      
  return false;                                                       
}                                                                     
   486d8:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   486dc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004acb4 <_Thread_Resume>: { ISR_Level level; States_Control current_state; _ISR_Disable( level );
   4acb4:	203c 0000 0700 	movel #1792,%d0                             
                                                                      
void _Thread_Resume(                                                  
  Thread_Control   *the_thread,                                       
  bool              force                                             
)                                                                     
{                                                                     
   4acba:	4e56 0000      	linkw %fp,#0                                
   4acbe:	206e 0008      	moveal %fp@(8),%a0                          
   4acc2:	2f02           	movel %d2,%sp@-                             
                                                                      
  ISR_Level       level;                                              
  States_Control  current_state;                                      
                                                                      
  _ISR_Disable( level );                                              
   4acc4:	40c2           	movew %sr,%d2                               
   4acc6:	8082           	orl %d2,%d0                                 
   4acc8:	46c0           	movew %d0,%sr                               
                                                                      
  current_state = the_thread->current_state;                          
   4acca:	2028 0010      	movel %a0@(16),%d0                          
  if ( current_state & STATES_SUSPENDED ) {                           
   4acce:	0800 0001      	btst #1,%d0                                 
   4acd2:	671c           	beqs 4acf0 <_Thread_Resume+0x3c>            <== NEVER TAKEN
RTEMS_INLINE_ROUTINE States_Control _States_Clear (                   
  States_Control states_to_clear,                                     
  States_Control current_state                                        
)                                                                     
{                                                                     
   return (current_state & ~states_to_clear);                         
   4acd4:	72fd           	moveq #-3,%d1                               
   4acd6:	c081           	andl %d1,%d0                                
    current_state =                                                   
    the_thread->current_state = _States_Clear(STATES_SUSPENDED, current_state);
   4acd8:	2140 0010      	movel %d0,%a0@(16)                          
                                                                      
    if ( _States_Is_ready( current_state ) ) {                        
   4acdc:	6612           	bnes 4acf0 <_Thread_Resume+0x3c>            <== NEVER TAKEN
RTEMS_INLINE_ROUTINE void _Scheduler_Unblock(                         
    Scheduler_Control *the_scheduler,                                 
    Thread_Control    *the_thread                                     
)                                                                     
{                                                                     
  the_scheduler->Operations.unblock( the_scheduler, the_thread );     
   4acde:	2f08           	movel %a0,%sp@-                             
   4ace0:	4879 0005 fb06 	pea 5fb06 <_Scheduler>                      
   4ace6:	2079 0005 fb16 	moveal 5fb16 <_Scheduler+0x10>,%a0          
   4acec:	4e90           	jsr %a0@                                    
   4acee:	508f           	addql #8,%sp                                
      _Scheduler_Unblock( &_Scheduler, the_thread );                  
    }                                                                 
  }                                                                   
                                                                      
  _ISR_Enable( level );                                               
   4acf0:	46c2           	movew %d2,%sr                               
}                                                                     
   4acf2:	242e fffc      	movel %fp@(-4),%d2                          
   4acf6:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

00047ea4 <_Thread_Set_priority>: void _Thread_Set_priority( Thread_Control *the_thread, Priority_Control new_priority ) {
   47ea4:	4e56 0000      	linkw %fp,#0                                
RTEMS_INLINE_ROUTINE void _Scheduler_Thread_scheduler_update(         
  Scheduler_Control *the_scheduler,                                   
  Thread_Control    *the_thread                                       
)                                                                     
{                                                                     
  the_scheduler->Operations.scheduler_update( the_scheduler, the_thread );
   47ea8:	203c 0005 c74e 	movel #378702,%d0                           
   47eae:	206e 0008      	moveal %fp@(8),%a0                          
  the_thread->current_priority = new_priority;                        
   47eb2:	216e 000c 0014 	movel %fp@(12),%a0@(20)                     
   47eb8:	2279 0005 c76a 	moveal 5c76a <_Scheduler+0x1c>,%a1          
   47ebe:	2d48 000c      	movel %a0,%fp@(12)                          
   47ec2:	2d40 0008      	movel %d0,%fp@(8)                           
                                                                      
  _Scheduler_Thread_scheduler_update(&_Scheduler, the_thread);        
}                                                                     
   47ec6:	4e5e           	unlk %fp                                    
   47ec8:	4ed1           	jmp %a1@                                    
	...                                                                  
                                                                      

00047ecc <_Thread_Set_state>: States_Control state ) { ISR_Level level; _ISR_Disable( level );
   47ecc:	203c 0000 0700 	movel #1792,%d0                             
                                                                      
void _Thread_Set_state(                                               
  Thread_Control *the_thread,                                         
  States_Control  state                                               
)                                                                     
{                                                                     
   47ed2:	4e56 0000      	linkw %fp,#0                                
   47ed6:	206e 0008      	moveal %fp@(8),%a0                          
   47eda:	2f02           	movel %d2,%sp@-                             
   47edc:	222e 000c      	movel %fp@(12),%d1                          
  ISR_Level      level;                                               
                                                                      
  _ISR_Disable( level );                                              
   47ee0:	40c2           	movew %sr,%d2                               
   47ee2:	8082           	orl %d2,%d0                                 
   47ee4:	46c0           	movew %d0,%sr                               
  if ( !_States_Is_ready( the_thread->current_state ) ) {             
   47ee6:	2028 0010      	movel %a0@(16),%d0                          
   47eea:	670a           	beqs 47ef6 <_Thread_Set_state+0x2a>         <== ALWAYS TAKEN
RTEMS_INLINE_ROUTINE States_Control _States_Set (                     
  States_Control states_to_set,                                       
  States_Control current_state                                        
)                                                                     
{                                                                     
   return (current_state | states_to_set);                            
   47eec:	8280           	orl %d0,%d1                                 <== NOT EXECUTED
   47eee:	2141 0010      	movel %d1,%a0@(16)                          <== NOT EXECUTED
    the_thread->current_state =                                       
       _States_Set( state, the_thread->current_state );               
    _ISR_Enable( level );                                             
   47ef2:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
    return;                                                           
   47ef4:	6018           	bras 47f0e <_Thread_Set_state+0x42>         <== NOT EXECUTED
  }                                                                   
                                                                      
  the_thread->current_state = state;                                  
   47ef6:	2141 0010      	movel %d1,%a0@(16)                          
RTEMS_INLINE_ROUTINE void _Scheduler_Block(                           
    Scheduler_Control *the_scheduler,                                 
    Thread_Control    *the_thread                                     
)                                                                     
{                                                                     
  the_scheduler->Operations.block( the_scheduler, the_thread );       
   47efa:	2f08           	movel %a0,%sp@-                             
   47efc:	4879 0005 c74e 	pea 5c74e <_Scheduler>                      
   47f02:	2079 0005 c75a 	moveal 5c75a <_Scheduler+0xc>,%a0           
   47f08:	4e90           	jsr %a0@                                    
                                                                      
  _Scheduler_Block( &_Scheduler, the_thread);                         
                                                                      
  _ISR_Enable( level );                                               
   47f0a:	46c2           	movew %d2,%sr                               
   47f0c:	508f           	addql #8,%sp                                
}                                                                     
   47f0e:	242e fffc      	movel %fp@(-4),%d2                          
   47f12:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

00047f18 <_Thread_Set_transient>: ) { ISR_Level level; uint32_t old_state; _ISR_Disable( level );
   47f18:	203c 0000 0700 	movel #1792,%d0                             
 */                                                                   
                                                                      
void _Thread_Set_transient(                                           
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
   47f1e:	4e56 0000      	linkw %fp,#0                                
   47f22:	226e 0008      	moveal %fp@(8),%a1                          
   47f26:	2f0a           	movel %a2,%sp@-                             
   47f28:	2f02           	movel %d2,%sp@-                             
  ISR_Level             level;                                        
  uint32_t              old_state;                                    
                                                                      
  _ISR_Disable( level );                                              
   47f2a:	40c1           	movew %sr,%d1                               
   47f2c:	8081           	orl %d1,%d0                                 
   47f2e:	46c0           	movew %d0,%sr                               
                                                                      
  old_state = the_thread->current_state;                              
   47f30:	2029 0010      	movel %a1@(16),%d0                          
   47f34:	7404           	moveq #4,%d2                                
   47f36:	8480           	orl %d0,%d2                                 
   47f38:	2342 0010      	movel %d2,%a1@(16)                          
  the_thread->current_state = _States_Set( STATES_TRANSIENT, old_state );
                                                                      
  /* FIXME: need to check which scheduler to use? */                  
  if ( _States_Is_ready( old_state ) ) {                              
   47f3c:	4a80           	tstl %d0                                    
   47f3e:	6650           	bnes 47f90 <_Thread_Set_transient+0x78>     
                                                                      
RTEMS_INLINE_ROUTINE void _Scheduler_priority_Ready_queue_extract(    
  Thread_Control        *the_thread                                   
)                                                                     
{                                                                     
  Chain_Control         *ready  = the_thread->scheduler.priority->ready_chain;
   47f40:	2069 008a      	moveal %a1@(138),%a0                        
   47f44:	2050           	moveal %a0@,%a0                             
                                                                      
  if ( _Chain_Has_only_one_node( ready ) ) {                          
   47f46:	2028 0008      	movel %a0@(8),%d0                           
   47f4a:	b090           	cmpl %a0@,%d0                               
   47f4c:	6636           	bnes 47f84 <_Thread_Set_transient+0x6c>     <== NEVER TAKEN
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   47f4e:	2408           	movel %a0,%d2                               
   47f50:	5882           	addql #4,%d2                                
                                                                      
  head->next = tail;                                                  
  head->previous = NULL;                                              
   47f52:	42a8 0004      	clrl %a0@(4)                                
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   47f56:	2082           	movel %d2,%a0@                              
                                                                      
  head->next = tail;                                                  
  head->previous = NULL;                                              
  tail->previous = head;                                              
   47f58:	2148 0008      	movel %a0,%a0@(8)                           
    _Chain_Initialize_empty( ready );                                 
    _Priority_bit_map_Remove( &the_thread->scheduler.priority->Priority_map );
   47f5c:	2069 008a      	moveal %a1@(138),%a0                        
                                                                      
RTEMS_INLINE_ROUTINE void _Priority_bit_map_Remove (                  
  Priority_bit_map_Information *the_priority_map                      
)                                                                     
{                                                                     
  *the_priority_map->minor &= the_priority_map->block_minor;          
   47f60:	2268 0004      	moveal %a0@(4),%a1                          
   47f64:	3028 000e      	movew %a0@(14),%d0                          
   47f68:	3411           	movew %a1@,%d2                              
   47f6a:	c082           	andl %d2,%d0                                
   47f6c:	3280           	movew %d0,%a1@                              
  if ( *the_priority_map->minor == 0 )                                
   47f6e:	6620           	bnes 47f90 <_Thread_Set_transient+0x78>     
    _Priority_Major_bit_map &= the_priority_map->block_major;         
   47f70:	3039 0005 c894 	movew 5c894 <_Priority_Major_bit_map>,%d0   
   47f76:	3428 000c      	movew %a0@(12),%d2                          
   47f7a:	c082           	andl %d2,%d0                                
   47f7c:	33c0 0005 c894 	movew %d0,5c894 <_Priority_Major_bit_map>   
   47f82:	600c           	bras 47f90 <_Thread_Set_transient+0x78>     
)                                                                     
{                                                                     
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
   47f84:	2451           	moveal %a1@,%a2                             <== NOT EXECUTED
  previous       = the_node->previous;                                
   47f86:	2069 0004      	moveal %a1@(4),%a0                          <== NOT EXECUTED
  next->previous = previous;                                          
   47f8a:	2548 0004      	movel %a0,%a2@(4)                           <== NOT EXECUTED
  previous->next = next;                                              
   47f8e:	208a           	movel %a2,%a0@                              <== NOT EXECUTED
    _Scheduler_priority_Ready_queue_extract( the_thread);             
  }                                                                   
                                                                      
  _ISR_Enable( level );                                               
   47f90:	46c1           	movew %d1,%sr                               
                                                                      
}                                                                     
   47f92:	241f           	movel %sp@+,%d2                             
   47f94:	245f           	moveal %sp@+,%a2                            
   47f96:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

00047fe8 <_Thread_Stack_Free>: */ void _Thread_Stack_Free( Thread_Control *the_thread ) {
   47fe8:	4e56 0000      	linkw %fp,#0                                
   47fec:	206e 0008      	moveal %fp@(8),%a0                          
   * Call ONLY the CPU table stack free hook, or the                  
   * the RTEMS workspace free.  This is so the free                   
   * routine properly matches the allocation of the stack.            
   */                                                                 
                                                                      
  if ( Configuration.stack_free_hook )                                
   47ff0:	2279 0005 aebc 	moveal 5aebc <Configuration+0x28>,%a1       
   47ff6:	4a89           	tstl %a1                                    
   47ff8:	670a           	beqs 48004 <_Thread_Stack_Free+0x1c>        <== ALWAYS TAKEN
    (*Configuration.stack_free_hook)( the_thread->Start.Initial_stack.area );
   47ffa:	2d68 00b4 0008 	movel %a0@(180),%fp@(8)                     <== NOT EXECUTED
  else                                                                
    _Workspace_Free( the_thread->Start.Initial_stack.area );          
}                                                                     
   48000:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   * the RTEMS workspace free.  This is so the free                   
   * routine properly matches the allocation of the stack.            
   */                                                                 
                                                                      
  if ( Configuration.stack_free_hook )                                
    (*Configuration.stack_free_hook)( the_thread->Start.Initial_stack.area );
   48002:	4ed1           	jmp %a1@                                    <== NOT EXECUTED
  else                                                                
    _Workspace_Free( the_thread->Start.Initial_stack.area );          
   48004:	2d68 00b4 0008 	movel %a0@(180),%fp@(8)                     
}                                                                     
   4800a:	4e5e           	unlk %fp                                    
   */                                                                 
                                                                      
  if ( Configuration.stack_free_hook )                                
    (*Configuration.stack_free_hook)( the_thread->Start.Initial_stack.area );
  else                                                                
    _Workspace_Free( the_thread->Start.Initial_stack.area );          
   4800c:	4ef9 0004 86dc 	jmp 486dc <_Workspace_Free>                 
	...                                                                  
                                                                      

00048064 <_Thread_Start>: */ RTEMS_INLINE_ROUTINE bool _States_Is_dormant ( States_Control the_states ) { return (the_states & STATES_DORMANT);
   48064:	7001           	moveq #1,%d0                                
  Thread_Start_types         the_prototype,                           
  void                      *entry_point,                             
  void                      *pointer_argument,                        
  Thread_Entry_numeric_type  numeric_argument                         
)                                                                     
{                                                                     
   48066:	4e56 0000      	linkw %fp,#0                                
   4806a:	2f0a           	movel %a2,%sp@-                             
   4806c:	246e 0008      	moveal %fp@(8),%a2                          
   48070:	c0aa 0010      	andl %a2@(16),%d0                           
  if ( _States_Is_dormant( the_thread->current_state ) ) {            
   48074:	6738           	beqs 480ae <_Thread_Start+0x4a>             <== NEVER TAKEN
                                                                      
    the_thread->Start.entry_point      = (Thread_Entry) entry_point;  
   48076:	256e 0010 008e 	movel %fp@(16),%a2@(142)                    
                                                                      
    the_thread->Start.prototype        = the_prototype;               
   4807c:	256e 000c 0092 	movel %fp@(12),%a2@(146)                    
    the_thread->Start.pointer_argument = pointer_argument;            
   48082:	256e 0014 0096 	movel %fp@(20),%a2@(150)                    
    the_thread->Start.numeric_argument = numeric_argument;            
   48088:	256e 0018 009a 	movel %fp@(24),%a2@(154)                    
                                                                      
    _Thread_Load_environment( the_thread );                           
   4808e:	2f0a           	movel %a2,%sp@-                             
   48090:	4eb9 0004 a570 	jsr 4a570 <_Thread_Load_environment>        
                                                                      
    _Thread_Ready( the_thread );                                      
   48096:	2f0a           	movel %a2,%sp@-                             
   48098:	4eb9 0004 a808 	jsr 4a808 <_Thread_Ready>                   
                                                                      
    _User_extensions_Thread_start( the_thread );                      
   4809e:	2f0a           	movel %a2,%sp@-                             
   480a0:	4eb9 0004 83c8 	jsr 483c8 <_User_extensions_Thread_start>   
                                                                      
    return true;                                                      
   480a6:	4fef 000c      	lea %sp@(12),%sp                            
   480aa:	7001           	moveq #1,%d0                                
   480ac:	6002           	bras 480b0 <_Thread_Start+0x4c>             
  }                                                                   
                                                                      
  return false;                                                       
   480ae:	4200           	clrb %d0                                    <== NOT EXECUTED
}                                                                     
   480b0:	246e fffc      	moveal %fp@(-4),%a2                         
   480b4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000480b8 <_Thread_Suspend>: Thread_Control *the_thread ) { ISR_Level level; _ISR_Disable( level );
   480b8:	203c 0000 0700 	movel #1792,%d0                             
 */                                                                   
                                                                      
void _Thread_Suspend(                                                 
  Thread_Control   *the_thread                                        
)                                                                     
{                                                                     
   480be:	4e56 0000      	linkw %fp,#0                                
   480c2:	206e 0008      	moveal %fp@(8),%a0                          
   480c6:	2f02           	movel %d2,%sp@-                             
  ISR_Level      level;                                               
                                                                      
  _ISR_Disable( level );                                              
   480c8:	40c2           	movew %sr,%d2                               
   480ca:	8082           	orl %d2,%d0                                 
   480cc:	46c0           	movew %d0,%sr                               
  if ( !_States_Is_ready( the_thread->current_state ) ) {             
   480ce:	2028 0010      	movel %a0@(16),%d0                          
   480d2:	670c           	beqs 480e0 <_Thread_Suspend+0x28>           <== ALWAYS TAKEN
RTEMS_INLINE_ROUTINE States_Control _States_Set (                     
  States_Control states_to_set,                                       
  States_Control current_state                                        
)                                                                     
{                                                                     
   return (current_state | states_to_set);                            
   480d4:	7202           	moveq #2,%d1                                <== NOT EXECUTED
   480d6:	8280           	orl %d0,%d1                                 <== NOT EXECUTED
   480d8:	2141 0010      	movel %d1,%a0@(16)                          <== NOT EXECUTED
    the_thread->current_state =                                       
       _States_Set( STATES_SUSPENDED, the_thread->current_state );    
    _ISR_Enable( level );                                             
   480dc:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
    return;                                                           
   480de:	601a           	bras 480fa <_Thread_Suspend+0x42>           <== NOT EXECUTED
  }                                                                   
                                                                      
  the_thread->current_state = STATES_SUSPENDED;                       
   480e0:	7002           	moveq #2,%d0                                
   480e2:	2140 0010      	movel %d0,%a0@(16)                          
   480e6:	2f08           	movel %a0,%sp@-                             
   480e8:	4879 0005 c74e 	pea 5c74e <_Scheduler>                      
   480ee:	2079 0005 c75a 	moveal 5c75a <_Scheduler+0xc>,%a0           
   480f4:	4e90           	jsr %a0@                                    
                                                                      
  _Scheduler_Block(&_Scheduler, the_thread);                          
                                                                      
  _ISR_Enable( level );                                               
   480f6:	46c2           	movew %d2,%sr                               
   480f8:	508f           	addql #8,%sp                                
}                                                                     
   480fa:	242e fffc      	movel %fp@(-4),%d2                          
   480fe:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

00048104 <_Thread_Tickle_timeslice>: * * Output parameters: NONE */ void _Thread_Tickle_timeslice( void ) {
   48104:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   48108:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
  Thread_Control *executing;                                          
                                                                      
  executing = _Thread_Executing;                                      
   4810a:	2479 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a2 <== NOT EXECUTED
  /*                                                                  
   *  If the thread is not preemptible or is not ready, then          
   *  just return.                                                    
   */                                                                 
                                                                      
  if ( !executing->is_preemptible )                                   
   48110:	4a2a 0074      	tstb %a2@(116)                              <== NOT EXECUTED
   48114:	6734           	beqs 4814a <_Thread_Tickle_timeslice+0x46>  <== NOT EXECUTED
    return;                                                           
                                                                      
  if ( !_States_Is_ready( executing->current_state ) )                
   48116:	4aaa 0010      	tstl %a2@(16)                               <== NOT EXECUTED
   4811a:	662e           	bnes 4814a <_Thread_Tickle_timeslice+0x46>  <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  The cpu budget algorithm determines what happens next.          
   */                                                                 
                                                                      
  switch ( executing->budget_algorithm ) {                            
   4811c:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4811e:	b0aa 007a      	cmpl %a2@(122),%d0                          <== NOT EXECUTED
   48122:	6626           	bnes 4814a <_Thread_Tickle_timeslice+0x46>  <== NOT EXECUTED
                                                                      
    case THREAD_CPU_BUDGET_ALGORITHM_RESET_TIMESLICE:                 
    #if defined(RTEMS_SCORE_THREAD_ENABLE_EXHAUST_TIMESLICE)          
      case THREAD_CPU_BUDGET_ALGORITHM_EXHAUST_TIMESLICE:             
    #endif                                                            
      if ( (int)(--executing->cpu_time_budget) <= 0 ) {               
   48124:	202a 0076      	movel %a2@(118),%d0                         <== NOT EXECUTED
   48128:	5380           	subql #1,%d0                                <== NOT EXECUTED
   4812a:	2540 0076      	movel %d0,%a2@(118)                         <== NOT EXECUTED
   4812e:	6e1a           	bgts 4814a <_Thread_Tickle_timeslice+0x46>  <== NOT EXECUTED
 *  always operates on the scheduler that 'owns' the currently executing
 *  thread.                                                           
 */                                                                   
RTEMS_INLINE_ROUTINE void _Scheduler_Yield( void )                    
{                                                                     
  _Scheduler.Operations.yield( &_Scheduler );                         
   48130:	4879 0005 c74e 	pea 5c74e <_Scheduler>                      <== NOT EXECUTED
   48136:	2079 0005 c756 	moveal 5c756 <_Scheduler+0x8>,%a0           <== NOT EXECUTED
   4813c:	4e90           	jsr %a0@                                    <== NOT EXECUTED
         *  executing thread's timeslice is reset.  Otherwise, the    
         *  currently executing thread is placed at the rear of the   
         *  FIFO for this priority and a new heir is selected.        
         */                                                           
        _Scheduler_Yield( );                                          
        executing->cpu_time_budget = _Thread_Ticks_per_timeslice;     
   4813e:	588f           	addql #4,%sp                                <== NOT EXECUTED
   48140:	41f9 0005 c680 	lea 5c680 <_Thread_Ticks_per_timeslice>,%a0 <== NOT EXECUTED
   48146:	2550 0076      	movel %a0@,%a2@(118)                        <== NOT EXECUTED
	if ( --executing->cpu_time_budget == 0 )                             
	  (*executing->budget_callout)( executing );                         
	break;                                                               
    #endif                                                            
  }                                                                   
}                                                                     
   4814a:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   4814e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00047234 <_Thread_blocking_operation_Cancel>: /* * If the sync state is timed out, this is very likely not needed. * But better safe than sorry when it comes to critical sections. */ if ( _Watchdog_Is_active( &the_thread->Timer ) ) {
   47234:	7202           	moveq #2,%d1                                <== NOT EXECUTED
  Thread_blocking_operation_States  sync_state __attribute__((unused)),
#endif                                                                
  Thread_Control                   *the_thread,                       
  ISR_Level                         level                             
)                                                                     
{                                                                     
   47236:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4723a:	202e 0010      	movel %fp@(16),%d0                          <== NOT EXECUTED
   4723e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   47240:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
  #endif                                                              
                                                                      
  /*                                                                  
   * The thread is not waiting on anything after this completes.      
   */                                                                 
  the_thread->Wait.queue = NULL;                                      
   47244:	42aa 0044      	clrl %a2@(68)                               <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  If the sync state is timed out, this is very likely not needed. 
   *  But better safe than sorry when it comes to critical sections.  
   */                                                                 
  if ( _Watchdog_Is_active( &the_thread->Timer ) ) {                  
   47248:	b2aa 0050      	cmpl %a2@(80),%d1                           <== NOT EXECUTED
   4724c:	6618           	bnes 47266 <_Thread_blocking_operation_Cancel+0x32><== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Watchdog_Deactivate(                       
  Watchdog_Control *the_watchdog                                      
)                                                                     
{                                                                     
                                                                      
  the_watchdog->state = WATCHDOG_REMOVE_IT;                           
   4724e:	123c 0003      	moveb #3,%d1                                <== NOT EXECUTED
   47252:	2541 0050      	movel %d1,%a2@(80)                          <== NOT EXECUTED
    _Watchdog_Deactivate( &the_thread->Timer );                       
    _ISR_Enable( level );                                             
   47256:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
    (void) _Watchdog_Remove( &the_thread->Timer );                    
   47258:	486a 0048      	pea %a2@(72)                                <== NOT EXECUTED
   4725c:	4eb9 0004 8568 	jsr 48568 <_Watchdog_Remove>                <== NOT EXECUTED
   47262:	588f           	addql #4,%sp                                <== NOT EXECUTED
   47264:	6002           	bras 47268 <_Thread_blocking_operation_Cancel+0x34><== NOT EXECUTED
  } else                                                              
    _ISR_Enable( level );                                             
   47266:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unblock (                           
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
  _Thread_Clear_state( the_thread, STATES_BLOCKED );                  
   47268:	2d4a 0008      	movel %a2,%fp@(8)                           <== NOT EXECUTED
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
                                                                      
}                                                                     
   4726c:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   47270:	203c 1003 fff8 	movel #268697592,%d0                        <== NOT EXECUTED
   47276:	2d40 000c      	movel %d0,%fp@(12)                          <== NOT EXECUTED
   4727a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4727c:	4ef9 0004 73c0 	jmp 473c0 <_Thread_Clear_state>             <== NOT EXECUTED
	...                                                                  
                                                                      

00047a18 <_Thread_queue_Dequeue>: Thread_blocking_operation_States sync_state; if ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY ) dequeue_p = _Thread_queue_Dequeue_priority; else /* must be THREAD_QUEUE_DISCIPLINE_FIFO */ dequeue_p = _Thread_queue_Dequeue_fifo;
   47a18:	41f9 0004 a5ec 	lea 4a5ec <_Thread_queue_Dequeue_fifo>,%a0  
  Thread_Control *(*dequeue_p)( Thread_queue_Control * );             
  Thread_Control *the_thread;                                         
  ISR_Level       level;                                              
  Thread_blocking_operation_States  sync_state;                       
                                                                      
  if ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY )
   47a1e:	7001           	moveq #1,%d0                                
 */                                                                   
                                                                      
Thread_Control *_Thread_queue_Dequeue(                                
  Thread_queue_Control *the_thread_queue                              
)                                                                     
{                                                                     
   47a20:	4e56 fff4      	linkw %fp,#-12                              
   47a24:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
   47a28:	246e 0008      	moveal %fp@(8),%a2                          
  Thread_Control *(*dequeue_p)( Thread_queue_Control * );             
  Thread_Control *the_thread;                                         
  ISR_Level       level;                                              
  Thread_blocking_operation_States  sync_state;                       
                                                                      
  if ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY )
   47a2c:	b0aa 0034      	cmpl %a2@(52),%d0                           
   47a30:	6606           	bnes 47a38 <_Thread_queue_Dequeue+0x20>     
    dequeue_p = _Thread_queue_Dequeue_priority;                       
   47a32:	41f9 0004 7a74 	lea 47a74 <_Thread_queue_Dequeue_priority>,%a0
  else /* must be THREAD_QUEUE_DISCIPLINE_FIFO */                     
    dequeue_p = _Thread_queue_Dequeue_fifo;                           
                                                                      
  the_thread = (*dequeue_p)( the_thread_queue );                      
   47a38:	2f0a           	movel %a2,%sp@-                             
   47a3a:	4e90           	jsr %a0@                                    
  _ISR_Disable( level );                                              
   47a3c:	223c 0000 0700 	movel #1792,%d1                             
   47a42:	40c2           	movew %sr,%d2                               
   47a44:	8282           	orl %d2,%d1                                 
   47a46:	46c1           	movew %d1,%sr                               
    if ( !the_thread ) {                                              
   47a48:	588f           	addql #4,%sp                                
   47a4a:	4a80           	tstl %d0                                    
   47a4c:	661a           	bnes 47a68 <_Thread_queue_Dequeue+0x50>     
      sync_state = the_thread_queue->sync_state;                      
      if ( (sync_state == THREAD_BLOCKING_OPERATION_TIMEOUT) ||       
   47a4e:	222a 0030      	movel %a2@(48),%d1                          
   47a52:	7601           	moveq #1,%d3                                
   47a54:	5381           	subql #1,%d1                                
   47a56:	b681           	cmpl %d1,%d3                                
   47a58:	650e           	bcss 47a68 <_Thread_queue_Dequeue+0x50>     <== ALWAYS TAKEN
           (sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED) ) {
        the_thread_queue->sync_state = THREAD_BLOCKING_OPERATION_SATISFIED;
   47a5a:	103c 0003      	moveb #3,%d0                                <== NOT EXECUTED
   47a5e:	2540 0030      	movel %d0,%a2@(48)                          <== NOT EXECUTED
        the_thread = _Thread_Executing;                               
   47a62:	2039 0005 c884 	movel 5c884 <_Per_CPU_Information+0xc>,%d0  <== NOT EXECUTED
      }                                                               
    }                                                                 
  _ISR_Enable( level );                                               
   47a68:	46c2           	movew %d2,%sr                               
  return the_thread;                                                  
}                                                                     
   47a6a:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   47a70:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004a5ec <_Thread_queue_Dequeue_fifo>: ) { ISR_Level level; Thread_Control *the_thread; _ISR_Disable( level );
   4a5ec:	223c 0000 0700 	movel #1792,%d1                             
 */                                                                   
                                                                      
Thread_Control *_Thread_queue_Dequeue_fifo(                           
  Thread_queue_Control *the_thread_queue                              
)                                                                     
{                                                                     
   4a5f2:	4e56 fff4      	linkw %fp,#-12                              
   4a5f6:	206e 0008      	moveal %fp@(8),%a0                          
   4a5fa:	48d7 1c00      	moveml %a2-%a4,%sp@                         
  ISR_Level              level;                                       
  Thread_Control *the_thread;                                         
                                                                      
  _ISR_Disable( level );                                              
   4a5fe:	40c0           	movew %sr,%d0                               
   4a600:	8280           	orl %d0,%d1                                 
   4a602:	46c1           	movew %d1,%sr                               
    return the_thread;                                                
  }                                                                   
                                                                      
  _ISR_Enable( level );                                               
  return NULL;                                                        
}                                                                     
   4a604:	2248           	moveal %a0,%a1                              
   4a606:	2459           	moveal %a1@+,%a2                            
{                                                                     
  ISR_Level              level;                                       
  Thread_Control *the_thread;                                         
                                                                      
  _ISR_Disable( level );                                              
  if ( !_Chain_Is_empty( &the_thread_queue->Queues.Fifo ) ) {         
   4a608:	b3ca           	cmpal %a2,%a1                               
   4a60a:	674e           	beqs 4a65a <_Thread_queue_Dequeue_fifo+0x6e><== ALWAYS TAKEN
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *old_first = head->next;                                 
  Chain_Node *new_first = old_first->next;                            
   4a60c:	2252           	moveal %a2@,%a1                             <== NOT EXECUTED
                                                                      
    the_thread = (Thread_Control *)                                   
   4a60e:	264a           	moveal %a2,%a3                              <== NOT EXECUTED
   4a610:	49f9 0004 73c0 	lea 473c0 <_Thread_Clear_state>,%a4         <== NOT EXECUTED
       _Chain_Get_first_unprotected( &the_thread_queue->Queues.Fifo );
                                                                      
    the_thread->Wait.queue = NULL;                                    
    if ( !_Watchdog_Is_active( &the_thread->Timer ) ) {               
   4a616:	7202           	moveq #2,%d1                                <== NOT EXECUTED
                                                                      
  head->next = new_first;                                             
   4a618:	2089           	movel %a1,%a0@                              <== NOT EXECUTED
  new_first->previous = head;                                         
   4a61a:	2348 0004      	movel %a0,%a1@(4)                           <== NOT EXECUTED
  if ( !_Chain_Is_empty( &the_thread_queue->Queues.Fifo ) ) {         
                                                                      
    the_thread = (Thread_Control *)                                   
       _Chain_Get_first_unprotected( &the_thread_queue->Queues.Fifo );
                                                                      
    the_thread->Wait.queue = NULL;                                    
   4a61e:	42aa 0044      	clrl %a2@(68)                               <== NOT EXECUTED
    if ( !_Watchdog_Is_active( &the_thread->Timer ) ) {               
   4a622:	b2aa 0050      	cmpl %a2@(80),%d1                           <== NOT EXECUTED
   4a626:	6710           	beqs 4a638 <_Thread_queue_Dequeue_fifo+0x4c><== NOT EXECUTED
      _ISR_Enable( level );                                           
   4a628:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unblock (                           
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
  _Thread_Clear_state( the_thread, STATES_BLOCKED );                  
   4a62a:	2f3c 1003 fff8 	movel #268697592,%sp@-                      <== NOT EXECUTED
   4a630:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4a632:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   4a634:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4a636:	6026           	bras 4a65e <_Thread_queue_Dequeue_fifo+0x72><== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Watchdog_Deactivate(                       
  Watchdog_Control *the_watchdog                                      
)                                                                     
{                                                                     
                                                                      
  the_watchdog->state = WATCHDOG_REMOVE_IT;                           
   4a638:	7203           	moveq #3,%d1                                <== NOT EXECUTED
   4a63a:	2541 0050      	movel %d1,%a2@(80)                          <== NOT EXECUTED
      _Thread_Unblock( the_thread );                                  
    } else {                                                          
      _Watchdog_Deactivate( &the_thread->Timer );                     
      _ISR_Enable( level );                                           
   4a63e:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
      (void) _Watchdog_Remove( &the_thread->Timer );                  
   4a640:	486a 0048      	pea %a2@(72)                                <== NOT EXECUTED
   4a644:	4eb9 0004 8568 	jsr 48568 <_Watchdog_Remove>                <== NOT EXECUTED
   4a64a:	2f3c 1003 fff8 	movel #268697592,%sp@-                      <== NOT EXECUTED
   4a650:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4a652:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   4a654:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4a658:	6004           	bras 4a65e <_Thread_queue_Dequeue_fifo+0x72><== NOT EXECUTED
#endif                                                                
                                                                      
    return the_thread;                                                
  }                                                                   
                                                                      
  _ISR_Enable( level );                                               
   4a65a:	46c0           	movew %d0,%sr                               
  return NULL;                                                        
   4a65c:	97cb           	subal %a3,%a3                               
}                                                                     
   4a65e:	200b           	movel %a3,%d0                               
   4a660:	4cee 1c00 fff4 	moveml %fp@(-12),%a2-%a4                    
   4a666:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

00047a74 <_Thread_queue_Dequeue_priority>: Chain_Node *new_second_node; Chain_Node *last_node; Chain_Node *next_node; Chain_Node *previous_node; _ISR_Disable( level );
   47a74:	203c 0000 0700 	movel #1792,%d0                             
 */                                                                   
                                                                      
Thread_Control *_Thread_queue_Dequeue_priority(                       
  Thread_queue_Control *the_thread_queue                              
)                                                                     
{                                                                     
   47a7a:	4e56 ffe8      	linkw %fp,#-24                              
   47a7e:	226e 0008      	moveal %fp@(8),%a1                          
   47a82:	48d7 3c0c      	moveml %d2-%d3/%a2-%a5,%sp@                 
  Chain_Node     *new_second_node;                                    
  Chain_Node     *last_node;                                          
  Chain_Node     *next_node;                                          
  Chain_Node     *previous_node;                                      
                                                                      
  _ISR_Disable( level );                                              
   47a86:	40c1           	movew %sr,%d1                               
   47a88:	8081           	orl %d1,%d0                                 
   47a8a:	46c0           	movew %d0,%sr                               
  for( index=0 ;                                                      
   47a8c:	4280           	clrl %d0                                    
  Chain_Node     *new_second_node;                                    
  Chain_Node     *last_node;                                          
  Chain_Node     *next_node;                                          
  Chain_Node     *previous_node;                                      
                                                                      
  _ISR_Disable( level );                                              
   47a8e:	2049           	moveal %a1,%a0                              
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  const Chain_Control *the_chain                                      
)                                                                     
{                                                                     
  return _Chain_Immutable_first( the_chain )                          
    == _Chain_Immutable_tail( the_chain );                            
   47a90:	2600           	movel %d0,%d3                               
   47a92:	2400           	movel %d0,%d2                               
   47a94:	e58b           	lsll #2,%d3                                 
   47a96:	e98a           	lsll #4,%d2                                 
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
  return( the_thread );                                               
}                                                                     
   47a98:	2450           	moveal %a0@,%a2                             
   47a9a:	9483           	subl %d3,%d2                                
   47a9c:	47f1 2804      	lea %a1@(00000004,%d2:l),%a3                
                                                                      
  _ISR_Disable( level );                                              
  for( index=0 ;                                                      
       index < TASK_QUEUE_DATA_NUMBER_OF_PRIORITY_HEADERS ;           
       index++ ) {                                                    
    if ( !_Chain_Is_empty( &the_thread_queue->Queues.Priority[ index ] ) ) {
   47aa0:	b7ca           	cmpal %a2,%a3                               
   47aa2:	671e           	beqs 47ac2 <_Thread_queue_Dequeue_priority+0x4e>
   47aa4:	200a           	movel %a2,%d0                               
      the_thread = (Thread_Control *) _Chain_First(                   
   47aa6:	240a           	movel %a2,%d2                               
   47aa8:	0680 0000 003c 	addil #60,%d0                               
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
  return( the_thread );                                               
}                                                                     
   47aae:	206a 0038      	moveal %a2@(56),%a0                         
                                                                      
dequeue:                                                              
  the_thread->Wait.queue = NULL;                                      
  new_first_node   = _Chain_First( &the_thread->Wait.Block2n );       
  new_first_thread = (Thread_Control *) new_first_node;               
  next_node        = the_thread->Object.Node.next;                    
   47ab2:	2252           	moveal %a2@,%a1                             
  previous_node    = the_thread->Object.Node.previous;                
   47ab4:	266a 0004      	moveal %a2@(4),%a3                          
   */                                                                 
  _ISR_Enable( level );                                               
  return NULL;                                                        
                                                                      
dequeue:                                                              
  the_thread->Wait.queue = NULL;                                      
   47ab8:	42aa 0044      	clrl %a2@(68)                               
  new_first_node   = _Chain_First( &the_thread->Wait.Block2n );       
  new_first_thread = (Thread_Control *) new_first_node;               
  next_node        = the_thread->Object.Node.next;                    
  previous_node    = the_thread->Object.Node.previous;                
                                                                      
  if ( !_Chain_Is_empty( &the_thread->Wait.Block2n ) ) {              
   47abc:	b088           	cmpl %a0,%d0                                
   47abe:	6614           	bnes 47ad4 <_Thread_queue_Dequeue_priority+0x60><== NEVER TAKEN
   47ac0:	6046           	bras 47b08 <_Thread_queue_Dequeue_priority+0x94>
  Chain_Node     *previous_node;                                      
                                                                      
  _ISR_Disable( level );                                              
  for( index=0 ;                                                      
       index < TASK_QUEUE_DATA_NUMBER_OF_PRIORITY_HEADERS ;           
       index++ ) {                                                    
   47ac2:	5280           	addql #1,%d0                                
   47ac4:	41e8 000c      	lea %a0@(12),%a0                            
  Chain_Node     *last_node;                                          
  Chain_Node     *next_node;                                          
  Chain_Node     *previous_node;                                      
                                                                      
  _ISR_Disable( level );                                              
  for( index=0 ;                                                      
   47ac8:	7404           	moveq #4,%d2                                
   47aca:	b480           	cmpl %d0,%d2                                
   47acc:	66c2           	bnes 47a90 <_Thread_queue_Dequeue_priority+0x1c>
  }                                                                   
                                                                      
  /*                                                                  
   * We did not find a thread to unblock.                             
   */                                                                 
  _ISR_Enable( level );                                               
   47ace:	46c1           	movew %d1,%sr                               
  return NULL;                                                        
   47ad0:	4202           	clrb %d2                                    
   47ad2:	6078           	bras 47b4c <_Thread_queue_Dequeue_priority+0xd8>
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
  return( the_thread );                                               
}                                                                     
   47ad4:	286a 0040      	moveal %a2@(64),%a4                         <== NOT EXECUTED
  next_node        = the_thread->Object.Node.next;                    
  previous_node    = the_thread->Object.Node.previous;                
                                                                      
  if ( !_Chain_Is_empty( &the_thread->Wait.Block2n ) ) {              
    last_node       = _Chain_Last( &the_thread->Wait.Block2n );       
    new_second_node = new_first_node->next;                           
   47ad8:	2a50           	moveal %a0@,%a5                             <== NOT EXECUTED
                                                                      
    previous_node->next      = new_first_node;                        
    next_node->previous      = new_first_node;                        
   47ada:	2348 0004      	movel %a0,%a1@(4)                           <== NOT EXECUTED
                                                                      
  if ( !_Chain_Is_empty( &the_thread->Wait.Block2n ) ) {              
    last_node       = _Chain_Last( &the_thread->Wait.Block2n );       
    new_second_node = new_first_node->next;                           
                                                                      
    previous_node->next      = new_first_node;                        
   47ade:	2688           	movel %a0,%a3@                              <== NOT EXECUTED
    next_node->previous      = new_first_node;                        
    new_first_node->next     = next_node;                             
    new_first_node->previous = previous_node;                         
   47ae0:	214b 0004      	movel %a3,%a0@(4)                           <== NOT EXECUTED
    last_node       = _Chain_Last( &the_thread->Wait.Block2n );       
    new_second_node = new_first_node->next;                           
                                                                      
    previous_node->next      = new_first_node;                        
    next_node->previous      = new_first_node;                        
    new_first_node->next     = next_node;                             
   47ae4:	2089           	movel %a1,%a0@                              <== NOT EXECUTED
    new_first_node->previous = previous_node;                         
                                                                      
    if ( !_Chain_Has_only_one_node( &the_thread->Wait.Block2n ) ) {   
   47ae6:	226a 0040      	moveal %a2@(64),%a1                         <== NOT EXECUTED
   47aea:	b3ea 0038      	cmpal %a2@(56),%a1                          <== NOT EXECUTED
   47aee:	671e           	beqs 47b0e <_Thread_queue_Dequeue_priority+0x9a><== NOT EXECUTED
                                                /* > two threads on 2-n */
      head = _Chain_Head( &new_first_thread->Wait.Block2n );          
   47af0:	43e8 0038      	lea %a0@(56),%a1                            <== NOT EXECUTED
   47af4:	2b49 0004      	movel %a1,%a5@(4)                           <== NOT EXECUTED
      tail = _Chain_Tail( &new_first_thread->Wait.Block2n );          
                                                                      
      new_second_node->previous = head;                               
      head->next = new_second_node;                                   
   47af8:	214d 0038      	movel %a5,%a0@(56)                          <== NOT EXECUTED
      tail->previous = last_node;                                     
   47afc:	214c 0040      	movel %a4,%a0@(64)                          <== NOT EXECUTED
    new_first_node->previous = previous_node;                         
                                                                      
    if ( !_Chain_Has_only_one_node( &the_thread->Wait.Block2n ) ) {   
                                                /* > two threads on 2-n */
      head = _Chain_Head( &new_first_thread->Wait.Block2n );          
      tail = _Chain_Tail( &new_first_thread->Wait.Block2n );          
   47b00:	41e8 003c      	lea %a0@(60),%a0                            <== NOT EXECUTED
   47b04:	2888           	movel %a0,%a4@                              <== NOT EXECUTED
   47b06:	6006           	bras 47b0e <_Thread_queue_Dequeue_priority+0x9a><== NOT EXECUTED
      head->next = new_second_node;                                   
      tail->previous = last_node;                                     
      last_node->next = tail;                                         
    }                                                                 
  } else {                                                            
    previous_node->next = next_node;                                  
   47b08:	2689           	movel %a1,%a3@                              
    next_node->previous = previous_node;                              
   47b0a:	234b 0004      	movel %a3,%a1@(4)                           
   47b0e:	47f9 0004 73c0 	lea 473c0 <_Thread_Clear_state>,%a3         
  }                                                                   
                                                                      
  if ( !_Watchdog_Is_active( &the_thread->Timer ) ) {                 
   47b14:	7002           	moveq #2,%d0                                
   47b16:	b0aa 0050      	cmpl %a2@(80),%d0                           
   47b1a:	6710           	beqs 47b2c <_Thread_queue_Dequeue_priority+0xb8><== NEVER TAKEN
    _ISR_Enable( level );                                             
   47b1c:	46c1           	movew %d1,%sr                               
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unblock (                           
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
  _Thread_Clear_state( the_thread, STATES_BLOCKED );                  
   47b1e:	2f3c 1003 fff8 	movel #268697592,%sp@-                      
   47b24:	2f0a           	movel %a2,%sp@-                             
   47b26:	4e93           	jsr %a3@                                    
   47b28:	508f           	addql #8,%sp                                
   47b2a:	6020           	bras 47b4c <_Thread_queue_Dequeue_priority+0xd8>
RTEMS_INLINE_ROUTINE void _Watchdog_Deactivate(                       
  Watchdog_Control *the_watchdog                                      
)                                                                     
{                                                                     
                                                                      
  the_watchdog->state = WATCHDOG_REMOVE_IT;                           
   47b2c:	7003           	moveq #3,%d0                                <== NOT EXECUTED
   47b2e:	2540 0050      	movel %d0,%a2@(80)                          <== NOT EXECUTED
    _Thread_Unblock( the_thread );                                    
  } else {                                                            
    _Watchdog_Deactivate( &the_thread->Timer );                       
    _ISR_Enable( level );                                             
   47b32:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
    (void) _Watchdog_Remove( &the_thread->Timer );                    
   47b34:	486a 0048      	pea %a2@(72)                                <== NOT EXECUTED
   47b38:	4eb9 0004 8568 	jsr 48568 <_Watchdog_Remove>                <== NOT EXECUTED
   47b3e:	2f3c 1003 fff8 	movel #268697592,%sp@-                      <== NOT EXECUTED
   47b44:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   47b46:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   47b48:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
  return( the_thread );                                               
}                                                                     
   47b4c:	2002           	movel %d2,%d0                               
   47b4e:	4cee 3c0c ffe8 	moveml %fp@(-24),%d2-%d3/%a2-%a5            
   47b54:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004a66c <_Thread_queue_Enqueue_fifo>: ) { Thread_blocking_operation_States sync_state; ISR_Level level; _ISR_Disable( level );
   4a66c:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
Thread_blocking_operation_States _Thread_queue_Enqueue_fifo (         
  Thread_queue_Control *the_thread_queue,                             
  Thread_Control       *the_thread,                                   
  ISR_Level            *level_p                                       
)                                                                     
{                                                                     
   4a672:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4a676:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   4a67a:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4a67c:	226e 000c      	moveal %fp@(12),%a1                         <== NOT EXECUTED
   4a680:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  Thread_blocking_operation_States sync_state;                        
  ISR_Level                        level;                             
                                                                      
  _ISR_Disable( level );                                              
   4a682:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   4a684:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   4a686:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
                                                                      
    sync_state = the_thread_queue->sync_state;                        
   4a688:	2028 0030      	movel %a0@(48),%d0                          <== NOT EXECUTED
    the_thread_queue->sync_state = THREAD_BLOCKING_OPERATION_SYNCHRONIZED;
    if (sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED) {   
   4a68c:	7401           	moveq #1,%d2                                <== NOT EXECUTED
  ISR_Level                        level;                             
                                                                      
  _ISR_Disable( level );                                              
                                                                      
    sync_state = the_thread_queue->sync_state;                        
    the_thread_queue->sync_state = THREAD_BLOCKING_OPERATION_SYNCHRONIZED;
   4a68e:	42a8 0030      	clrl %a0@(48)                               <== NOT EXECUTED
    if (sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED) {   
   4a692:	b480           	cmpl %d0,%d2                                <== NOT EXECUTED
   4a694:	661c           	bnes 4a6b2 <_Thread_queue_Enqueue_fifo+0x46><== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Chain_Append_unprotected(                  
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   4a696:	2408           	movel %a0,%d2                               <== NOT EXECUTED
   4a698:	5882           	addql #4,%d2                                <== NOT EXECUTED
  Chain_Node *old_last = tail->previous;                              
   4a69a:	2468 0008      	moveal %a0@(8),%a2                          <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Chain_Append_unprotected(                  
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   4a69e:	2282           	movel %d2,%a1@                              <== NOT EXECUTED
  Chain_Node *old_last = tail->previous;                              
                                                                      
  the_node->next = tail;                                              
  tail->previous = the_node;                                          
   4a6a0:	2149 0008      	movel %a1,%a0@(8)                           <== NOT EXECUTED
  old_last->next = the_node;                                          
   4a6a4:	2489           	movel %a1,%a2@                              <== NOT EXECUTED
  the_node->previous = old_last;                                      
   4a6a6:	234a 0004      	movel %a2,%a1@(4)                           <== NOT EXECUTED
      _Chain_Append_unprotected(                                      
        &the_thread_queue->Queues.Fifo,                               
        &the_thread->Object.Node                                      
      );                                                              
      the_thread->Wait.queue = the_thread_queue;                      
   4a6aa:	2348 0044      	movel %a0,%a1@(68)                          <== NOT EXECUTED
                                                                      
      the_thread_queue->sync_state = THREAD_BLOCKING_OPERATION_SYNCHRONIZED;
      _ISR_Enable( level );                                           
   4a6ae:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
      return THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;              
   4a6b0:	6006           	bras 4a6b8 <_Thread_queue_Enqueue_fifo+0x4c><== NOT EXECUTED
   *  For example, the blocking thread could have been given          
   *  the mutex by an ISR or timed out.                               
   *                                                                  
   *  WARNING! Returning with interrupts disabled!                    
   */                                                                 
  *level_p = level;                                                   
   4a6b2:	206e 0010      	moveal %fp@(16),%a0                         <== NOT EXECUTED
   4a6b6:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
  return sync_state;                                                  
}                                                                     
   4a6b8:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
   4a6ba:	245f           	moveal %sp@+,%a2                            <== NOT EXECUTED
   4a6bc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00047bf0 <_Thread_queue_Enqueue_priority>: Thread_blocking_operation_States _Thread_queue_Enqueue_priority ( Thread_queue_Control *the_thread_queue, Thread_Control *the_thread, ISR_Level *level_p ) {
   47bf0:	4e56 ffe0      	linkw %fp,#-32                              
   47bf4:	206e 000c      	moveal %fp@(12),%a0                         
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   47bf8:	43e8 003c      	lea %a0@(60),%a1                            
   47bfc:	48d7 1c7c      	moveml %d2-%d6/%a2-%a4,%sp@                 
   47c00:	246e 0008      	moveal %fp@(8),%a2                          
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
   47c04:	49e8 0038      	lea %a0@(56),%a4                            
  Priority_Control     priority;                                      
  States_Control       block_state;                                   
                                                                      
  _Chain_Initialize_empty( &the_thread->Wait.Block2n );               
                                                                      
  priority     = the_thread->current_priority;                        
   47c08:	2028 0014      	movel %a0@(20),%d0                          
                                                                      
RTEMS_INLINE_ROUTINE uint32_t   _Thread_queue_Header_number (         
  Priority_Control the_priority                                       
)                                                                     
{                                                                     
  return (the_priority / TASK_QUEUE_DATA_PRIORITIES_PER_HEADER);      
   47c0c:	2200           	movel %d0,%d1                               
   47c0e:	ec89           	lsrl #6,%d1                                 
  header_index = _Thread_queue_Header_number( priority );             
  header       = &the_thread_queue->Queues.Priority[ header_index ];  
  block_state  = the_thread_queue->state;                             
   47c10:	2a2a 0038      	movel %a2@(56),%d5                          
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   47c14:	2149 0038      	movel %a1,%a0@(56)                          
                                                                      
  head->next = tail;                                                  
  head->previous = NULL;                                              
   47c18:	42a8 003c      	clrl %a0@(60)                               
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
   47c1c:	214c 0040      	movel %a4,%a0@(64)                          
                                                                      
  if ( _Thread_queue_Is_reverse_search( priority ) )                  
   47c20:	0800 0005      	btst #5,%d0                                 
   47c24:	6670           	bnes 47c96 <_Thread_queue_Enqueue_priority+0xa6>
   *                                                                  
   *  WARNING! Returning with interrupts disabled!                    
   */                                                                 
  *level_p = level;                                                   
  return the_thread_queue->sync_state;                                
}                                                                     
   47c26:	2401           	movel %d1,%d2                               
  if ( _Thread_queue_Is_reverse_search( priority ) )                  
    goto restart_reverse_search;                                      
                                                                      
restart_forward_search:                                               
  search_priority = PRIORITY_MINIMUM - 1;                             
  _ISR_Disable( level );                                              
   47c28:	367c 0700      	moveaw #1792,%a3                            
   *                                                                  
   *  WARNING! Returning with interrupts disabled!                    
   */                                                                 
  *level_p = level;                                                   
  return the_thread_queue->sync_state;                                
}                                                                     
   47c2c:	e58a           	lsll #2,%d2                                 
   47c2e:	e989           	lsll #4,%d1                                 
   47c30:	9282           	subl %d2,%d1                                
RTEMS_INLINE_ROUTINE bool _Chain_Is_tail(                             
  Chain_Control *the_chain,                                           
  const Chain_Node    *the_node                                       
)                                                                     
{                                                                     
  return (the_node == _Chain_Tail(the_chain));                        
   47c32:	49f2 1804      	lea %a2@(00000004,%d1:l),%a4                
  if ( _Thread_queue_Is_reverse_search( priority ) )                  
    goto restart_reverse_search;                                      
                                                                      
restart_forward_search:                                               
  search_priority = PRIORITY_MINIMUM - 1;                             
  _ISR_Disable( level );                                              
   47c36:	260b           	movel %a3,%d3                               
   47c38:	40c2           	movew %sr,%d2                               
   47c3a:	8682           	orl %d2,%d3                                 
   47c3c:	46c3           	movew %d3,%sr                               
   47c3e:	2602           	movel %d2,%d3                               
  search_thread = (Thread_Control *) _Chain_First( header );          
   47c40:	2272 1800      	moveal %a2@(00000000,%d1:l),%a1             
                                                                      
  if ( _Thread_queue_Is_reverse_search( priority ) )                  
    goto restart_reverse_search;                                      
                                                                      
restart_forward_search:                                               
  search_priority = PRIORITY_MINIMUM - 1;                             
   47c44:	78ff           	moveq #-1,%d4                               
  _ISR_Disable( level );                                              
  search_thread = (Thread_Control *) _Chain_First( header );          
  while ( !_Chain_Is_tail( header, (Chain_Node *)search_thread ) ) {  
   47c46:	601e           	bras 47c66 <_Thread_queue_Enqueue_priority+0x76>
    search_priority = search_thread->current_priority;                
   47c48:	2829 0014      	movel %a1@(20),%d4                          
    if ( priority <= search_priority )                                
   47c4c:	b880           	cmpl %d0,%d4                                
   47c4e:	641a           	bccs 47c6a <_Thread_queue_Enqueue_priority+0x7a>
      break;                                                          
    search_priority = search_thread->current_priority;                
    if ( priority <= search_priority )                                
      break;                                                          
#endif                                                                
    _ISR_Flash( level );                                              
   47c50:	2c0b           	movel %a3,%d6                               
   47c52:	46c2           	movew %d2,%sr                               
   47c54:	8c82           	orl %d2,%d6                                 
   47c56:	46c6           	movew %d6,%sr                               
RTEMS_INLINE_ROUTINE bool _States_Are_set (                           
  States_Control the_states,                                          
  States_Control mask                                                 
)                                                                     
{                                                                     
   return ( (the_states & mask) != STATES_READY);                     
   47c58:	2c05           	movel %d5,%d6                               
   47c5a:	cca9 0010      	andl %a1@(16),%d6                           
    if ( !_States_Are_set( search_thread->current_state, block_state) ) {
   47c5e:	6604           	bnes 47c64 <_Thread_queue_Enqueue_priority+0x74><== ALWAYS TAKEN
      _ISR_Enable( level );                                           
   47c60:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
      goto restart_forward_search;                                    
   47c62:	60d2           	bras 47c36 <_Thread_queue_Enqueue_priority+0x46><== NOT EXECUTED
    }                                                                 
    search_thread =                                                   
       (Thread_Control *)search_thread->Object.Node.next;             
   47c64:	2251           	moveal %a1@,%a1                             
                                                                      
restart_forward_search:                                               
  search_priority = PRIORITY_MINIMUM - 1;                             
  _ISR_Disable( level );                                              
  search_thread = (Thread_Control *) _Chain_First( header );          
  while ( !_Chain_Is_tail( header, (Chain_Node *)search_thread ) ) {  
   47c66:	b9c9           	cmpal %a1,%a4                               
   47c68:	66de           	bnes 47c48 <_Thread_queue_Enqueue_priority+0x58>
    }                                                                 
    search_thread =                                                   
       (Thread_Control *)search_thread->Object.Node.next;             
  }                                                                   
                                                                      
  if ( the_thread_queue->sync_state !=                                
   47c6a:	7201           	moveq #1,%d1                                
   47c6c:	b2aa 0030      	cmpl %a2@(48),%d1                           
   47c70:	6600 00b8      	bnew 47d2a <_Thread_queue_Enqueue_priority+0x13a>
       THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED )                   
    goto synchronize;                                                 
                                                                      
  the_thread_queue->sync_state = THREAD_BLOCKING_OPERATION_SYNCHRONIZED;
   47c74:	42aa 0030      	clrl %a2@(48)                               
                                                                      
  if ( priority == search_priority )                                  
   47c78:	b880           	cmpl %d0,%d4                                
   47c7a:	6700 0092      	beqw 47d0e <_Thread_queue_Enqueue_priority+0x11e>
    goto equal_priority;                                              
                                                                      
  search_node   = (Chain_Node *) search_thread;                       
  previous_node = search_node->previous;                              
   47c7e:	2669 0004      	moveal %a1@(4),%a3                          
  the_node      = (Chain_Node *) the_thread;                          
                                                                      
  the_node->next         = search_node;                               
   47c82:	2089           	movel %a1,%a0@                              
  the_node->previous     = previous_node;                             
   47c84:	214b 0004      	movel %a3,%a0@(4)                           
  previous_node->next    = the_node;                                  
   47c88:	2688           	movel %a0,%a3@                              
  search_node->previous  = the_node;                                  
   47c8a:	2348 0004      	movel %a0,%a1@(4)                           
  the_thread->Wait.queue = the_thread_queue;                          
   47c8e:	214a 0044      	movel %a2,%a0@(68)                          
  _ISR_Enable( level );                                               
   47c92:	46c2           	movew %d2,%sr                               
   47c94:	6074           	bras 47d0a <_Thread_queue_Enqueue_priority+0x11a>
   *                                                                  
   *  WARNING! Returning with interrupts disabled!                    
   */                                                                 
  *level_p = level;                                                   
  return the_thread_queue->sync_state;                                
}                                                                     
   47c96:	2401           	movel %d1,%d2                               
   47c98:	280a           	movel %a2,%d4                               
  return THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;                  
                                                                      
restart_reverse_search:                                               
  search_priority     = PRIORITY_MAXIMUM + 1;                         
                                                                      
  _ISR_Disable( level );                                              
   47c9a:	367c 0700      	moveaw #1792,%a3                            
   *                                                                  
   *  WARNING! Returning with interrupts disabled!                    
   */                                                                 
  *level_p = level;                                                   
  return the_thread_queue->sync_state;                                
}                                                                     
   47c9e:	e58a           	lsll #2,%d2                                 
   47ca0:	e989           	lsll #4,%d1                                 
   47ca2:	9282           	subl %d2,%d1                                
   47ca4:	d881           	addl %d1,%d4                                
   47ca6:	2844           	moveal %d4,%a4                              
   47ca8:	508c           	addql #8,%a4                                
  the_thread->Wait.queue = the_thread_queue;                          
  _ISR_Enable( level );                                               
  return THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;                  
                                                                      
restart_reverse_search:                                               
  search_priority     = PRIORITY_MAXIMUM + 1;                         
   47caa:	4282           	clrl %d2                                    
   47cac:	1439 0005 ae92 	moveb 5ae92 <rtems_maximum_priority>,%d2    
                                                                      
  _ISR_Disable( level );                                              
   47cb2:	260b           	movel %a3,%d3                               
  the_thread->Wait.queue = the_thread_queue;                          
  _ISR_Enable( level );                                               
  return THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;                  
                                                                      
restart_reverse_search:                                               
  search_priority     = PRIORITY_MAXIMUM + 1;                         
   47cb4:	5282           	addql #1,%d2                                
                                                                      
  _ISR_Disable( level );                                              
   47cb6:	40c1           	movew %sr,%d1                               
   47cb8:	8681           	orl %d1,%d3                                 
   47cba:	46c3           	movew %d3,%sr                               
   47cbc:	2601           	movel %d1,%d3                               
  search_thread = (Thread_Control *) _Chain_Last( header );           
   47cbe:	2254           	moveal %a4@,%a1                             
  while ( !_Chain_Is_head( header, (Chain_Node *)search_thread ) ) {  
   47cc0:	6020           	bras 47ce2 <_Thread_queue_Enqueue_priority+0xf2>
    search_priority = search_thread->current_priority;                
   47cc2:	2429 0014      	movel %a1@(20),%d2                          
    if ( priority >= search_priority )                                
   47cc6:	b480           	cmpl %d0,%d2                                
   47cc8:	631c           	blss 47ce6 <_Thread_queue_Enqueue_priority+0xf6><== ALWAYS TAKEN
      break;                                                          
    search_priority = search_thread->current_priority;                
    if ( priority >= search_priority )                                
      break;                                                          
#endif                                                                
    _ISR_Flash( level );                                              
   47cca:	2c0b           	movel %a3,%d6                               <== NOT EXECUTED
   47ccc:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
   47cce:	8c81           	orl %d1,%d6                                 <== NOT EXECUTED
   47cd0:	46c6           	movew %d6,%sr                               <== NOT EXECUTED
   47cd2:	2c05           	movel %d5,%d6                               <== NOT EXECUTED
   47cd4:	cca9 0010      	andl %a1@(16),%d6                           <== NOT EXECUTED
    if ( !_States_Are_set( search_thread->current_state, block_state) ) {
   47cd8:	6604           	bnes 47cde <_Thread_queue_Enqueue_priority+0xee><== NOT EXECUTED
      _ISR_Enable( level );                                           
   47cda:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
      goto restart_reverse_search;                                    
   47cdc:	60cc           	bras 47caa <_Thread_queue_Enqueue_priority+0xba><== NOT EXECUTED
    }                                                                 
    search_thread = (Thread_Control *)                                
                         search_thread->Object.Node.previous;         
   47cde:	2269 0004      	moveal %a1@(4),%a1                          <== NOT EXECUTED
restart_reverse_search:                                               
  search_priority     = PRIORITY_MAXIMUM + 1;                         
                                                                      
  _ISR_Disable( level );                                              
  search_thread = (Thread_Control *) _Chain_Last( header );           
  while ( !_Chain_Is_head( header, (Chain_Node *)search_thread ) ) {  
   47ce2:	b889           	cmpl %a1,%d4                                
   47ce4:	66dc           	bnes 47cc2 <_Thread_queue_Enqueue_priority+0xd2>
    }                                                                 
    search_thread = (Thread_Control *)                                
                         search_thread->Object.Node.previous;         
  }                                                                   
                                                                      
  if ( the_thread_queue->sync_state !=                                
   47ce6:	7801           	moveq #1,%d4                                
   47ce8:	b8aa 0030      	cmpl %a2@(48),%d4                           
   47cec:	663c           	bnes 47d2a <_Thread_queue_Enqueue_priority+0x13a><== NEVER TAKEN
       THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED )                   
    goto synchronize;                                                 
                                                                      
  the_thread_queue->sync_state = THREAD_BLOCKING_OPERATION_SYNCHRONIZED;
   47cee:	42aa 0030      	clrl %a2@(48)                               
                                                                      
  if ( priority == search_priority )                                  
   47cf2:	b480           	cmpl %d0,%d2                                
   47cf4:	6718           	beqs 47d0e <_Thread_queue_Enqueue_priority+0x11e><== NEVER TAKEN
    goto equal_priority;                                              
                                                                      
  search_node = (Chain_Node *) search_thread;                         
  next_node   = search_node->next;                                    
   47cf6:	2651           	moveal %a1@,%a3                             
  the_node    = (Chain_Node *) the_thread;                            
                                                                      
  the_node->next          = next_node;                                
  the_node->previous      = search_node;                              
   47cf8:	2149 0004      	movel %a1,%a0@(4)                           
                                                                      
  search_node = (Chain_Node *) search_thread;                         
  next_node   = search_node->next;                                    
  the_node    = (Chain_Node *) the_thread;                            
                                                                      
  the_node->next          = next_node;                                
   47cfc:	208b           	movel %a3,%a0@                              
  the_node->previous      = search_node;                              
  search_node->next       = the_node;                                 
  next_node->previous    = the_node;                                  
   47cfe:	2748 0004      	movel %a0,%a3@(4)                           
  next_node   = search_node->next;                                    
  the_node    = (Chain_Node *) the_thread;                            
                                                                      
  the_node->next          = next_node;                                
  the_node->previous      = search_node;                              
  search_node->next       = the_node;                                 
   47d02:	2288           	movel %a0,%a1@                              
  next_node->previous    = the_node;                                  
  the_thread->Wait.queue = the_thread_queue;                          
   47d04:	214a 0044      	movel %a2,%a0@(68)                          
  _ISR_Enable( level );                                               
   47d08:	46c1           	movew %d1,%sr                               
  return THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;                  
   47d0a:	7001           	moveq #1,%d0                                
   47d0c:	6026           	bras 47d34 <_Thread_queue_Enqueue_priority+0x144>
                                                                      
equal_priority:               /* add at end of priority group */      
  search_node   = _Chain_Tail( &search_thread->Wait.Block2n );        
   47d0e:	49e9 003c      	lea %a1@(60),%a4                            <== NOT EXECUTED
  previous_node = search_node->previous;                              
   47d12:	2669 0040      	moveal %a1@(64),%a3                         <== NOT EXECUTED
  the_thread->Wait.queue = the_thread_queue;                          
  _ISR_Enable( level );                                               
  return THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;                  
                                                                      
equal_priority:               /* add at end of priority group */      
  search_node   = _Chain_Tail( &search_thread->Wait.Block2n );        
   47d16:	208c           	movel %a4,%a0@                              <== NOT EXECUTED
  previous_node = search_node->previous;                              
  the_node      = (Chain_Node *) the_thread;                          
                                                                      
  the_node->next         = search_node;                               
  the_node->previous     = previous_node;                             
   47d18:	214b 0004      	movel %a3,%a0@(4)                           <== NOT EXECUTED
  previous_node->next    = the_node;                                  
   47d1c:	2688           	movel %a0,%a3@                              <== NOT EXECUTED
  search_node->previous  = the_node;                                  
   47d1e:	2348 0040      	movel %a0,%a1@(64)                          <== NOT EXECUTED
  the_thread->Wait.queue = the_thread_queue;                          
   47d22:	214a 0044      	movel %a2,%a0@(68)                          <== NOT EXECUTED
  _ISR_Enable( level );                                               
   47d26:	46c3           	movew %d3,%sr                               <== NOT EXECUTED
   47d28:	60e0           	bras 47d0a <_Thread_queue_Enqueue_priority+0x11a><== NOT EXECUTED
   *  For example, the blocking thread could have been given          
   *  the mutex by an ISR or timed out.                               
   *                                                                  
   *  WARNING! Returning with interrupts disabled!                    
   */                                                                 
  *level_p = level;                                                   
   47d2a:	206e 0010      	moveal %fp@(16),%a0                         <== NOT EXECUTED
  return the_thread_queue->sync_state;                                
   47d2e:	202a 0030      	movel %a2@(48),%d0                          <== NOT EXECUTED
   *  For example, the blocking thread could have been given          
   *  the mutex by an ISR or timed out.                               
   *                                                                  
   *  WARNING! Returning with interrupts disabled!                    
   */                                                                 
  *level_p = level;                                                   
   47d32:	2083           	movel %d3,%a0@                              <== NOT EXECUTED
  return the_thread_queue->sync_state;                                
}                                                                     
   47d34:	4cd7 1c7c      	moveml %sp@,%d2-%d6/%a2-%a4                 
   47d38:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00047b58 <_Thread_queue_Enqueue_with_handler>: void _Thread_queue_Enqueue_with_handler( Thread_queue_Control *the_thread_queue, Watchdog_Interval timeout, Thread_queue_Timeout_callout handler ) {
   47b58:	4e56 fff0      	linkw %fp,#-16                              
   47b5c:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     
   47b60:	266e 0008      	moveal %fp@(8),%a3                          
  else                                                                
#endif                                                                
  /*                                                                  
   *  Set the blocking state for this thread queue in the thread.     
   */                                                                 
  _Thread_Set_state( the_thread, the_thread_queue->state );           
   47b64:	2f2b 0038      	movel %a3@(56),%sp@-                        
    Thread_queue_Control *,                                           
    Thread_Control *,                                                 
    ISR_Level *                                                       
  );                                                                  
                                                                      
  the_thread = _Thread_Executing;                                     
   47b68:	2479 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a2 
void _Thread_queue_Enqueue_with_handler(                              
  Thread_queue_Control         *the_thread_queue,                     
  Watchdog_Interval             timeout,                              
  Thread_queue_Timeout_callout  handler                               
)                                                                     
{                                                                     
   47b6e:	242e 000c      	movel %fp@(12),%d2                          
  else                                                                
#endif                                                                
  /*                                                                  
   *  Set the blocking state for this thread queue in the thread.     
   */                                                                 
  _Thread_Set_state( the_thread, the_thread_queue->state );           
   47b72:	2f0a           	movel %a2,%sp@-                             
   47b74:	4eb9 0004 7ecc 	jsr 47ecc <_Thread_Set_state>               
                                                                      
  /*                                                                  
   *  If the thread wants to timeout, then schedule its timer.        
   */                                                                 
  if ( timeout ) {                                                    
   47b7a:	508f           	addql #8,%sp                                
   47b7c:	4a82           	tstl %d2                                    
   47b7e:	672c           	beqs 47bac <_Thread_queue_Enqueue_with_handler+0x54><== ALWAYS TAKEN
    _Watchdog_Initialize(                                             
   47b80:	202a 0008      	movel %a2@(8),%d0                           <== NOT EXECUTED
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
  the_watchdog->routine   = routine;                                  
   47b84:	256e 0010 0064 	movel %fp@(16),%a2@(100)                    <== NOT EXECUTED
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   47b8a:	42aa 0050      	clrl %a2@(80)                               <== NOT EXECUTED
  the_watchdog->routine   = routine;                                  
  the_watchdog->id        = id;                                       
   47b8e:	2540 0068      	movel %d0,%a2@(104)                         <== NOT EXECUTED
  the_watchdog->user_data = user_data;                                
   47b92:	42aa 006c      	clrl %a2@(108)                              <== NOT EXECUTED
  Watchdog_Control      *the_watchdog,                                
  Watchdog_Interval      units                                        
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
   47b96:	2542 0054      	movel %d2,%a2@(84)                          <== NOT EXECUTED
                                                                      
  _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );           
   47b9a:	486a 0048      	pea %a2@(72)                                <== NOT EXECUTED
   47b9e:	4879 0005 c7a8 	pea 5c7a8 <_Watchdog_Ticks_chain>           <== NOT EXECUTED
   47ba4:	4eb9 0004 8440 	jsr 48440 <_Watchdog_Insert>                <== NOT EXECUTED
   47baa:	508f           	addql #8,%sp                                <== NOT EXECUTED
   *  Now enqueue the thread per the discipline for this thread queue.
   */                                                                 
  if ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY )
    enqueue_p = _Thread_queue_Enqueue_priority;                       
  else /* must be THREAD_QUEUE_DISCIPLINE_FIFO */                     
    enqueue_p = _Thread_queue_Enqueue_fifo;                           
   47bac:	41f9 0004 a66c 	lea 4a66c <_Thread_queue_Enqueue_fifo>,%a0  
  }                                                                   
                                                                      
  /*                                                                  
   *  Now enqueue the thread per the discipline for this thread queue.
   */                                                                 
  if ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY )
   47bb2:	7001           	moveq #1,%d0                                
   47bb4:	b0ab 0034      	cmpl %a3@(52),%d0                           
   47bb8:	6606           	bnes 47bc0 <_Thread_queue_Enqueue_with_handler+0x68><== NEVER TAKEN
    enqueue_p = _Thread_queue_Enqueue_priority;                       
   47bba:	41f9 0004 7bf0 	lea 47bf0 <_Thread_queue_Enqueue_priority>,%a0
  else /* must be THREAD_QUEUE_DISCIPLINE_FIFO */                     
    enqueue_p = _Thread_queue_Enqueue_fifo;                           
                                                                      
  sync_state = (*enqueue_p)( the_thread_queue, the_thread, &level );  
   47bc0:	486e fffc      	pea %fp@(-4)                                
   47bc4:	2f0a           	movel %a2,%sp@-                             
   47bc6:	2f0b           	movel %a3,%sp@-                             
   47bc8:	4e90           	jsr %a0@                                    
  if ( sync_state != THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED )     
   47bca:	4fef 000c      	lea %sp@(12),%sp                            
   47bce:	7201           	moveq #1,%d1                                
   47bd0:	b280           	cmpl %d0,%d1                                
   47bd2:	6712           	beqs 47be6 <_Thread_queue_Enqueue_with_handler+0x8e><== ALWAYS TAKEN
    _Thread_blocking_operation_Cancel( sync_state, the_thread, level );
   47bd4:	2f2e fffc      	movel %fp@(-4),%sp@-                        <== NOT EXECUTED
   47bd8:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   47bda:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   47bdc:	4eb9 0004 7234 	jsr 47234 <_Thread_blocking_operation_Cancel><== NOT EXECUTED
   47be2:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
}                                                                     
   47be6:	4cee 0c04 fff0 	moveml %fp@(-16),%d2/%a2-%a3                
   47bec:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004a6c0 <_Thread_queue_Extract>: { /* * Can not use indirect function pointer here since Extract priority * is a macro and the underlying methods do not have the same signature. */ if ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY )
   4a6c0:	7201           	moveq #1,%d1                                <== NOT EXECUTED
                                                                      
void _Thread_queue_Extract(                                           
  Thread_queue_Control *the_thread_queue,                             
  Thread_Control       *the_thread                                    
)                                                                     
{                                                                     
   4a6c2:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4a6c6:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   4a6ca:	202e 000c      	movel %fp@(12),%d0                          <== NOT EXECUTED
  /*                                                                  
   * Can not use indirect function pointer here since Extract priority
   * is a macro and the underlying methods do not have the same signature.
   */                                                                 
  if  ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY )
   4a6ce:	b2a8 0034      	cmpl %a0@(52),%d1                           <== NOT EXECUTED
   4a6d2:	6614           	bnes 4a6e8 <_Thread_queue_Extract+0x28>     <== NOT EXECUTED
    _Thread_queue_Extract_priority( the_thread_queue, the_thread );   
   4a6d4:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4a6d6:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4a6d8:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   4a6da:	4eb9 0004 a6f8 	jsr 4a6f8 <_Thread_queue_Extract_priority_helper><== NOT EXECUTED
   4a6e0:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
  else /* must be THREAD_QUEUE_DISCIPLINE_FIFO */                     
    _Thread_queue_Extract_fifo( the_thread_queue, the_thread );       
                                                                      
}                                                                     
   4a6e4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4a6e6:	4e75           	rts                                         <== NOT EXECUTED
   * is a macro and the underlying methods do not have the same signature.
   */                                                                 
  if  ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY )
    _Thread_queue_Extract_priority( the_thread_queue, the_thread );   
  else /* must be THREAD_QUEUE_DISCIPLINE_FIFO */                     
    _Thread_queue_Extract_fifo( the_thread_queue, the_thread );       
   4a6e8:	2d40 000c      	movel %d0,%fp@(12)                          <== NOT EXECUTED
   4a6ec:	2d48 0008      	movel %a0,%fp@(8)                           <== NOT EXECUTED
                                                                      
}                                                                     
   4a6f0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   * is a macro and the underlying methods do not have the same signature.
   */                                                                 
  if  ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY )
    _Thread_queue_Extract_priority( the_thread_queue, the_thread );   
  else /* must be THREAD_QUEUE_DISCIPLINE_FIFO */                     
    _Thread_queue_Extract_fifo( the_thread_queue, the_thread );       
   4a6f2:	4ef9 0004 ba64 	jmp 4ba64 <_Thread_queue_Extract_fifo>      <== NOT EXECUTED
                                                                      

0004ba64 <_Thread_queue_Extract_fifo>: Thread_Control *the_thread ) { ISR_Level level; _ISR_Disable( level );
   4ba64:	223c 0000 0700 	movel #1792,%d1                             <== NOT EXECUTED
                                                                      
void _Thread_queue_Extract_fifo(                                      
  Thread_queue_Control *the_thread_queue __attribute__((unused)),     
  Thread_Control       *the_thread                                    
)                                                                     
{                                                                     
   4ba6a:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4ba6e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4ba70:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
  ISR_Level level;                                                    
                                                                      
  _ISR_Disable( level );                                              
   4ba74:	40c0           	movew %sr,%d0                               <== NOT EXECUTED
   4ba76:	8280           	orl %d0,%d1                                 <== NOT EXECUTED
   4ba78:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
   4ba7a:	222a 0010      	movel %a2@(16),%d1                          <== NOT EXECUTED
   4ba7e:	0281 0003 bee0 	andil #245472,%d1                           <== NOT EXECUTED
                                                                      
  if ( !_States_Is_waiting_on_thread_queue( the_thread->current_state ) ) {
   4ba84:	660a           	bnes 4ba90 <_Thread_queue_Extract_fifo+0x2c><== NOT EXECUTED
    _ISR_Enable( level );                                             
   4ba86:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
                                                                      
}                                                                     
   4ba88:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   4ba8c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4ba8e:	4e75           	rts                                         <== NOT EXECUTED
)                                                                     
{                                                                     
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
   4ba90:	2252           	moveal %a2@,%a1                             <== NOT EXECUTED
                                                                      
  _Chain_Extract_unprotected( &the_thread->Object.Node );             
                                                                      
  the_thread->Wait.queue = NULL;                                      
                                                                      
  if ( !_Watchdog_Is_active( &the_thread->Timer ) ) {                 
   4ba92:	7202           	moveq #2,%d1                                <== NOT EXECUTED
  previous       = the_node->previous;                                
   4ba94:	206a 0004      	moveal %a2@(4),%a0                          <== NOT EXECUTED
  next->previous = previous;                                          
   4ba98:	2348 0004      	movel %a0,%a1@(4)                           <== NOT EXECUTED
  previous->next = next;                                              
   4ba9c:	2089           	movel %a1,%a0@                              <== NOT EXECUTED
    return;                                                           
  }                                                                   
                                                                      
  _Chain_Extract_unprotected( &the_thread->Object.Node );             
                                                                      
  the_thread->Wait.queue = NULL;                                      
   4ba9e:	42aa 0044      	clrl %a2@(68)                               <== NOT EXECUTED
                                                                      
  if ( !_Watchdog_Is_active( &the_thread->Timer ) ) {                 
   4baa2:	b2aa 0050      	cmpl %a2@(80),%d1                           <== NOT EXECUTED
   4baa6:	6704           	beqs 4baac <_Thread_queue_Extract_fifo+0x48><== NOT EXECUTED
    _ISR_Enable( level );                                             
   4baa8:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
   4baaa:	6014           	bras 4bac0 <_Thread_queue_Extract_fifo+0x5c><== NOT EXECUTED
   4baac:	7203           	moveq #3,%d1                                <== NOT EXECUTED
   4baae:	2541 0050      	movel %d1,%a2@(80)                          <== NOT EXECUTED
  } else {                                                            
    _Watchdog_Deactivate( &the_thread->Timer );                       
    _ISR_Enable( level );                                             
   4bab2:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
    (void) _Watchdog_Remove( &the_thread->Timer );                    
   4bab4:	486a 0048      	pea %a2@(72)                                <== NOT EXECUTED
   4bab8:	4eb9 0004 8568 	jsr 48568 <_Watchdog_Remove>                <== NOT EXECUTED
   4babe:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unblock (                           
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
  _Thread_Clear_state( the_thread, STATES_BLOCKED );                  
   4bac0:	2d4a 0008      	movel %a2,%fp@(8)                           <== NOT EXECUTED
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
                                                                      
}                                                                     
   4bac4:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   4bac8:	203c 1003 fff8 	movel #268697592,%d0                        <== NOT EXECUTED
   4bace:	2d40 000c      	movel %d0,%fp@(12)                          <== NOT EXECUTED
   4bad2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4bad4:	4ef9 0004 73c0 	jmp 473c0 <_Thread_Clear_state>             <== NOT EXECUTED
	...                                                                  
                                                                      

0004a6f8 <_Thread_queue_Extract_priority_helper>: Chain_Node *new_first_node; Chain_Node *new_second_node; Chain_Node *last_node; the_node = (Chain_Node *) the_thread; _ISR_Disable( level );
   4a6f8:	223c 0000 0700 	movel #1792,%d1                             
void _Thread_queue_Extract_priority_helper(                           
  Thread_queue_Control *the_thread_queue __attribute__((unused)),     
  Thread_Control       *the_thread,                                   
  bool                  requeuing                                     
)                                                                     
{                                                                     
   4a6fe:	4e56 ffec      	linkw %fp,#-20                              
   4a702:	48d7 3c04      	moveml %d2/%a2-%a5,%sp@                     
   4a706:	246e 000c      	moveal %fp@(12),%a2                         
   4a70a:	142e 0013      	moveb %fp@(19),%d2                          
  Chain_Node     *new_first_node;                                     
  Chain_Node     *new_second_node;                                    
  Chain_Node     *last_node;                                          
                                                                      
  the_node = (Chain_Node *) the_thread;                               
  _ISR_Disable( level );                                              
   4a70e:	40c0           	movew %sr,%d0                               
   4a710:	8280           	orl %d0,%d1                                 
   4a712:	46c1           	movew %d1,%sr                               
 */                                                                   
RTEMS_INLINE_ROUTINE bool _States_Is_waiting_on_thread_queue (        
  States_Control the_states                                           
)                                                                     
{                                                                     
   return (the_states & STATES_WAITING_ON_THREAD_QUEUE);              
   4a714:	222a 0010      	movel %a2@(16),%d1                          
   4a718:	0281 0003 bee0 	andil #245472,%d1                           
  if ( !_States_Is_waiting_on_thread_queue( the_thread->current_state ) ) {
   4a71e:	6606           	bnes 4a726 <_Thread_queue_Extract_priority_helper+0x2e><== ALWAYS TAKEN
    _ISR_Enable( level );                                             
   4a720:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
    return;                                                           
   4a722:	6000 0096      	braw 4a7ba <_Thread_queue_Extract_priority_helper+0xc2><== NOT EXECUTED
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  const Chain_Control *the_chain                                      
)                                                                     
{                                                                     
  return _Chain_Immutable_first( the_chain )                          
    == _Chain_Immutable_tail( the_chain );                            
   4a726:	220a           	movel %a2,%d1                               
   4a728:	0681 0000 003c 	addil #60,%d1                               
                                                                      
  /*                                                                  
   *  The thread was actually waiting on a thread queue so let's remove it.
   */                                                                 
                                                                      
  next_node     = the_node->next;                                     
   4a72e:	2252           	moveal %a2@,%a1                             
  previous_node = the_node->previous;                                 
   4a730:	266a 0004      	moveal %a2@(4),%a3                          
                                                                      
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
}                                                                     
   4a734:	206a 0038      	moveal %a2@(56),%a0                         
   */                                                                 
                                                                      
  next_node     = the_node->next;                                     
  previous_node = the_node->previous;                                 
                                                                      
  if ( !_Chain_Is_empty( &the_thread->Wait.Block2n ) ) {              
   4a738:	b288           	cmpl %a0,%d1                                
   4a73a:	6734           	beqs 4a770 <_Thread_queue_Extract_priority_helper+0x78><== ALWAYS TAKEN
                                                                      
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
}                                                                     
   4a73c:	286a 0040      	moveal %a2@(64),%a4                         <== NOT EXECUTED
                                                                      
  if ( !_Chain_Is_empty( &the_thread->Wait.Block2n ) ) {              
    new_first_node   = _Chain_First( &the_thread->Wait.Block2n );     
    new_first_thread = (Thread_Control *) new_first_node;             
    last_node        = _Chain_Last( &the_thread->Wait.Block2n );      
    new_second_node  = new_first_node->next;                          
   4a740:	2a50           	moveal %a0@,%a5                             <== NOT EXECUTED
                                                                      
    previous_node->next      = new_first_node;                        
    next_node->previous      = new_first_node;                        
   4a742:	2348 0004      	movel %a0,%a1@(4)                           <== NOT EXECUTED
    new_first_node   = _Chain_First( &the_thread->Wait.Block2n );     
    new_first_thread = (Thread_Control *) new_first_node;             
    last_node        = _Chain_Last( &the_thread->Wait.Block2n );      
    new_second_node  = new_first_node->next;                          
                                                                      
    previous_node->next      = new_first_node;                        
   4a746:	2688           	movel %a0,%a3@                              <== NOT EXECUTED
    next_node->previous      = new_first_node;                        
    new_first_node->next     = next_node;                             
    new_first_node->previous = previous_node;                         
   4a748:	214b 0004      	movel %a3,%a0@(4)                           <== NOT EXECUTED
    last_node        = _Chain_Last( &the_thread->Wait.Block2n );      
    new_second_node  = new_first_node->next;                          
                                                                      
    previous_node->next      = new_first_node;                        
    next_node->previous      = new_first_node;                        
    new_first_node->next     = next_node;                             
   4a74c:	2089           	movel %a1,%a0@                              <== NOT EXECUTED
    new_first_node->previous = previous_node;                         
                                                                      
    if ( !_Chain_Has_only_one_node( &the_thread->Wait.Block2n ) ) {   
   4a74e:	222a 0040      	movel %a2@(64),%d1                          <== NOT EXECUTED
   4a752:	b2aa 0038      	cmpl %a2@(56),%d1                           <== NOT EXECUTED
   4a756:	671e           	beqs 4a776 <_Thread_queue_Extract_priority_helper+0x7e><== NOT EXECUTED
                                        /* > two threads on 2-n */    
      head = _Chain_Head( &new_first_thread->Wait.Block2n );          
   4a758:	43e8 0038      	lea %a0@(56),%a1                            <== NOT EXECUTED
   4a75c:	2b49 0004      	movel %a1,%a5@(4)                           <== NOT EXECUTED
      tail = _Chain_Tail( &new_first_thread->Wait.Block2n );          
                                                                      
      new_second_node->previous = head;                               
      head->next = new_second_node;                                   
   4a760:	214d 0038      	movel %a5,%a0@(56)                          <== NOT EXECUTED
      tail->previous = last_node;                                     
   4a764:	214c 0040      	movel %a4,%a0@(64)                          <== NOT EXECUTED
    new_first_node->previous = previous_node;                         
                                                                      
    if ( !_Chain_Has_only_one_node( &the_thread->Wait.Block2n ) ) {   
                                        /* > two threads on 2-n */    
      head = _Chain_Head( &new_first_thread->Wait.Block2n );          
      tail = _Chain_Tail( &new_first_thread->Wait.Block2n );          
   4a768:	41e8 003c      	lea %a0@(60),%a0                            <== NOT EXECUTED
   4a76c:	2888           	movel %a0,%a4@                              <== NOT EXECUTED
   4a76e:	6006           	bras 4a776 <_Thread_queue_Extract_priority_helper+0x7e><== NOT EXECUTED
      head->next = new_second_node;                                   
      tail->previous = last_node;                                     
      last_node->next = tail;                                         
    }                                                                 
  } else {                                                            
    previous_node->next = next_node;                                  
   4a770:	2689           	movel %a1,%a3@                              
    next_node->previous = previous_node;                              
   4a772:	234b 0004      	movel %a3,%a1@(4)                           
                                                                      
  /*                                                                  
   *  If we are not supposed to touch timers or the thread's state, return.
   */                                                                 
                                                                      
  if ( requeuing ) {                                                  
   4a776:	4a02           	tstb %d2                                    
   4a778:	6704           	beqs 4a77e <_Thread_queue_Extract_priority_helper+0x86><== NEVER TAKEN
    _ISR_Enable( level );                                             
   4a77a:	46c0           	movew %d0,%sr                               
   4a77c:	603c           	bras 4a7ba <_Thread_queue_Extract_priority_helper+0xc2>
    return;                                                           
  }                                                                   
                                                                      
  if ( !_Watchdog_Is_active( &the_thread->Timer ) ) {                 
   4a77e:	7202           	moveq #2,%d1                                <== NOT EXECUTED
   4a780:	b2aa 0050      	cmpl %a2@(80),%d1                           <== NOT EXECUTED
   4a784:	6704           	beqs 4a78a <_Thread_queue_Extract_priority_helper+0x92><== NOT EXECUTED
    _ISR_Enable( level );                                             
   4a786:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
   4a788:	6014           	bras 4a79e <_Thread_queue_Extract_priority_helper+0xa6><== NOT EXECUTED
   4a78a:	7203           	moveq #3,%d1                                <== NOT EXECUTED
   4a78c:	2541 0050      	movel %d1,%a2@(80)                          <== NOT EXECUTED
  } else {                                                            
    _Watchdog_Deactivate( &the_thread->Timer );                       
    _ISR_Enable( level );                                             
   4a790:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
    (void) _Watchdog_Remove( &the_thread->Timer );                    
   4a792:	486a 0048      	pea %a2@(72)                                <== NOT EXECUTED
   4a796:	4eb9 0004 8568 	jsr 48568 <_Watchdog_Remove>                <== NOT EXECUTED
   4a79c:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4a79e:	2d4a 0008      	movel %a2,%fp@(8)                           <== NOT EXECUTED
   4a7a2:	227c 1003 fff8 	moveal #268697592,%a1                       <== NOT EXECUTED
                                                                      
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
}                                                                     
   4a7a8:	4cee 3c04 ffec 	moveml %fp@(-20),%d2/%a2-%a5                <== NOT EXECUTED
   4a7ae:	2d49 000c      	movel %a1,%fp@(12)                          <== NOT EXECUTED
   4a7b2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4a7b4:	4ef9 0004 73c0 	jmp 473c0 <_Thread_Clear_state>             <== NOT EXECUTED
   4a7ba:	4cee 3c04 ffec 	moveml %fp@(-20),%d2/%a2-%a5                
   4a7c0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00047d3c <_Thread_queue_Extract_with_proxy>: */ bool _Thread_queue_Extract_with_proxy( Thread_Control *the_thread ) {
   47d3c:	4e56 0000      	linkw %fp,#0                                
   47d40:	206e 0008      	moveal %fp@(8),%a0                          
 */                                                                   
RTEMS_INLINE_ROUTINE bool _States_Is_waiting_on_thread_queue (        
  States_Control the_states                                           
)                                                                     
{                                                                     
   return (the_states & STATES_WAITING_ON_THREAD_QUEUE);              
   47d44:	2028 0010      	movel %a0@(16),%d0                          
   47d48:	0280 0003 bee0 	andil #245472,%d0                           
  States_Control                state;                                
                                                                      
  state = the_thread->current_state;                                  
                                                                      
  if ( _States_Is_waiting_on_thread_queue( state ) ) {                
   47d4e:	6712           	beqs 47d62 <_Thread_queue_Extract_with_proxy+0x26><== ALWAYS TAKEN
                                                                      
        if ( proxy_extract_callout )                                  
          (*proxy_extract_callout)( the_thread );                     
      }                                                               
    #endif                                                            
    _Thread_queue_Extract( the_thread->Wait.queue, the_thread );      
   47d50:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   47d52:	2f28 0044      	movel %a0@(68),%sp@-                        <== NOT EXECUTED
   47d56:	4eb9 0004 a6c0 	jsr 4a6c0 <_Thread_queue_Extract>           <== NOT EXECUTED
                                                                      
    return true;                                                      
   47d5c:	508f           	addql #8,%sp                                <== NOT EXECUTED
   47d5e:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   47d60:	6002           	bras 47d64 <_Thread_queue_Extract_with_proxy+0x28><== NOT EXECUTED
  }                                                                   
  return false;                                                       
   47d62:	4200           	clrb %d0                                    
}                                                                     
   47d64:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00057d80 <_Thread_queue_First>: Thread_Control * (*first_p)(Thread_queue_Control *); if ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY ) first_p = _Thread_queue_First_priority; else /* must be THREAD_QUEUE_DISCIPLINE_FIFO */ first_p = _Thread_queue_First_fifo;
   57d80:	43f9 0005 8ef0 	lea 58ef0 <_Thread_queue_First_fifo>,%a1    <== NOT EXECUTED
  Thread_queue_Control *the_thread_queue                              
)                                                                     
{                                                                     
  Thread_Control * (*first_p)(Thread_queue_Control *);                
                                                                      
  if ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY )
   57d86:	7001           	moveq #1,%d0                                <== NOT EXECUTED
 */                                                                   
                                                                      
Thread_Control *_Thread_queue_First(                                  
  Thread_queue_Control *the_thread_queue                              
)                                                                     
{                                                                     
   57d88:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   57d8c:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
  Thread_Control * (*first_p)(Thread_queue_Control *);                
                                                                      
  if ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY )
   57d90:	b0a8 0034      	cmpl %a0@(52),%d0                           <== NOT EXECUTED
   57d94:	6606           	bnes 57d9c <_Thread_queue_First+0x1c>       <== NOT EXECUTED
      first_p = _Thread_queue_First_priority;                         
   57d96:	43f9 0005 7da4 	lea 57da4 <_Thread_queue_First_priority>,%a1<== NOT EXECUTED
  else /* must be THREAD_QUEUE_DISCIPLINE_FIFO */                     
      first_p = _Thread_queue_First_fifo;                             
                                                                      
  return (*first_p)( the_thread_queue );                              
   57d9c:	2d48 0008      	movel %a0,%fp@(8)                           <== NOT EXECUTED
}                                                                     
   57da0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  if ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY )
      first_p = _Thread_queue_First_priority;                         
  else /* must be THREAD_QUEUE_DISCIPLINE_FIFO */                     
      first_p = _Thread_queue_First_fifo;                             
                                                                      
  return (*first_p)( the_thread_queue );                              
   57da2:	4ed1           	jmp %a1@                                    <== NOT EXECUTED
                                                                      

00058ef0 <_Thread_queue_First_fifo>: */ Thread_Control *_Thread_queue_First_fifo( Thread_queue_Control *the_thread_queue ) {
   58ef0:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  if ( !_Chain_Is_empty( &the_thread_queue->Queues.Fifo ) )           
    return (Thread_Control *) _Chain_First( &the_thread_queue->Queues.Fifo );
                                                                      
  return NULL;                                                        
}                                                                     
   58ef4:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   58ef8:	2018           	movel %a0@+,%d0                             <== NOT EXECUTED
                                                                      
Thread_Control *_Thread_queue_First_fifo(                             
  Thread_queue_Control *the_thread_queue                              
)                                                                     
{                                                                     
  if ( !_Chain_Is_empty( &the_thread_queue->Queues.Fifo ) )           
   58efa:	b1c0           	cmpal %d0,%a0                               <== NOT EXECUTED
   58efc:	6602           	bnes 58f00 <_Thread_queue_First_fifo+0x10>  <== NOT EXECUTED
    return (Thread_Control *) _Chain_First( &the_thread_queue->Queues.Fifo );
                                                                      
  return NULL;                                                        
   58efe:	4280           	clrl %d0                                    <== NOT EXECUTED
}                                                                     
   58f00:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00057da4 <_Thread_queue_First_priority>: Thread_queue_Control *the_thread_queue ) { uint32_t index; for( index=0 ;
   57da4:	4281           	clrl %d1                                    <== NOT EXECUTED
 */                                                                   
                                                                      
Thread_Control *_Thread_queue_First_priority (                        
  Thread_queue_Control *the_thread_queue                              
)                                                                     
{                                                                     
   57da6:	4e56 fff4      	linkw %fp,#-12                              <== NOT EXECUTED
   57daa:	226e 0008      	moveal %fp@(8),%a1                          <== NOT EXECUTED
    if ( !_Chain_Is_empty( &the_thread_queue->Queues.Priority[ index ] ) )
      return (Thread_Control *) _Chain_First(                         
        &the_thread_queue->Queues.Priority[ index ]                   
      );                                                              
  }                                                                   
  return NULL;                                                        
   57dae:	2049           	moveal %a1,%a0                              <== NOT EXECUTED
 */                                                                   
                                                                      
Thread_Control *_Thread_queue_First_priority (                        
  Thread_queue_Control *the_thread_queue                              
)                                                                     
{                                                                     
   57db0:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     <== NOT EXECUTED
   57db4:	2601           	movel %d1,%d3                               <== NOT EXECUTED
   57db6:	2401           	movel %d1,%d2                               <== NOT EXECUTED
   57db8:	e58b           	lsll #2,%d3                                 <== NOT EXECUTED
   57dba:	e98a           	lsll #4,%d2                                 <== NOT EXECUTED
      return (Thread_Control *) _Chain_First(                         
        &the_thread_queue->Queues.Priority[ index ]                   
      );                                                              
  }                                                                   
  return NULL;                                                        
}                                                                     
   57dbc:	2010           	movel %a0@,%d0                              <== NOT EXECUTED
   57dbe:	9483           	subl %d3,%d2                                <== NOT EXECUTED
   57dc0:	45f1 2804      	lea %a1@(00000004,%d2:l),%a2                <== NOT EXECUTED
  uint32_t   index;                                                   
                                                                      
  for( index=0 ;                                                      
       index < TASK_QUEUE_DATA_NUMBER_OF_PRIORITY_HEADERS ;           
       index++ ) {                                                    
    if ( !_Chain_Is_empty( &the_thread_queue->Queues.Priority[ index ] ) )
   57dc4:	b5c0           	cmpal %d0,%a2                               <== NOT EXECUTED
   57dc6:	660e           	bnes 57dd6 <_Thread_queue_First_priority+0x32><== NOT EXECUTED
{                                                                     
  uint32_t   index;                                                   
                                                                      
  for( index=0 ;                                                      
       index < TASK_QUEUE_DATA_NUMBER_OF_PRIORITY_HEADERS ;           
       index++ ) {                                                    
   57dc8:	5281           	addql #1,%d1                                <== NOT EXECUTED
   57dca:	41e8 000c      	lea %a0@(12),%a0                            <== NOT EXECUTED
  Thread_queue_Control *the_thread_queue                              
)                                                                     
{                                                                     
  uint32_t   index;                                                   
                                                                      
  for( index=0 ;                                                      
   57dce:	7004           	moveq #4,%d0                                <== NOT EXECUTED
   57dd0:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   57dd2:	66e0           	bnes 57db4 <_Thread_queue_First_priority+0x10><== NOT EXECUTED
    if ( !_Chain_Is_empty( &the_thread_queue->Queues.Priority[ index ] ) )
      return (Thread_Control *) _Chain_First(                         
        &the_thread_queue->Queues.Priority[ index ]                   
      );                                                              
  }                                                                   
  return NULL;                                                        
   57dd4:	4200           	clrb %d0                                    <== NOT EXECUTED
}                                                                     
   57dd6:	4cd7 040c      	moveml %sp@,%d2-%d3/%a2                     <== NOT EXECUTED
   57dda:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004a7c4 <_Thread_queue_Process_timeout>: #include <rtems/score/tqdata.h> void _Thread_queue_Process_timeout( Thread_Control *the_thread ) {
   4a7c4:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4a7c8:	226e 0008      	moveal %fp@(8),%a1                          <== NOT EXECUTED
  Thread_queue_Control *the_thread_queue = the_thread->Wait.queue;    
   4a7cc:	2069 0044      	moveal %a1@(68),%a0                         <== NOT EXECUTED
   *  If it is not satisfied, then it is "nothing happened" and       
   *  this is the "timeout" transition.  After a request is satisfied,
   *  a timeout is not allowed to occur.                              
   */                                                                 
                                                                      
  if ( the_thread_queue->sync_state != THREAD_BLOCKING_OPERATION_SYNCHRONIZED &&
   4a7d0:	2028 0030      	movel %a0@(48),%d0                          <== NOT EXECUTED
   4a7d4:	671c           	beqs 4a7f2 <_Thread_queue_Process_timeout+0x2e><== NOT EXECUTED
   4a7d6:	b3f9 0005 c884 	cmpal 5c884 <_Per_CPU_Information+0xc>,%a1  <== NOT EXECUTED
   4a7dc:	6614           	bnes 4a7f2 <_Thread_queue_Process_timeout+0x2e><== NOT EXECUTED
       _Thread_Is_executing( the_thread ) ) {                         
    if ( the_thread_queue->sync_state != THREAD_BLOCKING_OPERATION_SATISFIED ) {
   4a7de:	7203           	moveq #3,%d1                                <== NOT EXECUTED
   4a7e0:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   4a7e2:	6720           	beqs 4a804 <_Thread_queue_Process_timeout+0x40><== NOT EXECUTED
      the_thread->Wait.return_code = the_thread->Wait.queue->timeout_status;
      the_thread_queue->sync_state = THREAD_BLOCKING_OPERATION_TIMEOUT;
   4a7e4:	7002           	moveq #2,%d0                                <== NOT EXECUTED
   */                                                                 
                                                                      
  if ( the_thread_queue->sync_state != THREAD_BLOCKING_OPERATION_SYNCHRONIZED &&
       _Thread_Is_executing( the_thread ) ) {                         
    if ( the_thread_queue->sync_state != THREAD_BLOCKING_OPERATION_SATISFIED ) {
      the_thread->Wait.return_code = the_thread->Wait.queue->timeout_status;
   4a7e6:	2368 003c 0034 	movel %a0@(60),%a1@(52)                     <== NOT EXECUTED
      the_thread_queue->sync_state = THREAD_BLOCKING_OPERATION_TIMEOUT;
   4a7ec:	2140 0030      	movel %d0,%a0@(48)                          <== NOT EXECUTED
   4a7f0:	6012           	bras 4a804 <_Thread_queue_Process_timeout+0x40><== NOT EXECUTED
    }                                                                 
  } else {                                                            
    the_thread->Wait.return_code = the_thread->Wait.queue->timeout_status;
   4a7f2:	2368 003c 0034 	movel %a0@(60),%a1@(52)                     <== NOT EXECUTED
    _Thread_queue_Extract( the_thread->Wait.queue, the_thread );      
   4a7f8:	2f09           	movel %a1,%sp@-                             <== NOT EXECUTED
   4a7fa:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   4a7fc:	4eb9 0004 a6c0 	jsr 4a6c0 <_Thread_queue_Extract>           <== NOT EXECUTED
   4a802:	508f           	addql #8,%sp                                <== NOT EXECUTED
  }                                                                   
}                                                                     
   4a804:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00047e08 <_Thread_queue_Requeue>: void _Thread_queue_Requeue( Thread_queue_Control *the_thread_queue, Thread_Control *the_thread ) {
   47e08:	4e56 fff0      	linkw %fp,#-16                              
   47e0c:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     
   47e10:	246e 0008      	moveal %fp@(8),%a2                          
   47e14:	266e 000c      	moveal %fp@(12),%a3                         
  /*                                                                  
   * Just in case the thread really wasn't blocked on a thread queue  
   * when we get here.                                                
   */                                                                 
  if ( !the_thread_queue )                                            
   47e18:	4a8a           	tstl %a2                                    
   47e1a:	6746           	beqs 47e62 <_Thread_queue_Requeue+0x5a>     <== NEVER TAKEN
                                                                      
  /*                                                                  
   * If queueing by FIFO, there is nothing to do. This only applies to
   * priority blocking discipline.                                    
   */                                                                 
  if ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY ) {
   47e1c:	7001           	moveq #1,%d0                                
   47e1e:	b0aa 0034      	cmpl %a2@(52),%d0                           
   47e22:	663e           	bnes 47e62 <_Thread_queue_Requeue+0x5a>     <== NEVER TAKEN
    Thread_queue_Control *tq = the_thread_queue;                      
    ISR_Level             level;                                      
    ISR_Level             level_ignored;                              
                                                                      
    _ISR_Disable( level );                                            
   47e24:	303c 0700      	movew #1792,%d0                             
   47e28:	40c2           	movew %sr,%d2                               
   47e2a:	8082           	orl %d2,%d0                                 
   47e2c:	46c0           	movew %d0,%sr                               
   47e2e:	202b 0010      	movel %a3@(16),%d0                          
   47e32:	0280 0003 bee0 	andil #245472,%d0                           
    if ( _States_Is_waiting_on_thread_queue( the_thread->current_state ) ) {
   47e38:	6726           	beqs 47e60 <_Thread_queue_Requeue+0x58>     <== NEVER TAKEN
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_queue_Enter_critical_section (      
  Thread_queue_Control *the_thread_queue                              
)                                                                     
{                                                                     
  the_thread_queue->sync_state = THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;
   47e3a:	7001           	moveq #1,%d0                                
   47e3c:	2540 0030      	movel %d0,%a2@(48)                          
      _Thread_queue_Enter_critical_section( tq );                     
      _Thread_queue_Extract_priority_helper( tq, the_thread, true );  
   47e40:	4878 0001      	pea 1 <ADD>                                 
   47e44:	2f0b           	movel %a3,%sp@-                             
   47e46:	2f0a           	movel %a2,%sp@-                             
   47e48:	4eb9 0004 a6f8 	jsr 4a6f8 <_Thread_queue_Extract_priority_helper>
      (void) _Thread_queue_Enqueue_priority( tq, the_thread, &level_ignored );
   47e4e:	486e fffc      	pea %fp@(-4)                                
   47e52:	2f0b           	movel %a3,%sp@-                             
   47e54:	2f0a           	movel %a2,%sp@-                             
   47e56:	4eb9 0004 7bf0 	jsr 47bf0 <_Thread_queue_Enqueue_priority>  
   47e5c:	4fef 0018      	lea %sp@(24),%sp                            
    }                                                                 
    _ISR_Enable( level );                                             
   47e60:	46c2           	movew %d2,%sr                               
  }                                                                   
}                                                                     
   47e62:	4cee 0c04 fff0 	moveml %fp@(-16),%d2/%a2-%a3                
   47e68:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00047e6c <_Thread_queue_Timeout>: void _Thread_queue_Timeout( Objects_Id id, void *ignored __attribute__((unused)) ) {
   47e6c:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
  Thread_Control       *the_thread;                                   
  Objects_Locations     location;                                     
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   47e70:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   47e74:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   47e78:	4eb9 0004 7744 	jsr 47744 <_Thread_Get>                     <== NOT EXECUTED
  switch ( location ) {                                               
   47e7e:	508f           	addql #8,%sp                                <== NOT EXECUTED
   47e80:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   47e84:	6618           	bnes 47e9e <_Thread_queue_Timeout+0x32>     <== NOT EXECUTED
#if defined(RTEMS_MULTIPROCESSING)                                    
    case OBJECTS_REMOTE:  /* impossible */                            
#endif                                                                
      break;                                                          
    case OBJECTS_LOCAL:                                               
      _Thread_queue_Process_timeout( the_thread );                    
   47e86:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   47e88:	4eb9 0004 a7c4 	jsr 4a7c4 <_Thread_queue_Process_timeout>   <== NOT EXECUTED
 */                                                                   
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unnest_dispatch( void )             
{                                                                     
  RTEMS_COMPILER_MEMORY_BARRIER();                                    
  _Thread_Dispatch_disable_level -= 1;                                
   47e8e:	588f           	addql #4,%sp                                <== NOT EXECUTED
   47e90:	2039 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   47e96:	5380           	subql #1,%d0                                <== NOT EXECUTED
   47e98:	23c0 0005 c6c8 	movel %d0,5c6c8 <_Thread_Dispatch_disable_level><== NOT EXECUTED
      _Thread_Unnest_dispatch();                                      
      break;                                                          
  }                                                                   
}                                                                     
   47e9e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00051fa2 <_Timer_server_Body>: * @a arg points to the corresponding timer server control block. */ static rtems_task _Timer_server_Body( rtems_task_argument arg ) {
   51fa2:	4e56 ffb4      	linkw %fp,#-76                              <== NOT EXECUTED
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
                                                                      
  head->next = tail;                                                  
   51fa6:	41ee ffec      	lea %fp@(-20),%a0                           <== NOT EXECUTED
   51faa:	200e           	movel %fp,%d0                               <== NOT EXECUTED
   51fac:	220e           	movel %fp,%d1                               <== NOT EXECUTED
   51fae:	5181           	subql #8,%d1                                <== NOT EXECUTED
   51fb0:	0680 ffff fff4 	addil #-12,%d0                              <== NOT EXECUTED
   51fb6:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 <== NOT EXECUTED
   51fba:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   51fbe:	260e           	movel %fp,%d3                               <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE const Chain_Node *_Chain_Immutable_tail(         
  const Chain_Control *the_chain                                      
)                                                                     
{                                                                     
  return &the_chain->Tail.Node;                                       
   51fc0:	2808           	movel %a0,%d4                               <== NOT EXECUTED
                                                                      
static void _Timer_server_Stop_tod_system_watchdog(                   
  Timer_server_Control *ts                                            
)                                                                     
{                                                                     
  _Watchdog_Remove( &ts->TOD_watchdogs.System_watchdog );             
   51fc2:	2c0a           	movel %a2,%d6                               <== NOT EXECUTED
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
                                                                      
  head->next = tail;                                                  
   51fc4:	0683 ffff ffe8 	addil #-24,%d3                              <== NOT EXECUTED
   51fca:	0686 0000 0040 	addil #64,%d6                               <== NOT EXECUTED
   */                                                                 
  Watchdog_Interval delta = snapshot - watchdogs->last_snapshot;      
                                                                      
  watchdogs->last_snapshot = snapshot;                                
                                                                      
  _Watchdog_Adjust_to_chain( &watchdogs->Chain, delta, fire_chain );  
   51fd0:	2a0a           	movel %a2,%d5                               <== NOT EXECUTED
     /*                                                               
      *  The current TOD is before the last TOD which indicates that  
      *  TOD has been set backwards.                                  
      */                                                              
     delta = last_snapshot - snapshot;                                
     _Watchdog_Adjust( &watchdogs->Chain, WATCHDOG_BACKWARD, delta ); 
   51fd2:	240a           	movel %a2,%d2                               <== NOT EXECUTED
   */                                                                 
  Watchdog_Interval delta = snapshot - watchdogs->last_snapshot;      
                                                                      
  watchdogs->last_snapshot = snapshot;                                
                                                                      
  _Watchdog_Adjust_to_chain( &watchdogs->Chain, delta, fire_chain );  
   51fd4:	0685 0000 0030 	addil #48,%d5                               <== NOT EXECUTED
   51fda:	47f9 0005 5c88 	lea 55c88 <_Watchdog_Adjust_to_chain>,%a3   <== NOT EXECUTED
     /*                                                               
      *  The current TOD is before the last TOD which indicates that  
      *  TOD has been set backwards.                                  
      */                                                              
     delta = last_snapshot - snapshot;                                
     _Watchdog_Adjust( &watchdogs->Chain, WATCHDOG_BACKWARD, delta ); 
   51fe0:	0682 0000 0068 	addil #104,%d2                              <== NOT EXECUTED
   51fe6:	4bf9 0005 5c08 	lea 55c08 <_Watchdog_Adjust>,%a5            <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE const Chain_Node *_Chain_Immutable_tail(         
  const Chain_Control *the_chain                                      
)                                                                     
{                                                                     
  return &the_chain->Tail.Node;                                       
   51fec:	2e01           	movel %d1,%d7                               <== NOT EXECUTED
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
                                                                      
  head->next = tail;                                                  
   51fee:	2d48 ffe8      	movel %a0,%fp@(-24)                         <== NOT EXECUTED
                                                                      
static void _Timer_server_Stop_interval_system_watchdog(              
  Timer_server_Control *ts                                            
)                                                                     
{                                                                     
  _Watchdog_Remove( &ts->Interval_watchdogs.System_watchdog );        
   51ff2:	41ea 0008      	lea %a2@(8),%a0                             <== NOT EXECUTED
   51ff6:	2d41 fff4      	movel %d1,%fp@(-12)                         <== NOT EXECUTED
  head->previous = NULL;                                              
   51ffa:	42ae fff8      	clrl %fp@(-8)                               <== NOT EXECUTED
  tail->previous = head;                                              
   51ffe:	2d40 fffc      	movel %d0,%fp@(-4)                          <== NOT EXECUTED
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
                                                                      
  head->next = tail;                                                  
  head->previous = NULL;                                              
   52002:	42ae ffec      	clrl %fp@(-20)                              <== NOT EXECUTED
  tail->previous = head;                                              
   52006:	2d43 fff0      	movel %d3,%fp@(-16)                         <== NOT EXECUTED
   5200a:	2d48 ffe4      	movel %a0,%fp@(-28)                         <== NOT EXECUTED
                                                                      
static void _Timer_server_Stop_tod_system_watchdog(                   
  Timer_server_Control *ts                                            
)                                                                     
{                                                                     
  _Watchdog_Remove( &ts->TOD_watchdogs.System_watchdog );             
   5200e:	2d46 ffe0      	movel %d6,%fp@(-32)                         <== NOT EXECUTED
  Chain_Control *tmp;                                                 
  /*                                                                  
   *  Afterwards all timer inserts are directed to this chain and the interval
   *  and TOD chains will be no more modified by other parties.       
   */                                                                 
  ts->insert_chain = insert_chain;                                    
   52012:	41ee fff4      	lea %fp@(-12),%a0                           <== NOT EXECUTED
)                                                                     
{                                                                     
  if ( timer->the_class == TIMER_INTERVAL_ON_TASK ) {                 
    _Watchdog_Insert( &ts->Interval_watchdogs.Chain, &timer->Ticker );
  } else if ( timer->the_class == TIMER_TIME_OF_DAY_ON_TASK ) {       
    _Watchdog_Insert( &ts->TOD_watchdogs.Chain, &timer->Ticker );     
   52016:	49f9 0005 5d18 	lea 55d18 <_Watchdog_Insert>,%a4            <== NOT EXECUTED
  Chain_Control *tmp;                                                 
  /*                                                                  
   *  Afterwards all timer inserts are directed to this chain and the interval
   *  and TOD chains will be no more modified by other parties.       
   */                                                                 
  ts->insert_chain = insert_chain;                                    
   5201c:	2548 0078      	movel %a0,%a2@(120)                         <== NOT EXECUTED
static void _Timer_server_Process_interval_watchdogs(                 
  Timer_server_Watchdogs *watchdogs,                                  
  Chain_Control *fire_chain                                           
)                                                                     
{                                                                     
  Watchdog_Interval snapshot = _Watchdog_Ticks_since_boot;            
   52020:	2039 0007 512c 	movel 7512c <_Watchdog_Ticks_since_boot>,%d0<== NOT EXECUTED
                                                                      
  /*                                                                  
   *  We assume adequate unsigned arithmetic here.                    
   */                                                                 
  Watchdog_Interval delta = snapshot - watchdogs->last_snapshot;      
   52026:	222a 003c      	movel %a2@(60),%d1                          <== NOT EXECUTED
                                                                      
  watchdogs->last_snapshot = snapshot;                                
   5202a:	2540 003c      	movel %d0,%a2@(60)                          <== NOT EXECUTED
                                                                      
  _Watchdog_Adjust_to_chain( &watchdogs->Chain, delta, fire_chain );  
   5202e:	9081           	subl %d1,%d0                                <== NOT EXECUTED
   52030:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   52032:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   52034:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   52036:	4e93           	jsr %a3@                                    <== NOT EXECUTED
static void _Timer_server_Process_tod_watchdogs(                      
  Timer_server_Watchdogs *watchdogs,                                  
  Chain_Control *fire_chain                                           
)                                                                     
{                                                                     
  Watchdog_Interval snapshot = (Watchdog_Interval) _TOD_Seconds_since_epoch();
   52038:	2039 0007 50ae 	movel 750ae <_TOD_Now>,%d0                  <== NOT EXECUTED
  /*                                                                  
   *  Process the seconds chain.  Start by checking that the Time     
   *  of Day (TOD) has not been set backwards.  If it has then        
   *  we want to adjust the watchdogs->Chain to indicate this.        
   */                                                                 
  if ( snapshot > last_snapshot ) {                                   
   5203e:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
  Timer_server_Watchdogs *watchdogs,                                  
  Chain_Control *fire_chain                                           
)                                                                     
{                                                                     
  Watchdog_Interval snapshot = (Watchdog_Interval) _TOD_Seconds_since_epoch();
  Watchdog_Interval last_snapshot = watchdogs->last_snapshot;         
   52042:	222a 0074      	movel %a2@(116),%d1                         <== NOT EXECUTED
  /*                                                                  
   *  Process the seconds chain.  Start by checking that the Time     
   *  of Day (TOD) has not been set backwards.  If it has then        
   *  we want to adjust the watchdogs->Chain to indicate this.        
   */                                                                 
  if ( snapshot > last_snapshot ) {                                   
   52046:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   52048:	6412           	bccs 5205c <_Timer_server_Body+0xba>        <== NOT EXECUTED
    /*                                                                
     *  This path is for normal forward movement and cases where the  
     *  TOD has been set forward.                                     
     */                                                               
    delta = snapshot - last_snapshot;                                 
    _Watchdog_Adjust_to_chain( &watchdogs->Chain, delta, fire_chain );
   5204a:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   5204c:	2c00           	movel %d0,%d6                               <== NOT EXECUTED
   5204e:	9c81           	subl %d1,%d6                                <== NOT EXECUTED
   52050:	2f06           	movel %d6,%sp@-                             <== NOT EXECUTED
   52052:	2d40 ffdc      	movel %d0,%fp@(-36)                         <== NOT EXECUTED
   52056:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   52058:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   5205a:	6014           	bras 52070 <_Timer_server_Body+0xce>        <== NOT EXECUTED
                                                                      
  } else if ( snapshot < last_snapshot ) {                            
   5205c:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   5205e:	6318           	blss 52078 <_Timer_server_Body+0xd6>        <== NOT EXECUTED
     /*                                                               
      *  The current TOD is before the last TOD which indicates that  
      *  TOD has been set backwards.                                  
      */                                                              
     delta = last_snapshot - snapshot;                                
     _Watchdog_Adjust( &watchdogs->Chain, WATCHDOG_BACKWARD, delta ); 
   52060:	9280           	subl %d0,%d1                                <== NOT EXECUTED
   52062:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   52064:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   52068:	2d40 ffdc      	movel %d0,%fp@(-36)                         <== NOT EXECUTED
   5206c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   5206e:	4e95           	jsr %a5@                                    <== NOT EXECUTED
   52070:	202e ffdc      	movel %fp@(-36),%d0                         <== NOT EXECUTED
   52074:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
  }                                                                   
                                                                      
  watchdogs->last_snapshot = snapshot;                                
   52078:	2540 0074      	movel %d0,%a2@(116)                         <== NOT EXECUTED
}                                                                     
                                                                      
static void _Timer_server_Process_insertions( Timer_server_Control *ts )
{                                                                     
  while ( true ) {                                                    
    Timer_Control *timer = (Timer_Control *) _Chain_Get( ts->insert_chain );
   5207c:	202a 0078      	movel %a2@(120),%d0                         <== NOT EXECUTED
   52080:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   52082:	4eb9 0005 2a4c 	jsr 52a4c <_Chain_Get>                      <== NOT EXECUTED
                                                                      
    if ( timer == NULL ) {                                            
   52088:	588f           	addql #4,%sp                                <== NOT EXECUTED
}                                                                     
                                                                      
static void _Timer_server_Process_insertions( Timer_server_Control *ts )
{                                                                     
  while ( true ) {                                                    
    Timer_Control *timer = (Timer_Control *) _Chain_Get( ts->insert_chain );
   5208a:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
                                                                      
    if ( timer == NULL ) {                                            
   5208c:	4a80           	tstl %d0                                    <== NOT EXECUTED
   5208e:	6724           	beqs 520b4 <_Timer_server_Body+0x112>       <== NOT EXECUTED
static void _Timer_server_Insert_timer(                               
  Timer_server_Control *ts,                                           
  Timer_Control *timer                                                
)                                                                     
{                                                                     
  if ( timer->the_class == TIMER_INTERVAL_ON_TASK ) {                 
   52090:	2028 0038      	movel %a0@(56),%d0                          <== NOT EXECUTED
   52094:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   52096:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   52098:	6608           	bnes 520a2 <_Timer_server_Body+0x100>       <== NOT EXECUTED
    _Watchdog_Insert( &ts->Interval_watchdogs.Chain, &timer->Ticker );
   5209a:	4868 0010      	pea %a0@(16)                                <== NOT EXECUTED
   5209e:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   520a0:	600c           	bras 520ae <_Timer_server_Body+0x10c>       <== NOT EXECUTED
  } else if ( timer->the_class == TIMER_TIME_OF_DAY_ON_TASK ) {       
   520a2:	7c03           	moveq #3,%d6                                <== NOT EXECUTED
   520a4:	bc80           	cmpl %d0,%d6                                <== NOT EXECUTED
   520a6:	66d4           	bnes 5207c <_Timer_server_Body+0xda>        <== NOT EXECUTED
    _Watchdog_Insert( &ts->TOD_watchdogs.Chain, &timer->Ticker );     
   520a8:	4868 0010      	pea %a0@(16)                                <== NOT EXECUTED
   520ac:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   520ae:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   520b0:	508f           	addql #8,%sp                                <== NOT EXECUTED
   520b2:	60c8           	bras 5207c <_Timer_server_Body+0xda>        <== NOT EXECUTED
     *  of zero it will be processed in the next iteration of the timer server
     *  body loop.                                                    
     */                                                               
    _Timer_server_Process_insertions( ts );                           
                                                                      
    _ISR_Disable( level );                                            
   520b4:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   520ba:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   520bc:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   520be:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
      tmp = ts->insert_chain;                                         
   520c0:	202a 0078      	movel %a2@(120),%d0                         <== NOT EXECUTED
      if ( _Chain_Is_empty( insert_chain ) ) {                        
   520c4:	beae fff4      	cmpl %fp@(-12),%d7                          <== NOT EXECUTED
   520c8:	6608           	bnes 520d2 <_Timer_server_Body+0x130>       <== NOT EXECUTED
        ts->insert_chain = NULL;                                      
   520ca:	42aa 0078      	clrl %a2@(120)                              <== NOT EXECUTED
        do_loop          = false;                                     
   520ce:	4200           	clrb %d0                                    <== NOT EXECUTED
   520d0:	6002           	bras 520d4 <_Timer_server_Body+0x132>       <== NOT EXECUTED
     */                                                               
    _Timer_server_Process_insertions( ts );                           
                                                                      
    _ISR_Disable( level );                                            
      tmp = ts->insert_chain;                                         
      if ( _Chain_Is_empty( insert_chain ) ) {                        
   520d2:	7001           	moveq #1,%d0                                <== NOT EXECUTED
        ts->insert_chain = NULL;                                      
        do_loop          = false;                                     
      }                                                               
    _ISR_Enable( level );                                             
   520d4:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
   *  Afterwards all timer inserts are directed to this chain and the interval
   *  and TOD chains will be no more modified by other parties.       
   */                                                                 
  ts->insert_chain = insert_chain;                                    
                                                                      
  while ( do_loop ) {                                                 
   520d6:	4a00           	tstb %d0                                    <== NOT EXECUTED
   520d8:	6600 ff46      	bnew 52020 <_Timer_server_Body+0x7e>        <== NOT EXECUTED
  _Chain_Initialize_empty( &fire_chain );                             
                                                                      
  while ( true ) {                                                    
    _Timer_server_Get_watchdogs_that_fire_now( ts, &insert_chain, &fire_chain );
                                                                      
    if ( !_Chain_Is_empty( &fire_chain ) ) {                          
   520dc:	b8ae ffe8      	cmpl %fp@(-24),%d4                          <== NOT EXECUTED
   520e0:	6742           	beqs 52124 <_Timer_server_Body+0x182>       <== NOT EXECUTED
                                                                      
        /*                                                            
         *  It is essential that interrupts are disable here since an interrupt
         *  service routine may remove a watchdog from the chain.     
         */                                                           
        _ISR_Disable( level );                                        
   520e2:	2c3c 0000 0700 	movel #1792,%d6                             <== NOT EXECUTED
   520e8:	2006           	movel %d6,%d0                               <== NOT EXECUTED
   520ea:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   520ec:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   520ee:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
      initialized = false;                                            
    }                                                                 
  #endif                                                              
                                                                      
  return status;                                                      
}                                                                     
   520f0:	206e ffe8      	moveal %fp@(-24),%a0                        <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Get_unprotected(              
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  if ( !_Chain_Is_empty(the_chain))                                   
   520f4:	b888           	cmpl %a0,%d4                                <== NOT EXECUTED
   520f6:	6726           	beqs 5211e <_Timer_server_Body+0x17c>       <== NOT EXECUTED
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *old_first = head->next;                                 
  Chain_Node *new_first = old_first->next;                            
   520f8:	2250           	moveal %a0@,%a1                             <== NOT EXECUTED
                                                                      
  head->next = new_first;                                             
   520fa:	2d49 ffe8      	movel %a1,%fp@(-24)                         <== NOT EXECUTED
  new_first->previous = head;                                         
   520fe:	2343 0004      	movel %d3,%a1@(4)                           <== NOT EXECUTED
         *  It is essential that interrupts are disable here since an interrupt
         *  service routine may remove a watchdog from the chain.     
         */                                                           
        _ISR_Disable( level );                                        
        watchdog = (Watchdog_Control *) _Chain_Get_unprotected( &fire_chain );
        if ( watchdog != NULL ) {                                     
   52102:	4a88           	tstl %a0                                    <== NOT EXECUTED
   52104:	6718           	beqs 5211e <_Timer_server_Body+0x17c>       <== NOT EXECUTED
          watchdog->state = WATCHDOG_INACTIVE;                        
   52106:	42a8 0008      	clrl %a0@(8)                                <== NOT EXECUTED
          _ISR_Enable( level );                                       
   5210a:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
        /*                                                            
         *  The timer server may block here and wait for resources or time.
         *  The system watchdogs are inactive and will remain inactive since
         *  the active flag of the timer server is true.              
         */                                                           
        (*watchdog->routine)( watchdog->id, watchdog->user_data );    
   5210c:	2f28 0024      	movel %a0@(36),%sp@-                        <== NOT EXECUTED
   52110:	2f28 0020      	movel %a0@(32),%sp@-                        <== NOT EXECUTED
   52114:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   52118:	4e90           	jsr %a0@                                    <== NOT EXECUTED
      }                                                               
   5211a:	508f           	addql #8,%sp                                <== NOT EXECUTED
   5211c:	60ca           	bras 520e8 <_Timer_server_Body+0x146>       <== NOT EXECUTED
        watchdog = (Watchdog_Control *) _Chain_Get_unprotected( &fire_chain );
        if ( watchdog != NULL ) {                                     
          watchdog->state = WATCHDOG_INACTIVE;                        
          _ISR_Enable( level );                                       
        } else {                                                      
          _ISR_Enable( level );                                       
   5211e:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
   52120:	6000 fef0      	braw 52012 <_Timer_server_Body+0x70>        <== NOT EXECUTED
                                                                      
static void _Timer_server_Stop_interval_system_watchdog(              
  Timer_server_Control *ts                                            
)                                                                     
{                                                                     
  _Watchdog_Remove( &ts->Interval_watchdogs.System_watchdog );        
   52124:	49f9 0005 5e40 	lea 55e40 <_Watchdog_Remove>,%a4            <== NOT EXECUTED
         *  the active flag of the timer server is true.              
         */                                                           
        (*watchdog->routine)( watchdog->id, watchdog->user_data );    
      }                                                               
    } else {                                                          
      ts->active = false;                                             
   5212a:	4200           	clrb %d0                                    <== NOT EXECUTED
   5212c:	1540 007c      	moveb %d0,%a2@(124)                         <== NOT EXECUTED
                                                                      
      /*                                                              
       *  Block until there is something to do.                       
       */                                                             
      _Thread_Disable_dispatch();                                     
   52130:	4eba fd96      	jsr %pc@(51ec8 <_Thread_Disable_dispatch>)  <== NOT EXECUTED
        _Thread_Set_state( ts->thread, STATES_DELAYING );             
   52134:	4878 0008      	pea 8 <DIVIDE_BY_ZERO>                      <== NOT EXECUTED
   52138:	2f12           	movel %a2@,%sp@-                            <== NOT EXECUTED
   5213a:	4eb9 0005 55f4 	jsr 555f4 <_Thread_Set_state>               <== NOT EXECUTED
        _Timer_server_Reset_interval_system_watchdog( ts );           
   52140:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   52142:	4eba fd9a      	jsr %pc@(51ede <_Timer_server_Reset_interval_system_watchdog>)<== NOT EXECUTED
        _Timer_server_Reset_tod_system_watchdog( ts );                
   52146:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   52148:	4eba fdf4      	jsr %pc@(51f3e <_Timer_server_Reset_tod_system_watchdog>)<== NOT EXECUTED
      _Thread_Enable_dispatch();                                      
   5214c:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
                                                                      
      ts->active = true;                                              
   52152:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   52154:	1541 007c      	moveb %d1,%a2@(124)                         <== NOT EXECUTED
                                                                      
static void _Timer_server_Stop_interval_system_watchdog(              
  Timer_server_Control *ts                                            
)                                                                     
{                                                                     
  _Watchdog_Remove( &ts->Interval_watchdogs.System_watchdog );        
   52158:	2f2e ffe4      	movel %fp@(-28),%sp@-                       <== NOT EXECUTED
   5215c:	4e94           	jsr %a4@                                    <== NOT EXECUTED
                                                                      
static void _Timer_server_Stop_tod_system_watchdog(                   
  Timer_server_Control *ts                                            
)                                                                     
{                                                                     
  _Watchdog_Remove( &ts->TOD_watchdogs.System_watchdog );             
   5215e:	2f2e ffe0      	movel %fp@(-32),%sp@-                       <== NOT EXECUTED
   52162:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   52164:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
   52168:	6000 fea8      	braw 52012 <_Timer_server_Body+0x70>        <== NOT EXECUTED
                                                                      

00051ede <_Timer_server_Reset_interval_system_watchdog>: } static void _Timer_server_Reset_interval_system_watchdog( Timer_server_Control *ts ) {
   51ede:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   51ee2:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   51ee4:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   51ee8:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
                                                                      
static void _Timer_server_Stop_interval_system_watchdog(              
  Timer_server_Control *ts                                            
)                                                                     
{                                                                     
  _Watchdog_Remove( &ts->Interval_watchdogs.System_watchdog );        
   51eea:	240a           	movel %a2,%d2                               <== NOT EXECUTED
   51eec:	5082           	addql #8,%d2                                <== NOT EXECUTED
   51eee:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   51ef0:	4eb9 0005 5e40 	jsr 55e40 <_Watchdog_Remove>                <== NOT EXECUTED
{                                                                     
  ISR_Level level;                                                    
                                                                      
  _Timer_server_Stop_interval_system_watchdog( ts );                  
                                                                      
  _ISR_Disable( level );                                              
   51ef6:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   51efc:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   51efe:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   51f00:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  const Chain_Control *the_chain                                      
)                                                                     
{                                                                     
  return _Chain_Immutable_first( the_chain )                          
    == _Chain_Immutable_tail( the_chain );                            
   51f02:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   51f04:	0680 0000 0034 	addil #52,%d0                               <== NOT EXECUTED
  if ( !_Chain_Is_empty( &ts->Interval_watchdogs.Chain ) ) {          
   51f0a:	588f           	addql #4,%sp                                <== NOT EXECUTED
      initialized = false;                                            
    }                                                                 
  #endif                                                              
                                                                      
  return status;                                                      
}                                                                     
   51f0c:	206a 0030      	moveal %a2@(48),%a0                         <== NOT EXECUTED
  ISR_Level level;                                                    
                                                                      
  _Timer_server_Stop_interval_system_watchdog( ts );                  
                                                                      
  _ISR_Disable( level );                                              
  if ( !_Chain_Is_empty( &ts->Interval_watchdogs.Chain ) ) {          
   51f10:	b088           	cmpl %a0,%d0                                <== NOT EXECUTED
   51f12:	671c           	beqs 51f30 <_Timer_server_Reset_interval_system_watchdog+0x52><== NOT EXECUTED
    Watchdog_Interval delta_interval =                                
   51f14:	2028 0010      	movel %a0@(16),%d0                          <== NOT EXECUTED
      _Watchdog_First( &ts->Interval_watchdogs.Chain )->delta_interval;
    _ISR_Enable( level );                                             
   51f18:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
  Watchdog_Control      *the_watchdog,                                
  Watchdog_Interval      units                                        
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
   51f1a:	2540 0014      	movel %d0,%a2@(20)                          <== NOT EXECUTED
                                                                      
  _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );           
   51f1e:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   51f20:	4879 0007 50e4 	pea 750e4 <_Watchdog_Ticks_chain>           <== NOT EXECUTED
   51f26:	4eb9 0005 5d18 	jsr 55d18 <_Watchdog_Insert>                <== NOT EXECUTED
   51f2c:	508f           	addql #8,%sp                                <== NOT EXECUTED
   51f2e:	6002           	bras 51f32 <_Timer_server_Reset_interval_system_watchdog+0x54><== NOT EXECUTED
    _Watchdog_Insert_ticks(                                           
      &ts->Interval_watchdogs.System_watchdog,                        
      delta_interval                                                  
    );                                                                
  } else {                                                            
    _ISR_Enable( level );                                             
   51f30:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
  }                                                                   
}                                                                     
   51f32:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   51f36:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   51f3a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00051f3e <_Timer_server_Reset_tod_system_watchdog>: } static void _Timer_server_Reset_tod_system_watchdog( Timer_server_Control *ts ) {
   51f3e:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   51f42:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   51f44:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   51f48:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
                                                                      
static void _Timer_server_Stop_tod_system_watchdog(                   
  Timer_server_Control *ts                                            
)                                                                     
{                                                                     
  _Watchdog_Remove( &ts->TOD_watchdogs.System_watchdog );             
   51f4a:	240a           	movel %a2,%d2                               <== NOT EXECUTED
   51f4c:	0682 0000 0040 	addil #64,%d2                               <== NOT EXECUTED
   51f52:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   51f54:	4eb9 0005 5e40 	jsr 55e40 <_Watchdog_Remove>                <== NOT EXECUTED
{                                                                     
  ISR_Level level;                                                    
                                                                      
  _Timer_server_Stop_tod_system_watchdog( ts );                       
                                                                      
  _ISR_Disable( level );                                              
   51f5a:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   51f60:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   51f62:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   51f64:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
   51f66:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   51f68:	0680 0000 006c 	addil #108,%d0                              <== NOT EXECUTED
  if ( !_Chain_Is_empty( &ts->TOD_watchdogs.Chain ) ) {               
   51f6e:	588f           	addql #4,%sp                                <== NOT EXECUTED
      initialized = false;                                            
    }                                                                 
  #endif                                                              
                                                                      
  return status;                                                      
}                                                                     
   51f70:	206a 0068      	moveal %a2@(104),%a0                        <== NOT EXECUTED
  ISR_Level level;                                                    
                                                                      
  _Timer_server_Stop_tod_system_watchdog( ts );                       
                                                                      
  _ISR_Disable( level );                                              
  if ( !_Chain_Is_empty( &ts->TOD_watchdogs.Chain ) ) {               
   51f74:	b088           	cmpl %a0,%d0                                <== NOT EXECUTED
   51f76:	671c           	beqs 51f94 <_Timer_server_Reset_tod_system_watchdog+0x56><== NOT EXECUTED
    Watchdog_Interval delta_interval =                                
   51f78:	2028 0010      	movel %a0@(16),%d0                          <== NOT EXECUTED
      _Watchdog_First( &ts->TOD_watchdogs.Chain )->delta_interval;    
    _ISR_Enable( level );                                             
   51f7c:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
  Watchdog_Control      *the_watchdog,                                
  Watchdog_Interval      units                                        
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
   51f7e:	2540 004c      	movel %d0,%a2@(76)                          <== NOT EXECUTED
                                                                      
  _Watchdog_Insert( &_Watchdog_Seconds_chain, the_watchdog );         
   51f82:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   51f84:	4879 0007 50d8 	pea 750d8 <_Watchdog_Seconds_chain>         <== NOT EXECUTED
   51f8a:	4eb9 0005 5d18 	jsr 55d18 <_Watchdog_Insert>                <== NOT EXECUTED
   51f90:	508f           	addql #8,%sp                                <== NOT EXECUTED
   51f92:	6002           	bras 51f96 <_Timer_server_Reset_tod_system_watchdog+0x58><== NOT EXECUTED
    _Watchdog_Insert_seconds(                                         
      &ts->TOD_watchdogs.System_watchdog,                             
      delta_interval                                                  
    );                                                                
  } else {                                                            
    _ISR_Enable( level );                                             
   51f94:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
  }                                                                   
}                                                                     
   51f96:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   51f9a:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   51f9e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0005216c <_Timer_server_Schedule_operation_method>: static void _Timer_server_Schedule_operation_method( Timer_server_Control *ts, Timer_Control *timer ) {
   5216c:	4e56 fff0      	linkw %fp,#-16                              <== NOT EXECUTED
   52170:	48d7 1c04      	moveml %d2/%a2-%a4,%sp@                     <== NOT EXECUTED
   52174:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   52178:	266e 000c      	moveal %fp@(12),%a3                         <== NOT EXECUTED
  if ( ts->insert_chain == NULL ) {                                   
   5217c:	202a 0078      	movel %a2@(120),%d0                         <== NOT EXECUTED
   52180:	6600 00ea      	bnew 5226c <_Timer_server_Schedule_operation_method+0x100><== NOT EXECUTED
   *  is the reference point for the delta chain.  Thus if we do not update the
   *  reference point we have to add DT to the initial delta of the watchdog
   *  being inserted.  This could result in an integer overflow.      
   */                                                                 
                                                                      
  _Thread_Disable_dispatch();                                         
   52184:	4eba fd42      	jsr %pc@(51ec8 <_Thread_Disable_dispatch>)  <== NOT EXECUTED
                                                                      
  if ( timer->the_class == TIMER_INTERVAL_ON_TASK ) {                 
   52188:	202b 0038      	movel %a3@(56),%d0                          <== NOT EXECUTED
   5218c:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   5218e:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   52190:	665c           	bnes 521ee <_Timer_server_Schedule_operation_method+0x82><== NOT EXECUTED
    /*                                                                
     *  We have to advance the last known ticks value of the server and update
     *  the watchdog chain accordingly.                               
     */                                                               
    _ISR_Disable( level );                                            
   52192:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   52198:	40c2           	movew %sr,%d2                               <== NOT EXECUTED
   5219a:	8082           	orl %d2,%d0                                 <== NOT EXECUTED
   5219c:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
    snapshot = _Watchdog_Ticks_since_boot;                            
   5219e:	2039 0007 512c 	movel 7512c <_Watchdog_Ticks_since_boot>,%d0<== NOT EXECUTED
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  const Chain_Control *the_chain                                      
)                                                                     
{                                                                     
  return _Chain_Immutable_first( the_chain )                          
    == _Chain_Immutable_tail( the_chain );                            
   521a4:	43ea 0034      	lea %a2@(52),%a1                            <== NOT EXECUTED
    last_snapshot = ts->Interval_watchdogs.last_snapshot;             
   521a8:	222a 003c      	movel %a2@(60),%d1                          <== NOT EXECUTED
      initialized = false;                                            
    }                                                                 
  #endif                                                              
                                                                      
  return status;                                                      
}                                                                     
   521ac:	206a 0030      	moveal %a2@(48),%a0                         <== NOT EXECUTED
     *  the watchdog chain accordingly.                               
     */                                                               
    _ISR_Disable( level );                                            
    snapshot = _Watchdog_Ticks_since_boot;                            
    last_snapshot = ts->Interval_watchdogs.last_snapshot;             
    if ( !_Chain_Is_empty( &ts->Interval_watchdogs.Chain ) ) {        
   521b0:	b3c8           	cmpal %a0,%a1                               <== NOT EXECUTED
   521b2:	6716           	beqs 521ca <_Timer_server_Schedule_operation_method+0x5e><== NOT EXECUTED
      first_watchdog = _Watchdog_First( &ts->Interval_watchdogs.Chain );
                                                                      
      /*                                                              
       *  We assume adequate unsigned arithmetic here.                
       */                                                             
      delta = snapshot - last_snapshot;                               
   521b4:	2240           	moveal %d0,%a1                              <== NOT EXECUTED
   521b6:	93c1           	subal %d1,%a1                               <== NOT EXECUTED
                                                                      
      delta_interval = first_watchdog->delta_interval;                
   521b8:	2228 0010      	movel %a0@(16),%d1                          <== NOT EXECUTED
      if (delta_interval > delta) {                                   
   521bc:	b3c1           	cmpal %d1,%a1                               <== NOT EXECUTED
   521be:	6404           	bccs 521c4 <_Timer_server_Schedule_operation_method+0x58><== NOT EXECUTED
        delta_interval -= delta;                                      
   521c0:	9289           	subl %a1,%d1                                <== NOT EXECUTED
   521c2:	6002           	bras 521c6 <_Timer_server_Schedule_operation_method+0x5a><== NOT EXECUTED
      } else {                                                        
        delta_interval = 0;                                           
   521c4:	4281           	clrl %d1                                    <== NOT EXECUTED
      }                                                               
      first_watchdog->delta_interval = delta_interval;                
   521c6:	2141 0010      	movel %d1,%a0@(16)                          <== NOT EXECUTED
    }                                                                 
    ts->Interval_watchdogs.last_snapshot = snapshot;                  
   521ca:	2540 003c      	movel %d0,%a2@(60)                          <== NOT EXECUTED
    _ISR_Enable( level );                                             
   521ce:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
                                                                      
    _Watchdog_Insert( &ts->Interval_watchdogs.Chain, &timer->Ticker );
   521d0:	486b 0010      	pea %a3@(16)                                <== NOT EXECUTED
   521d4:	486a 0030      	pea %a2@(48)                                <== NOT EXECUTED
   521d8:	4eb9 0005 5d18 	jsr 55d18 <_Watchdog_Insert>                <== NOT EXECUTED
                                                                      
    if ( !ts->active ) {                                              
   521de:	508f           	addql #8,%sp                                <== NOT EXECUTED
   521e0:	102a 007c      	moveb %a2@(124),%d0                         <== NOT EXECUTED
   521e4:	6678           	bnes 5225e <_Timer_server_Schedule_operation_method+0xf2><== NOT EXECUTED
      _Timer_server_Reset_interval_system_watchdog( ts );             
   521e6:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   521e8:	4eba fcf4      	jsr %pc@(51ede <_Timer_server_Reset_interval_system_watchdog>)<== NOT EXECUTED
   521ec:	606e           	bras 5225c <_Timer_server_Schedule_operation_method+0xf0><== NOT EXECUTED
    }                                                                 
  } else if ( timer->the_class == TIMER_TIME_OF_DAY_ON_TASK ) {       
   521ee:	7203           	moveq #3,%d1                                <== NOT EXECUTED
   521f0:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   521f2:	666a           	bnes 5225e <_Timer_server_Schedule_operation_method+0xf2><== NOT EXECUTED
    /*                                                                
     *  We have to advance the last known seconds value of the server and update
     *  the watchdog chain accordingly.                               
     */                                                               
    _ISR_Disable( level );                                            
   521f4:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   521fa:	40c2           	movew %sr,%d2                               <== NOT EXECUTED
   521fc:	8082           	orl %d2,%d0                                 <== NOT EXECUTED
   521fe:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
   52200:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   52202:	0680 0000 006c 	addil #108,%d0                              <== NOT EXECUTED
    snapshot = (Watchdog_Interval) _TOD_Seconds_since_epoch();        
   52208:	2239 0007 50ae 	movel 750ae <_TOD_Now>,%d1                  <== NOT EXECUTED
    last_snapshot = ts->TOD_watchdogs.last_snapshot;                  
   5220e:	226a 0074      	moveal %a2@(116),%a1                        <== NOT EXECUTED
      initialized = false;                                            
    }                                                                 
  #endif                                                              
                                                                      
  return status;                                                      
}                                                                     
   52212:	206a 0068      	moveal %a2@(104),%a0                        <== NOT EXECUTED
     *  the watchdog chain accordingly.                               
     */                                                               
    _ISR_Disable( level );                                            
    snapshot = (Watchdog_Interval) _TOD_Seconds_since_epoch();        
    last_snapshot = ts->TOD_watchdogs.last_snapshot;                  
    if ( !_Chain_Is_empty( &ts->TOD_watchdogs.Chain ) ) {             
   52216:	b088           	cmpl %a0,%d0                                <== NOT EXECUTED
   52218:	6720           	beqs 5223a <_Timer_server_Schedule_operation_method+0xce><== NOT EXECUTED
      first_watchdog = _Watchdog_First( &ts->TOD_watchdogs.Chain );   
      delta_interval = first_watchdog->delta_interval;                
   5221a:	2028 0010      	movel %a0@(16),%d0                          <== NOT EXECUTED
      if ( snapshot > last_snapshot ) {                               
   5221e:	b3c1           	cmpal %d1,%a1                               <== NOT EXECUTED
   52220:	640c           	bccs 5222e <_Timer_server_Schedule_operation_method+0xc2><== NOT EXECUTED
        /*                                                            
         *  We advanced in time.                                      
         */                                                           
        delta = snapshot - last_snapshot;                             
   52222:	2841           	moveal %d1,%a4                              <== NOT EXECUTED
   52224:	99c9           	subal %a1,%a4                               <== NOT EXECUTED
        if (delta_interval > delta) {                                 
   52226:	b9c0           	cmpal %d0,%a4                               <== NOT EXECUTED
   52228:	640a           	bccs 52234 <_Timer_server_Schedule_operation_method+0xc8><== NOT EXECUTED
          delta_interval -= delta;                                    
   5222a:	908c           	subl %a4,%d0                                <== NOT EXECUTED
   5222c:	6008           	bras 52236 <_Timer_server_Schedule_operation_method+0xca><== NOT EXECUTED
        }                                                             
      } else {                                                        
        /*                                                            
         *  Someone put us in the past.                               
         */                                                           
        delta = last_snapshot - snapshot;                             
   5222e:	d089           	addl %a1,%d0                                <== NOT EXECUTED
        delta_interval += delta;                                      
   52230:	9081           	subl %d1,%d0                                <== NOT EXECUTED
   52232:	6002           	bras 52236 <_Timer_server_Schedule_operation_method+0xca><== NOT EXECUTED
         */                                                           
        delta = snapshot - last_snapshot;                             
        if (delta_interval > delta) {                                 
          delta_interval -= delta;                                    
        } else {                                                      
          delta_interval = 0;                                         
   52234:	4280           	clrl %d0                                    <== NOT EXECUTED
         *  Someone put us in the past.                               
         */                                                           
        delta = last_snapshot - snapshot;                             
        delta_interval += delta;                                      
      }                                                               
      first_watchdog->delta_interval = delta_interval;                
   52236:	2140 0010      	movel %d0,%a0@(16)                          <== NOT EXECUTED
    }                                                                 
    ts->TOD_watchdogs.last_snapshot = snapshot;                       
   5223a:	2541 0074      	movel %d1,%a2@(116)                         <== NOT EXECUTED
    _ISR_Enable( level );                                             
   5223e:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
                                                                      
    _Watchdog_Insert( &ts->TOD_watchdogs.Chain, &timer->Ticker );     
   52240:	486b 0010      	pea %a3@(16)                                <== NOT EXECUTED
   52244:	486a 0068      	pea %a2@(104)                               <== NOT EXECUTED
   52248:	4eb9 0005 5d18 	jsr 55d18 <_Watchdog_Insert>                <== NOT EXECUTED
                                                                      
    if ( !ts->active ) {                                              
   5224e:	508f           	addql #8,%sp                                <== NOT EXECUTED
   52250:	102a 007c      	moveb %a2@(124),%d0                         <== NOT EXECUTED
   52254:	6608           	bnes 5225e <_Timer_server_Schedule_operation_method+0xf2><== NOT EXECUTED
      _Timer_server_Reset_tod_system_watchdog( ts );                  
   52256:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   52258:	4eba fce4      	jsr %pc@(51f3e <_Timer_server_Reset_tod_system_watchdog>)<== NOT EXECUTED
   5225c:	588f           	addql #4,%sp                                <== NOT EXECUTED
     *  critical section.  We have to use the protected chain methods because
     *  we may be interrupted by a higher priority interrupt.         
     */                                                               
    _Chain_Append( ts->insert_chain, &timer->Object.Node );           
  }                                                                   
}                                                                     
   5225e:	4cee 1c04 fff0 	moveml %fp@(-16),%d2/%a2-%a4                <== NOT EXECUTED
   52264:	4e5e           	unlk %fp                                    <== NOT EXECUTED
    if ( !ts->active ) {                                              
      _Timer_server_Reset_tod_system_watchdog( ts );                  
    }                                                                 
  }                                                                   
                                                                      
  _Thread_Enable_dispatch();                                          
   52266:	4ef9 0005 4d7a 	jmp 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
     *  server is not preemptible, so we must be in interrupt context here.  No
     *  thread dispatch will happen until the timer server finishes its
     *  critical section.  We have to use the protected chain methods because
     *  we may be interrupted by a higher priority interrupt.         
     */                                                               
    _Chain_Append( ts->insert_chain, &timer->Object.Node );           
   5226c:	202a 0078      	movel %a2@(120),%d0                         <== NOT EXECUTED
   52270:	2d4b 000c      	movel %a3,%fp@(12)                          <== NOT EXECUTED
  }                                                                   
}                                                                     
   52274:	4cee 1c04 fff0 	moveml %fp@(-16),%d2/%a2-%a4                <== NOT EXECUTED
     *  server is not preemptible, so we must be in interrupt context here.  No
     *  thread dispatch will happen until the timer server finishes its
     *  critical section.  We have to use the protected chain methods because
     *  we may be interrupted by a higher priority interrupt.         
     */                                                               
    _Chain_Append( ts->insert_chain, &timer->Object.Node );           
   5227a:	2d40 0008      	movel %d0,%fp@(8)                           <== NOT EXECUTED
  }                                                                   
}                                                                     
   5227e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
     *  server is not preemptible, so we must be in interrupt context here.  No
     *  thread dispatch will happen until the timer server finishes its
     *  critical section.  We have to use the protected chain methods because
     *  we may be interrupted by a higher priority interrupt.         
     */                                                               
    _Chain_Append( ts->insert_chain, &timer->Object.Node );           
   52280:	4ef9 0005 29ec 	jmp 529ec <_Chain_Append>                   <== NOT EXECUTED
                                                                      

00048154 <_Timespec_Add_to>: uint32_t _Timespec_Add_to( struct timespec *time, const struct timespec *add ) {
   48154:	4e56 0000      	linkw %fp,#0                                
   48158:	226e 000c      	moveal %fp@(12),%a1                         
   4815c:	206e 0008      	moveal %fp@(8),%a0                          
  uint32_t seconds = add->tv_sec;                                     
   48160:	2011           	movel %a1@,%d0                              
                                                                      
  /* Add the basics */                                                
  time->tv_sec += add->tv_sec;                                        
   48162:	d190           	addl %d0,%a0@                               
  time->tv_nsec += add->tv_nsec;                                      
   48164:	2229 0004      	movel %a1@(4),%d1                           
   48168:	d3a8 0004      	addl %d1,%a0@(4)                            
                                                                      
  /* Now adjust it so nanoseconds is in range */                      
  while ( time->tv_nsec >= TOD_NANOSECONDS_PER_SECOND ) {             
   4816c:	600e           	bras 4817c <_Timespec_Add_to+0x28>          
    time->tv_nsec -= TOD_NANOSECONDS_PER_SECOND;                      
    time->tv_sec++;                                                   
   4816e:	5290           	addql #1,%a0@                               <== NOT EXECUTED
  time->tv_sec += add->tv_sec;                                        
  time->tv_nsec += add->tv_nsec;                                      
                                                                      
  /* Now adjust it so nanoseconds is in range */                      
  while ( time->tv_nsec >= TOD_NANOSECONDS_PER_SECOND ) {             
    time->tv_nsec -= TOD_NANOSECONDS_PER_SECOND;                      
   48170:	0681 c465 3600 	addil #-1000000000,%d1                      <== NOT EXECUTED
    time->tv_sec++;                                                   
    seconds++;                                                        
   48176:	5280           	addql #1,%d0                                <== NOT EXECUTED
  time->tv_sec += add->tv_sec;                                        
  time->tv_nsec += add->tv_nsec;                                      
                                                                      
  /* Now adjust it so nanoseconds is in range */                      
  while ( time->tv_nsec >= TOD_NANOSECONDS_PER_SECOND ) {             
    time->tv_nsec -= TOD_NANOSECONDS_PER_SECOND;                      
   48178:	2141 0004      	movel %d1,%a0@(4)                           <== NOT EXECUTED
  /* Add the basics */                                                
  time->tv_sec += add->tv_sec;                                        
  time->tv_nsec += add->tv_nsec;                                      
                                                                      
  /* Now adjust it so nanoseconds is in range */                      
  while ( time->tv_nsec >= TOD_NANOSECONDS_PER_SECOND ) {             
   4817c:	2228 0004      	movel %a0@(4),%d1                           
   48180:	0c81 3b9a c9ff 	cmpil #999999999,%d1                        
   48186:	62e6           	bhis 4816e <_Timespec_Add_to+0x1a>          <== NEVER TAKEN
    time->tv_sec++;                                                   
    seconds++;                                                        
  }                                                                   
                                                                      
  return seconds;                                                     
}                                                                     
   48188:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00049570 <_Timespec_Divide>: const struct timespec *lhs, const struct timespec *rhs, uint32_t *ival_percentage, uint32_t *fval_percentage ) {
   49570:	4e56 ffe0      	linkw %fp,#-32                              <== NOT EXECUTED
   49574:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   49578:	48d7 3c3c      	moveml %d2-%d5/%a2-%a5,%sp@                 <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  For math simplicity just convert the timespec to nanoseconds    
   *  in a 64-bit integer.                                            
   */                                                                 
  left   = lhs->tv_sec * (uint64_t)TOD_NANOSECONDS_PER_SECOND;        
   4957c:	2a10           	movel %a0@,%d5                              <== NOT EXECUTED
  left  += lhs->tv_nsec;                                              
  right  = rhs->tv_sec * (uint64_t)TOD_NANOSECONDS_PER_SECOND;        
   4957e:	49f9 0005 9358 	lea 59358 <__muldi3>,%a4                    <== NOT EXECUTED
  /*                                                                  
   *  For math simplicity just convert the timespec to nanoseconds    
   *  in a 64-bit integer.                                            
   */                                                                 
  left   = lhs->tv_sec * (uint64_t)TOD_NANOSECONDS_PER_SECOND;        
  left  += lhs->tv_nsec;                                              
   49584:	2828 0004      	movel %a0@(4),%d4                           <== NOT EXECUTED
  right  = rhs->tv_sec * (uint64_t)TOD_NANOSECONDS_PER_SECOND;        
   49588:	2f3c 3b9a ca00 	movel #1000000000,%sp@-                     <== NOT EXECUTED
  const struct timespec *lhs,                                         
  const struct timespec *rhs,                                         
  uint32_t              *ival_percentage,                             
  uint32_t              *fval_percentage                              
)                                                                     
{                                                                     
   4958e:	2a6e 000c      	moveal %fp@(12),%a5                         <== NOT EXECUTED
   *  For math simplicity just convert the timespec to nanoseconds    
   *  in a 64-bit integer.                                            
   */                                                                 
  left   = lhs->tv_sec * (uint64_t)TOD_NANOSECONDS_PER_SECOND;        
  left  += lhs->tv_nsec;                                              
  right  = rhs->tv_sec * (uint64_t)TOD_NANOSECONDS_PER_SECOND;        
   49592:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
  const struct timespec *lhs,                                         
  const struct timespec *rhs,                                         
  uint32_t              *ival_percentage,                             
  uint32_t              *fval_percentage                              
)                                                                     
{                                                                     
   49594:	266e 0010      	moveal %fp@(16),%a3                         <== NOT EXECUTED
   *  For math simplicity just convert the timespec to nanoseconds    
   *  in a 64-bit integer.                                            
   */                                                                 
  left   = lhs->tv_sec * (uint64_t)TOD_NANOSECONDS_PER_SECOND;        
  left  += lhs->tv_nsec;                                              
  right  = rhs->tv_sec * (uint64_t)TOD_NANOSECONDS_PER_SECOND;        
   49598:	2f15           	movel %a5@,%sp@-                            <== NOT EXECUTED
   4959a:	5bc0           	smi %d0                                     <== NOT EXECUTED
   4959c:	49c0           	extbl %d0                                   <== NOT EXECUTED
   4959e:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
  const struct timespec *lhs,                                         
  const struct timespec *rhs,                                         
  uint32_t              *ival_percentage,                             
  uint32_t              *fval_percentage                              
)                                                                     
{                                                                     
   495a0:	246e 0014      	moveal %fp@(20),%a2                         <== NOT EXECUTED
   *  For math simplicity just convert the timespec to nanoseconds    
   *  in a 64-bit integer.                                            
   */                                                                 
  left   = lhs->tv_sec * (uint64_t)TOD_NANOSECONDS_PER_SECOND;        
  left  += lhs->tv_nsec;                                              
  right  = rhs->tv_sec * (uint64_t)TOD_NANOSECONDS_PER_SECOND;        
   495a4:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   495a6:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   495aa:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   495ac:	2241           	moveal %d1,%a1                              <== NOT EXECUTED
  right += rhs->tv_nsec;                                              
   495ae:	262d 0004      	movel %a5@(4),%d3                           <== NOT EXECUTED
   495b2:	5bc2           	smi %d2                                     <== NOT EXECUTED
   495b4:	49c2           	extbl %d2                                   <== NOT EXECUTED
   495b6:	2208           	movel %a0,%d1                               <== NOT EXECUTED
   495b8:	d689           	addl %a1,%d3                                <== NOT EXECUTED
   495ba:	d581           	addxl %d1,%d2                               <== NOT EXECUTED
                                                                      
  if ( right == 0 ) {                                                 
   495bc:	6606           	bnes 495c4 <_Timespec_Divide+0x54>          <== NOT EXECUTED
    *ival_percentage = 0;                                             
   495be:	4293           	clrl %a3@                                   <== NOT EXECUTED
    *fval_percentage = 0;                                             
   495c0:	4292           	clrl %a2@                                   <== NOT EXECUTED
    return;                                                           
   495c2:	607a           	bras 4963e <_Timespec_Divide+0xce>          <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  For math simplicity just convert the timespec to nanoseconds    
   *  in a 64-bit integer.                                            
   */                                                                 
  left   = lhs->tv_sec * (uint64_t)TOD_NANOSECONDS_PER_SECOND;        
   495c4:	2f3c 3b9a ca00 	movel #1000000000,%sp@-                     <== NOT EXECUTED
   495ca:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   495cc:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   495ce:	5bc1           	smi %d1                                     <== NOT EXECUTED
   495d0:	49c1           	extbl %d1                                   <== NOT EXECUTED
   495d2:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
  left  += lhs->tv_nsec;                                              
   495d4:	2a04           	movel %d4,%d5                               <== NOT EXECUTED
   495d6:	5bc4           	smi %d4                                     <== NOT EXECUTED
   495d8:	49c4           	extbl %d4                                   <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  For math simplicity just convert the timespec to nanoseconds    
   *  in a 64-bit integer.                                            
   */                                                                 
  left   = lhs->tv_sec * (uint64_t)TOD_NANOSECONDS_PER_SECOND;        
   495da:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   495dc:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   495e0:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   495e2:	2241           	moveal %d1,%a1                              <== NOT EXECUTED
   *  Put it back in the timespec result.                             
   *                                                                  
   *  TODO: Rounding on the last digit of the fval.                   
   */                                                                 
                                                                      
  answer = (left * 100000) / right;                                   
   495e4:	2f3c 0001 86a0 	movel #100000,%sp@-                         <== NOT EXECUTED
   495ea:	2008           	movel %a0,%d0                               <== NOT EXECUTED
   495ec:	2209           	movel %a1,%d1                               <== NOT EXECUTED
   495ee:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   495f0:	d285           	addl %d5,%d1                                <== NOT EXECUTED
   495f2:	d184           	addxl %d4,%d0                               <== NOT EXECUTED
   495f4:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   495f6:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   495f8:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   495fa:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   495fe:	49f9 0005 9ba4 	lea 59ba4 <__udivdi3>,%a4                   <== NOT EXECUTED
   49604:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   49606:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   49608:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   4960a:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4960c:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   4960e:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   49612:	2400           	movel %d0,%d2                               <== NOT EXECUTED
                                                                      
  *ival_percentage = answer / 1000;                                   
   49614:	4878 03e8      	pea 3e8 <DBL_MANT_DIG+0x3b3>                <== NOT EXECUTED
   *  Put it back in the timespec result.                             
   *                                                                  
   *  TODO: Rounding on the last digit of the fval.                   
   */                                                                 
                                                                      
  answer = (left * 100000) / right;                                   
   49618:	2601           	movel %d1,%d3                               <== NOT EXECUTED
                                                                      
  *ival_percentage = answer / 1000;                                   
   4961a:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4961c:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   4961e:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   49620:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   49622:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   49626:	2681           	movel %d1,%a3@                              <== NOT EXECUTED
  *fval_percentage = answer % 1000;                                   
   49628:	4878 03e8      	pea 3e8 <DBL_MANT_DIG+0x3b3>                <== NOT EXECUTED
   4962c:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4962e:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   49630:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   49632:	4eb9 0005 9f30 	jsr 59f30 <__umoddi3>                       <== NOT EXECUTED
   49638:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   4963c:	2481           	movel %d1,%a2@                              <== NOT EXECUTED
}                                                                     
   4963e:	4cee 3c3c ffe0 	moveml %fp@(-32),%d2-%d5/%a2-%a5            <== NOT EXECUTED
   49644:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00049798 <_Timespec_Divide_by_integer>: void _Timespec_Divide_by_integer( const struct timespec *time, uint32_t iterations, struct timespec *result ) {
   49798:	4e56 fff0      	linkw %fp,#-16                              <== NOT EXECUTED
   4979c:	48d7 0c0c      	moveml %d2-%d3/%a2-%a3,%sp@                 <== NOT EXECUTED
  /*                                                                  
   *  For math simplicity just convert the timespec to nanoseconds    
   *  in a 64-bit integer.                                            
   */                                                                 
  t  = time->tv_sec;                                                  
  t *= TOD_NANOSECONDS_PER_SECOND;                                    
   497a0:	2f3c 3b9a ca00 	movel #1000000000,%sp@-                     <== NOT EXECUTED
void _Timespec_Divide_by_integer(                                     
  const struct timespec *time,                                        
  uint32_t               iterations,                                  
  struct timespec       *result                                       
)                                                                     
{                                                                     
   497a6:	266e 0008      	moveal %fp@(8),%a3                          <== NOT EXECUTED
  /*                                                                  
   *  For math simplicity just convert the timespec to nanoseconds    
   *  in a 64-bit integer.                                            
   */                                                                 
  t  = time->tv_sec;                                                  
  t *= TOD_NANOSECONDS_PER_SECOND;                                    
   497aa:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
void _Timespec_Divide_by_integer(                                     
  const struct timespec *time,                                        
  uint32_t               iterations,                                  
  struct timespec       *result                                       
)                                                                     
{                                                                     
   497ac:	246e 0010      	moveal %fp@(16),%a2                         <== NOT EXECUTED
  /*                                                                  
   *  For math simplicity just convert the timespec to nanoseconds    
   *  in a 64-bit integer.                                            
   */                                                                 
  t  = time->tv_sec;                                                  
  t *= TOD_NANOSECONDS_PER_SECOND;                                    
   497b0:	2f13           	movel %a3@,%sp@-                            <== NOT EXECUTED
   497b2:	5bc0           	smi %d0                                     <== NOT EXECUTED
   497b4:	49c0           	extbl %d0                                   <== NOT EXECUTED
   497b6:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   497b8:	4eb9 0005 9018 	jsr 59018 <__muldi3>                        <== NOT EXECUTED
   497be:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   497c2:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   497c4:	2241           	moveal %d1,%a1                              <== NOT EXECUTED
  t += time->tv_nsec;                                                 
   497c6:	222b 0004      	movel %a3@(4),%d1                           <== NOT EXECUTED
   497ca:	5bc0           	smi %d0                                     <== NOT EXECUTED
   497cc:	49c0           	extbl %d0                                   <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Divide to get nanoseconds per iteration                         
   */                                                                 
                                                                      
  t /= iterations;                                                    
   497ce:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   497d2:	47f9 0005 9864 	lea 59864 <__udivdi3>,%a3                   <== NOT EXECUTED
   497d8:	2408           	movel %a0,%d2                               <== NOT EXECUTED
   497da:	2609           	movel %a1,%d3                               <== NOT EXECUTED
   497dc:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   497de:	d681           	addl %d1,%d3                                <== NOT EXECUTED
   497e0:	d580           	addxl %d0,%d2                               <== NOT EXECUTED
   497e2:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   497e4:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   497e6:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   497e8:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   497ec:	2400           	movel %d0,%d2                               <== NOT EXECUTED
   497ee:	2601           	movel %d1,%d3                               <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Put it back in the timespec result                              
   */                                                                 
                                                                      
  result->tv_sec  = t / TOD_NANOSECONDS_PER_SECOND;                   
   497f0:	2f3c 3b9a ca00 	movel #1000000000,%sp@-                     <== NOT EXECUTED
   497f6:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   497f8:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   497fa:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   497fc:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   497fe:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   49802:	2481           	movel %d1,%a2@                              <== NOT EXECUTED
  result->tv_nsec = t % TOD_NANOSECONDS_PER_SECOND;                   
   49804:	2f3c 3b9a ca00 	movel #1000000000,%sp@-                     <== NOT EXECUTED
   4980a:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4980c:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4980e:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   49810:	4eb9 0005 9bf0 	jsr 59bf0 <__umoddi3>                       <== NOT EXECUTED
   49816:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   4981a:	2541 0004      	movel %d1,%a2@(4)                           <== NOT EXECUTED
}                                                                     
   4981e:	4cee 0c0c fff0 	moveml %fp@(-16),%d2-%d3/%a2-%a3            <== NOT EXECUTED
   49824:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00048d18 <_Timespec_From_ticks>: struct timespec *time ) { uint32_t usecs; usecs = ticks * rtems_configuration_get_microseconds_per_tick();
   48d18:	43f9 0005 ce30 	lea 5ce30 <Configuration+0xc>,%a1           <== NOT EXECUTED
                                                                      
void _Timespec_From_ticks(                                            
  uint32_t         ticks,                                             
  struct timespec *time                                               
)                                                                     
{                                                                     
   48d1e:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  uint32_t    usecs;                                                  
                                                                      
  usecs = ticks * rtems_configuration_get_microseconds_per_tick();    
   48d22:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   48d26:	4c11 0800      	mulsl %a1@,%d0                              <== NOT EXECUTED
                                                                      
void _Timespec_From_ticks(                                            
  uint32_t         ticks,                                             
  struct timespec *time                                               
)                                                                     
{                                                                     
   48d2a:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  uint32_t    usecs;                                                  
                                                                      
  usecs = ticks * rtems_configuration_get_microseconds_per_tick();    
                                                                      
  time->tv_sec  = usecs / TOD_MICROSECONDS_PER_SECOND;                
   48d2c:	243c 000f 4240 	movel #1000000,%d2                          <== NOT EXECUTED
                                                                      
void _Timespec_From_ticks(                                            
  uint32_t         ticks,                                             
  struct timespec *time                                               
)                                                                     
{                                                                     
   48d32:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
  uint32_t    usecs;                                                  
                                                                      
  usecs = ticks * rtems_configuration_get_microseconds_per_tick();    
                                                                      
  time->tv_sec  = usecs / TOD_MICROSECONDS_PER_SECOND;                
   48d36:	4c42 0001      	remul %d2,%d1,%d0                           <== NOT EXECUTED
   48d3a:	4c42 0000      	remul %d2,%d0,%d0                           <== NOT EXECUTED
  time->tv_nsec = (usecs % TOD_MICROSECONDS_PER_SECOND) *             
                    TOD_NANOSECONDS_PER_MICROSECOND;                  
}                                                                     
   48d3e:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
   48d40:	4e5e           	unlk %fp                                    <== NOT EXECUTED
{                                                                     
  uint32_t    usecs;                                                  
                                                                      
  usecs = ticks * rtems_configuration_get_microseconds_per_tick();    
                                                                      
  time->tv_sec  = usecs / TOD_MICROSECONDS_PER_SECOND;                
   48d42:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
  time->tv_nsec = (usecs % TOD_MICROSECONDS_PER_SECOND) *             
   48d44:	203c 0000 03e8 	movel #1000,%d0                             <== NOT EXECUTED
   48d4a:	4c01 0800      	mulsl %d1,%d0                               <== NOT EXECUTED
   48d4e:	2140 0004      	movel %d0,%a0@(4)                           <== NOT EXECUTED
                    TOD_NANOSECONDS_PER_MICROSECOND;                  
}                                                                     
                                                                      

00049828 <_Timespec_Greater_than>: bool _Timespec_Greater_than( const struct timespec *lhs, const struct timespec *rhs ) {
   49828:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4982c:	226e 0008      	moveal %fp@(8),%a1                          <== NOT EXECUTED
   49830:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
  if ( lhs->tv_sec > rhs->tv_sec )                                    
   49834:	2211           	movel %a1@,%d1                              <== NOT EXECUTED
   49836:	2010           	movel %a0@,%d0                              <== NOT EXECUTED
   49838:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   4983a:	6d10           	blts 4984c <_Timespec_Greater_than+0x24>    <== NOT EXECUTED
    return true;                                                      
                                                                      
  if ( lhs->tv_sec < rhs->tv_sec )                                    
   4983c:	6e12           	bgts 49850 <_Timespec_Greater_than+0x28>    <== NOT EXECUTED
                                                                      
#include <rtems/system.h>                                             
#include <rtems/score/timespec.h>                                     
#include <rtems/score/tod.h>                                          
                                                                      
bool _Timespec_Greater_than(                                          
   4983e:	2068 0004      	moveal %a0@(4),%a0                          <== NOT EXECUTED
   49842:	b1e9 0004      	cmpal %a1@(4),%a0                           <== NOT EXECUTED
   49846:	5dc0           	slt %d0                                     <== NOT EXECUTED
   49848:	4480           	negl %d0                                    <== NOT EXECUTED
   4984a:	6006           	bras 49852 <_Timespec_Greater_than+0x2a>    <== NOT EXECUTED
  const struct timespec *lhs,                                         
  const struct timespec *rhs                                          
)                                                                     
{                                                                     
  if ( lhs->tv_sec > rhs->tv_sec )                                    
    return true;                                                      
   4984c:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4984e:	6002           	bras 49852 <_Timespec_Greater_than+0x2a>    <== NOT EXECUTED
                                                                      
  if ( lhs->tv_sec < rhs->tv_sec )                                    
    return false;                                                     
   49850:	4200           	clrb %d0                                    <== NOT EXECUTED
  /* ASSERT: lhs->tv_sec == rhs->tv_sec */                            
  if ( lhs->tv_nsec > rhs->tv_nsec )                                  
    return true;                                                      
                                                                      
  return false;                                                       
}                                                                     
   49852:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00048d54 <_Timespec_Is_valid>: #include <rtems/score/tod.h> bool _Timespec_Is_valid( const struct timespec *time ) {
   48d54:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   48d58:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
  if ( !time )                                                        
   48d5c:	4a88           	tstl %a0                                    <== NOT EXECUTED
   48d5e:	6716           	beqs 48d76 <_Timespec_Is_valid+0x22>        <== NOT EXECUTED
    return false;                                                     
                                                                      
  if ( time->tv_sec < 0 )                                             
   48d60:	4a90           	tstl %a0@                                   <== NOT EXECUTED
   48d62:	6d12           	blts 48d76 <_Timespec_Is_valid+0x22>        <== NOT EXECUTED
    return false;                                                     
                                                                      
  if ( time->tv_nsec < 0 )                                            
   48d64:	2028 0004      	movel %a0@(4),%d0                           <== NOT EXECUTED
   48d68:	6d0c           	blts 48d76 <_Timespec_Is_valid+0x22>        <== NOT EXECUTED
                                                                      
#include <rtems/system.h>                                             
#include <rtems/score/timespec.h>                                     
#include <rtems/score/tod.h>                                          
                                                                      
bool _Timespec_Is_valid(                                              
   48d6a:	0c80 3b9a c9ff 	cmpil #999999999,%d0                        <== NOT EXECUTED
   48d70:	53c0           	sls %d0                                     <== NOT EXECUTED
   48d72:	4480           	negl %d0                                    <== NOT EXECUTED
   48d74:	6002           	bras 48d78 <_Timespec_Is_valid+0x24>        <== NOT EXECUTED
                                                                      
  if ( time->tv_sec < 0 )                                             
    return false;                                                     
                                                                      
  if ( time->tv_nsec < 0 )                                            
    return false;                                                     
   48d76:	4200           	clrb %d0                                    <== NOT EXECUTED
                                                                      
  if ( time->tv_nsec >= TOD_NANOSECONDS_PER_SECOND )                  
    return false;                                                     
                                                                      
  return true;                                                        
}                                                                     
   48d78:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00049858 <_Timespec_Less_than>: bool _Timespec_Less_than( const struct timespec *lhs, const struct timespec *rhs ) {
   49858:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4985c:	226e 0008      	moveal %fp@(8),%a1                          <== NOT EXECUTED
   49860:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
  if ( lhs->tv_sec < rhs->tv_sec )                                    
   49864:	2211           	movel %a1@,%d1                              <== NOT EXECUTED
   49866:	2010           	movel %a0@,%d0                              <== NOT EXECUTED
   49868:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   4986a:	6e10           	bgts 4987c <_Timespec_Less_than+0x24>       <== NOT EXECUTED
    return true;                                                      
                                                                      
  if ( lhs->tv_sec > rhs->tv_sec )                                    
   4986c:	6d12           	blts 49880 <_Timespec_Less_than+0x28>       <== NOT EXECUTED
                                                                      
#include <rtems/system.h>                                             
#include <rtems/score/timespec.h>                                     
#include <rtems/score/tod.h>                                          
                                                                      
bool _Timespec_Less_than(                                             
   4986e:	2068 0004      	moveal %a0@(4),%a0                          <== NOT EXECUTED
   49872:	b1e9 0004      	cmpal %a1@(4),%a0                           <== NOT EXECUTED
   49876:	5ec0           	sgt %d0                                     <== NOT EXECUTED
   49878:	4480           	negl %d0                                    <== NOT EXECUTED
   4987a:	6006           	bras 49882 <_Timespec_Less_than+0x2a>       <== NOT EXECUTED
  const struct timespec *lhs,                                         
  const struct timespec *rhs                                          
)                                                                     
{                                                                     
  if ( lhs->tv_sec < rhs->tv_sec )                                    
    return true;                                                      
   4987c:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4987e:	6002           	bras 49882 <_Timespec_Less_than+0x2a>       <== NOT EXECUTED
                                                                      
  if ( lhs->tv_sec > rhs->tv_sec )                                    
    return false;                                                     
   49880:	4200           	clrb %d0                                    <== NOT EXECUTED
  /* ASSERT: lhs->tv_sec == rhs->tv_sec */                            
  if ( lhs->tv_nsec < rhs->tv_nsec )                                  
    return true;                                                      
                                                                      
  return false;                                                       
}                                                                     
   49882:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004818c <_Timespec_Subtract>: void _Timespec_Subtract( const struct timespec *start, const struct timespec *end, struct timespec *result ) {
   4818c:	4e56 0000      	linkw %fp,#0                                
   48190:	226e 0008      	moveal %fp@(8),%a1                          
   48194:	2f0a           	movel %a2,%sp@-                             
   48196:	246e 000c      	moveal %fp@(12),%a2                         
   4819a:	206e 0010      	moveal %fp@(16),%a0                         
                                                                      
  if (end->tv_nsec < start->tv_nsec) {                                
   4819e:	222a 0004      	movel %a2@(4),%d1                           
   481a2:	2029 0004      	movel %a1@(4),%d0                           
void _Timespec_Subtract(                                              
  const struct timespec *start,                                       
  const struct timespec *end,                                         
  struct timespec       *result                                       
)                                                                     
{                                                                     
   481a6:	2f02           	movel %d2,%sp@-                             
                                                                      
  if (end->tv_nsec < start->tv_nsec) {                                
   481a8:	b081           	cmpl %d1,%d0                                
   481aa:	6f10           	bles 481bc <_Timespec_Subtract+0x30>        <== ALWAYS TAKEN
    result->tv_sec  = end->tv_sec - start->tv_sec - 1;                
   481ac:	2452           	moveal %a2@,%a2                             <== NOT EXECUTED
   481ae:	538a           	subql #1,%a2                                <== NOT EXECUTED
   481b0:	95d1           	subal %a1@,%a2                              <== NOT EXECUTED
    result->tv_nsec =                                                 
      (TOD_NANOSECONDS_PER_SECOND - start->tv_nsec) + end->tv_nsec;   
   481b2:	0681 3b9a ca00 	addil #1000000000,%d1                       <== NOT EXECUTED
  struct timespec       *result                                       
)                                                                     
{                                                                     
                                                                      
  if (end->tv_nsec < start->tv_nsec) {                                
    result->tv_sec  = end->tv_sec - start->tv_sec - 1;                
   481b8:	208a           	movel %a2,%a0@                              <== NOT EXECUTED
   481ba:	6006           	bras 481c2 <_Timespec_Subtract+0x36>        <== NOT EXECUTED
    result->tv_nsec =                                                 
      (TOD_NANOSECONDS_PER_SECOND - start->tv_nsec) + end->tv_nsec;   
  } else {                                                            
    result->tv_sec  = end->tv_sec - start->tv_sec;                    
   481bc:	2412           	movel %a2@,%d2                              
   481be:	9491           	subl %a1@,%d2                               
   481c0:	2082           	movel %d2,%a0@                              
    result->tv_nsec = end->tv_nsec - start->tv_nsec;                  
  }                                                                   
}                                                                     
   481c2:	241f           	movel %sp@+,%d2                             
    result->tv_sec  = end->tv_sec - start->tv_sec - 1;                
    result->tv_nsec =                                                 
      (TOD_NANOSECONDS_PER_SECOND - start->tv_nsec) + end->tv_nsec;   
  } else {                                                            
    result->tv_sec  = end->tv_sec - start->tv_sec;                    
    result->tv_nsec = end->tv_nsec - start->tv_nsec;                  
   481c4:	9280           	subl %d0,%d1                                
  }                                                                   
}                                                                     
   481c6:	245f           	moveal %sp@+,%a2                            
   481c8:	4e5e           	unlk %fp                                    
    result->tv_sec  = end->tv_sec - start->tv_sec - 1;                
    result->tv_nsec =                                                 
      (TOD_NANOSECONDS_PER_SECOND - start->tv_nsec) + end->tv_nsec;   
  } else {                                                            
    result->tv_sec  = end->tv_sec - start->tv_sec;                    
    result->tv_nsec = end->tv_nsec - start->tv_nsec;                  
   481ca:	2141 0004      	movel %d1,%a0@(4)                           
  }                                                                   
}                                                                     
                                                                      

00048dc0 <_Timespec_To_ticks>: */ uint32_t _Timespec_To_ticks( const struct timespec *time ) {
   48dc0:	4e56 fff4      	linkw %fp,#-12                              <== NOT EXECUTED
   48dc4:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     <== NOT EXECUTED
   48dc8:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
  uint32_t  ticks;                                                    
                                                                      
  if ( (time->tv_sec == 0) && (time->tv_nsec == 0) )                  
   48dcc:	2412           	movel %a2@,%d2                              <== NOT EXECUTED
   48dce:	6606           	bnes 48dd6 <_Timespec_To_ticks+0x16>        <== NOT EXECUTED
   48dd0:	4aaa 0004      	tstl %a2@(4)                                <== NOT EXECUTED
   48dd4:	672c           	beqs 48e02 <_Timespec_To_ticks+0x42>        <== NOT EXECUTED
    return 0;                                                         
                                                                      
  ticks  = time->tv_sec * TOD_TICKS_PER_SECOND;                       
   48dd6:	4eb9 0004 ae60 	jsr 4ae60 <TOD_TICKS_PER_SECOND_method>     <== NOT EXECUTED
                                                                      
  ticks += time->tv_nsec / rtems_configuration_get_nanoseconds_per_tick();
   48ddc:	2239 0005 ce30 	movel 5ce30 <Configuration+0xc>,%d1         <== NOT EXECUTED
  uint32_t  ticks;                                                    
                                                                      
  if ( (time->tv_sec == 0) && (time->tv_nsec == 0) )                  
    return 0;                                                         
                                                                      
  ticks  = time->tv_sec * TOD_TICKS_PER_SECOND;                       
   48de2:	4c02 0800      	mulsl %d2,%d0                               <== NOT EXECUTED
                                                                      
  ticks += time->tv_nsec / rtems_configuration_get_nanoseconds_per_tick();
   48de6:	243c 0000 03e8 	movel #1000,%d2                             <== NOT EXECUTED
   48dec:	4c02 1800      	mulsl %d2,%d1                               <== NOT EXECUTED
   48df0:	262a 0004      	movel %a2@(4),%d3                           <== NOT EXECUTED
   48df4:	4c41 3003      	remul %d1,%d3,%d3                           <== NOT EXECUTED
   48df8:	d083           	addl %d3,%d0                                <== NOT EXECUTED
                                                                      
  if (ticks)                                                          
   48dfa:	6608           	bnes 48e04 <_Timespec_To_ticks+0x44>        <== NOT EXECUTED
    return ticks;                                                     
                                                                      
  return 1;                                                           
   48dfc:	103c 0001      	moveb #1,%d0                                <== NOT EXECUTED
   48e00:	6002           	bras 48e04 <_Timespec_To_ticks+0x44>        <== NOT EXECUTED
)                                                                     
{                                                                     
  uint32_t  ticks;                                                    
                                                                      
  if ( (time->tv_sec == 0) && (time->tv_nsec == 0) )                  
    return 0;                                                         
   48e02:	4280           	clrl %d0                                    <== NOT EXECUTED
                                                                      
  if (ticks)                                                          
    return ticks;                                                     
                                                                      
  return 1;                                                           
}                                                                     
   48e04:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   48e0a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

000482f6 <_User_extensions_Fatal>: void _User_extensions_Fatal ( Internal_errors_Source the_source, bool is_internal, Internal_errors_t the_error ) {
   482f6:	4e56 fff0      	linkw %fp,#-16                              
   482fa:	48d7 041c      	moveml %d2-%d4/%a2,%sp@                     
        the_node = the_node->previous ) {                             
                                                                      
    the_extension = (User_extensions_Control *) the_node;             
                                                                      
    if ( the_extension->Callouts.fatal != NULL )                      
      (*the_extension->Callouts.fatal)( the_source, is_internal, the_error );
   482fe:	4282           	clrl %d2                                    
   48300:	142e 000f      	moveb %fp@(15),%d2                          
void _User_extensions_Fatal (                                         
  Internal_errors_Source  the_source,                                 
  bool                    is_internal,                                
  Internal_errors_t       the_error                                   
)                                                                     
{                                                                     
   48304:	282e 0008      	movel %fp@(8),%d4                           
   48308:	262e 0010      	movel %fp@(16),%d3                          
    the_extension = (User_extensions_Control *) the_node;             
                                                                      
    if ( the_extension->Callouts.fatal != NULL )                      
      (*the_extension->Callouts.fatal)( the_source, is_internal, the_error );
  }                                                                   
}                                                                     
   4830c:	2479 0005 c83c 	moveal 5c83c <_User_extensions_List+0x8>,%a2
)                                                                     
{                                                                     
  Chain_Node              *the_node;                                  
  User_extensions_Control *the_extension;                             
                                                                      
  for ( the_node = _Chain_Last( &_User_extensions_List );             
   48312:	6018           	bras 4832c <_User_extensions_Fatal+0x36>    
        !_Chain_Is_head( &_User_extensions_List, the_node ) ;         
        the_node = the_node->previous ) {                             
                                                                      
    the_extension = (User_extensions_Control *) the_node;             
                                                                      
    if ( the_extension->Callouts.fatal != NULL )                      
   48314:	206a 0030      	moveal %a2@(48),%a0                         
   48318:	4a88           	tstl %a0                                    
   4831a:	670c           	beqs 48328 <_User_extensions_Fatal+0x32>    
      (*the_extension->Callouts.fatal)( the_source, is_internal, the_error );
   4831c:	2f03           	movel %d3,%sp@-                             
   4831e:	2f02           	movel %d2,%sp@-                             
   48320:	2f04           	movel %d4,%sp@-                             
   48322:	4e90           	jsr %a0@                                    
   48324:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
  Chain_Node              *the_node;                                  
  User_extensions_Control *the_extension;                             
                                                                      
  for ( the_node = _Chain_Last( &_User_extensions_List );             
        !_Chain_Is_head( &_User_extensions_List, the_node ) ;         
        the_node = the_node->previous ) {                             
   48328:	246a 0004      	moveal %a2@(4),%a2                          
)                                                                     
{                                                                     
  Chain_Node              *the_node;                                  
  User_extensions_Control *the_extension;                             
                                                                      
  for ( the_node = _Chain_Last( &_User_extensions_List );             
   4832c:	b5fc 0005 c834 	cmpal #378932,%a2                           
   48332:	66e0           	bnes 48314 <_User_extensions_Fatal+0x1e>    <== ALWAYS TAKEN
    the_extension = (User_extensions_Control *) the_node;             
                                                                      
    if ( the_extension->Callouts.fatal != NULL )                      
      (*the_extension->Callouts.fatal)( the_source, is_internal, the_error );
  }                                                                   
}                                                                     
   48334:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                <== NOT EXECUTED
   4833a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

000481d0 <_User_extensions_Handler_initialization>: #include <rtems/score/userext.h> #include <rtems/score/wkspace.h> #include <string.h> void _User_extensions_Handler_initialization(void) {
   481d0:	4e56 ffe8      	linkw %fp,#-24                              
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
                                                                      
  head->next = tail;                                                  
   481d4:	203c 0005 c838 	movel #378936,%d0                           
   481da:	23c0 0005 c834 	movel %d0,5c834 <_User_extensions_List>     
  head->previous = NULL;                                              
  tail->previous = head;                                              
   481e0:	203c 0005 c834 	movel #378932,%d0                           
   481e6:	23c0 0005 c83c 	movel %d0,5c83c <_User_extensions_List+0x8> 
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
                                                                      
  head->next = tail;                                                  
   481ec:	203c 0005 c6d0 	movel #378576,%d0                           
   481f2:	23c0 0005 c6cc 	movel %d0,5c6cc <_User_extensions_Switches_list>
  head->previous = NULL;                                              
  tail->previous = head;                                              
   481f8:	203c 0005 c6cc 	movel #378572,%d0                           
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
                                                                      
  head->next = tail;                                                  
  head->previous = NULL;                                              
   481fe:	42b9 0005 c838 	clrl 5c838 <_User_extensions_List+0x4>      
   48204:	48d7 1c1c      	moveml %d2-%d4/%a2-%a4,%sp@                 
  User_extensions_Control *extension;                                 
  uint32_t                 i;                                         
  uint32_t                 number_of_extensions;                      
  User_extensions_Table   *initial_extensions;                        
                                                                      
  number_of_extensions = Configuration.number_of_initial_extensions;  
   48208:	2839 0005 aece 	movel 5aece <Configuration+0x3a>,%d4        
  initial_extensions   = Configuration.User_extension_table;          
   4820e:	2639 0005 aed2 	movel 5aed2 <Configuration+0x3e>,%d3        
   48214:	42b9 0005 c6d0 	clrl 5c6d0 <_User_extensions_Switches_list+0x4>
  tail->previous = head;                                              
   4821a:	23c0 0005 c6d4 	movel %d0,5c6d4 <_User_extensions_Switches_list+0x8>
                                                                      
  _Chain_Initialize_empty( &_User_extensions_List );                  
  _Chain_Initialize_empty( &_User_extensions_Switches_list );         
                                                                      
  if ( initial_extensions ) {                                         
   48220:	4a83           	tstl %d3                                    
   48222:	6754           	beqs 48278 <_User_extensions_Handler_initialization+0xa8><== NEVER TAKEN
    extension = (User_extensions_Control *)                           
      _Workspace_Allocate_or_fatal_error(                             
   48224:	7434           	moveq #52,%d2                               
   48226:	4c04 2800      	mulsl %d4,%d2                               
RTEMS_INLINE_ROUTINE void _User_extensions_Add_set_with_table(        
  User_extensions_Control     *extension,                             
  const User_extensions_Table *extension_table                        
)                                                                     
{                                                                     
  extension->Callouts = *extension_table;                             
   4822a:	49f9 0004 c3f4 	lea 4c3f4 <memcpy>,%a4                      
                                                                      
  _User_extensions_Add_set( extension );                              
   48230:	47f9 0004 a840 	lea 4a840 <_User_extensions_Add_set>,%a3    
   48236:	2f02           	movel %d2,%sp@-                             
   48238:	4eb9 0004 86f4 	jsr 486f4 <_Workspace_Allocate_or_fatal_error>
   4823e:	2440           	moveal %d0,%a2                              
        number_of_extensions * sizeof( User_extensions_Control )      
      );                                                              
                                                                      
    memset (                                                          
   48240:	2f02           	movel %d2,%sp@-                             
      extension,                                                      
      0,                                                              
      number_of_extensions * sizeof( User_extensions_Control )        
    );                                                                
                                                                      
    for ( i = 0 ; i < number_of_extensions ; i++ ) {                  
   48242:	4282           	clrl %d2                                    
    extension = (User_extensions_Control *)                           
      _Workspace_Allocate_or_fatal_error(                             
        number_of_extensions * sizeof( User_extensions_Control )      
      );                                                              
                                                                      
    memset (                                                          
   48244:	42a7           	clrl %sp@-                                  
   48246:	2f00           	movel %d0,%sp@-                             
   48248:	4eb9 0004 c464 	jsr 4c464 <memset>                          
      extension,                                                      
      0,                                                              
      number_of_extensions * sizeof( User_extensions_Control )        
    );                                                                
                                                                      
    for ( i = 0 ; i < number_of_extensions ; i++ ) {                  
   4824e:	4fef 0010      	lea %sp@(16),%sp                            
   48252:	6020           	bras 48274 <_User_extensions_Handler_initialization+0xa4>
RTEMS_INLINE_ROUTINE void _User_extensions_Add_set_with_table(        
  User_extensions_Control     *extension,                             
  const User_extensions_Table *extension_table                        
)                                                                     
{                                                                     
  extension->Callouts = *extension_table;                             
   48254:	4878 0020      	pea 20 <OPER2+0xc>                          
   48258:	5282           	addql #1,%d2                                
   4825a:	2f03           	movel %d3,%sp@-                             
   4825c:	486a 0014      	pea %a2@(20)                                
   48260:	0683 0000 0020 	addil #32,%d3                               
   48266:	4e94           	jsr %a4@                                    
                                                                      
  _User_extensions_Add_set( extension );                              
   48268:	2f0a           	movel %a2,%sp@-                             
      _User_extensions_Add_set_with_table (extension, &initial_extensions[i]);
      extension++;                                                    
   4826a:	45ea 0034      	lea %a2@(52),%a2                            
   4826e:	4e93           	jsr %a3@                                    
      extension,                                                      
      0,                                                              
      number_of_extensions * sizeof( User_extensions_Control )        
    );                                                                
                                                                      
    for ( i = 0 ; i < number_of_extensions ; i++ ) {                  
   48270:	4fef 0010      	lea %sp@(16),%sp                            
   48274:	b882           	cmpl %d2,%d4                                
   48276:	62dc           	bhis 48254 <_User_extensions_Handler_initialization+0x84>
      _User_extensions_Add_set_with_table (extension, &initial_extensions[i]);
      extension++;                                                    
    }                                                                 
  }                                                                   
}                                                                     
   48278:	4cee 1c1c ffe8 	moveml %fp@(-24),%d2-%d4/%a2-%a4            
   4827e:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

00049364 <_User_extensions_Remove_set>: #include <rtems/score/userext.h> void _User_extensions_Remove_set ( User_extensions_Control *the_extension ) {
   49364:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   49368:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4936a:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
  _Chain_Extract( &the_extension->Node );                             
   4936e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   49370:	4eb9 0004 6ff4 	jsr 46ff4 <_Chain_Extract>                  <== NOT EXECUTED
                                                                      
  /*                                                                  
   * If a switch handler is present, remove it.                       
   */                                                                 
                                                                      
  if ( the_extension->Callouts.thread_switch != NULL )                
   49376:	588f           	addql #4,%sp                                <== NOT EXECUTED
   49378:	4aaa 0024      	tstl %a2@(36)                               <== NOT EXECUTED
   4937c:	6712           	beqs 49390 <_User_extensions_Remove_set+0x2c><== NOT EXECUTED
    _Chain_Extract( &the_extension->Switch.Node );                    
   4937e:	508a           	addql #8,%a2                                <== NOT EXECUTED
   49380:	2d4a 0008      	movel %a2,%fp@(8)                           <== NOT EXECUTED
}                                                                     
   49384:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   49388:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  /*                                                                  
   * If a switch handler is present, remove it.                       
   */                                                                 
                                                                      
  if ( the_extension->Callouts.thread_switch != NULL )                
    _Chain_Extract( &the_extension->Switch.Node );                    
   4938a:	4ef9 0004 6ff4 	jmp 46ff4 <_Chain_Extract>                  <== NOT EXECUTED
}                                                                     
   49390:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   49394:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00048340 <_User_extensions_Thread_create>: #include <rtems/score/userext.h> bool _User_extensions_Thread_create ( Thread_Control *the_thread ) {
   48340:	4e56 0000      	linkw %fp,#0                                
   48344:	2f0a           	movel %a2,%sp@-                             
        return false;                                                 
    }                                                                 
  }                                                                   
                                                                      
  return true;                                                        
}                                                                     
   48346:	2479 0005 c834 	moveal 5c834 <_User_extensions_List>,%a2    
#include <rtems/score/userext.h>                                      
                                                                      
bool _User_extensions_Thread_create (                                 
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
   4834c:	2f02           	movel %d2,%sp@-                             
   4834e:	242e 0008      	movel %fp@(8),%d2                           
  Chain_Node              *the_node;                                  
  User_extensions_Control *the_extension;                             
  bool                     status;                                    
                                                                      
  for ( the_node = _Chain_First( &_User_extensions_List );            
   48352:	601a           	bras 4836e <_User_extensions_Thread_create+0x2e>
        !_Chain_Is_tail( &_User_extensions_List, the_node ) ;         
        the_node = the_node->next ) {                                 
                                                                      
    the_extension = (User_extensions_Control *) the_node;             
                                                                      
    if ( the_extension->Callouts.thread_create != NULL ) {            
   48354:	206a 0014      	moveal %a2@(20),%a0                         
   48358:	4a88           	tstl %a0                                    
   4835a:	6710           	beqs 4836c <_User_extensions_Thread_create+0x2c>
      status = (*the_extension->Callouts.thread_create)(              
   4835c:	2f02           	movel %d2,%sp@-                             
   4835e:	2f39 0005 c884 	movel 5c884 <_Per_CPU_Information+0xc>,%sp@-
   48364:	4e90           	jsr %a0@                                    
        _Thread_Executing,                                            
        the_thread                                                    
      );                                                              
      if ( !status )                                                  
   48366:	508f           	addql #8,%sp                                
   48368:	4a00           	tstb %d0                                    
   4836a:	670e           	beqs 4837a <_User_extensions_Thread_create+0x3a><== NEVER TAKEN
  User_extensions_Control *the_extension;                             
  bool                     status;                                    
                                                                      
  for ( the_node = _Chain_First( &_User_extensions_List );            
        !_Chain_Is_tail( &_User_extensions_List, the_node ) ;         
        the_node = the_node->next ) {                                 
   4836c:	2452           	moveal %a2@,%a2                             
{                                                                     
  Chain_Node              *the_node;                                  
  User_extensions_Control *the_extension;                             
  bool                     status;                                    
                                                                      
  for ( the_node = _Chain_First( &_User_extensions_List );            
   4836e:	b5fc 0005 c838 	cmpal #378936,%a2                           
   48374:	66de           	bnes 48354 <_User_extensions_Thread_create+0x14>
      if ( !status )                                                  
        return false;                                                 
    }                                                                 
  }                                                                   
                                                                      
  return true;                                                        
   48376:	7001           	moveq #1,%d0                                
   48378:	6002           	bras 4837c <_User_extensions_Thread_create+0x3c>
      status = (*the_extension->Callouts.thread_create)(              
        _Thread_Executing,                                            
        the_thread                                                    
      );                                                              
      if ( !status )                                                  
        return false;                                                 
   4837a:	4200           	clrb %d0                                    <== NOT EXECUTED
    }                                                                 
  }                                                                   
                                                                      
  return true;                                                        
}                                                                     
   4837c:	242e fff8      	movel %fp@(-8),%d2                          
   48380:	246e fffc      	moveal %fp@(-4),%a2                         
   48384:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00048388 <_User_extensions_Thread_delete>: #include <rtems/score/userext.h> void _User_extensions_Thread_delete ( Thread_Control *the_thread ) {
   48388:	4e56 0000      	linkw %fp,#0                                
   4838c:	2f0a           	movel %a2,%sp@-                             
      (*the_extension->Callouts.thread_delete)(                       
        _Thread_Executing,                                            
        the_thread                                                    
      );                                                              
  }                                                                   
}                                                                     
   4838e:	2479 0005 c83c 	moveal 5c83c <_User_extensions_List+0x8>,%a2
#include <rtems/score/userext.h>                                      
                                                                      
void _User_extensions_Thread_delete (                                 
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
   48394:	2f02           	movel %d2,%sp@-                             
   48396:	242e 0008      	movel %fp@(8),%d2                           
  Chain_Node              *the_node;                                  
  User_extensions_Control *the_extension;                             
                                                                      
  for ( the_node = _Chain_Last( &_User_extensions_List );             
   4839a:	6018           	bras 483b4 <_User_extensions_Thread_delete+0x2c>
        !_Chain_Is_head( &_User_extensions_List, the_node ) ;         
        the_node = the_node->previous ) {                             
                                                                      
    the_extension = (User_extensions_Control *) the_node;             
                                                                      
    if ( the_extension->Callouts.thread_delete != NULL )              
   4839c:	206a 0020      	moveal %a2@(32),%a0                         
   483a0:	4a88           	tstl %a0                                    
   483a2:	670c           	beqs 483b0 <_User_extensions_Thread_delete+0x28><== NEVER TAKEN
      (*the_extension->Callouts.thread_delete)(                       
   483a4:	2f02           	movel %d2,%sp@-                             
   483a6:	2f39 0005 c884 	movel 5c884 <_Per_CPU_Information+0xc>,%sp@-
   483ac:	4e90           	jsr %a0@                                    
   483ae:	508f           	addql #8,%sp                                
  Chain_Node              *the_node;                                  
  User_extensions_Control *the_extension;                             
                                                                      
  for ( the_node = _Chain_Last( &_User_extensions_List );             
        !_Chain_Is_head( &_User_extensions_List, the_node ) ;         
        the_node = the_node->previous ) {                             
   483b0:	246a 0004      	moveal %a2@(4),%a2                          
)                                                                     
{                                                                     
  Chain_Node              *the_node;                                  
  User_extensions_Control *the_extension;                             
                                                                      
  for ( the_node = _Chain_Last( &_User_extensions_List );             
   483b4:	b5fc 0005 c834 	cmpal #378932,%a2                           
   483ba:	66e0           	bnes 4839c <_User_extensions_Thread_delete+0x14>
      (*the_extension->Callouts.thread_delete)(                       
        _Thread_Executing,                                            
        the_thread                                                    
      );                                                              
  }                                                                   
}                                                                     
   483bc:	242e fff8      	movel %fp@(-8),%d2                          
   483c0:	246e fffc      	moveal %fp@(-4),%a2                         
   483c4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000482bc <_User_extensions_Thread_exitted>: void _User_extensions_Thread_exitted ( Thread_Control *executing ) {
   482bc:	4e56 0000      	linkw %fp,#0                                
   482c0:	2f0a           	movel %a2,%sp@-                             
    the_extension = (User_extensions_Control *) the_node;             
                                                                      
    if ( the_extension->Callouts.fatal != NULL )                      
      (*the_extension->Callouts.fatal)( the_source, is_internal, the_error );
  }                                                                   
}                                                                     
   482c2:	2479 0005 c83c 	moveal 5c83c <_User_extensions_List+0x8>,%a2
}                                                                     
                                                                      
void _User_extensions_Thread_exitted (                                
  Thread_Control *executing                                           
)                                                                     
{                                                                     
   482c8:	2f02           	movel %d2,%sp@-                             
   482ca:	242e 0008      	movel %fp@(8),%d2                           
  Chain_Node              *the_node;                                  
  User_extensions_Control *the_extension;                             
                                                                      
  for ( the_node = _Chain_Last( &_User_extensions_List );             
   482ce:	6012           	bras 482e2 <_User_extensions_Thread_exitted+0x26>
        !_Chain_Is_head( &_User_extensions_List, the_node ) ;         
        the_node = the_node->previous ) {                             
                                                                      
    the_extension = (User_extensions_Control *) the_node;             
                                                                      
    if ( the_extension->Callouts.thread_exitted != NULL )             
   482d0:	206a 002c      	moveal %a2@(44),%a0                         
   482d4:	4a88           	tstl %a0                                    
   482d6:	6706           	beqs 482de <_User_extensions_Thread_exitted+0x22><== ALWAYS TAKEN
      (*the_extension->Callouts.thread_exitted)( executing );         
   482d8:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   482da:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   482dc:	588f           	addql #4,%sp                                <== NOT EXECUTED
  Chain_Node              *the_node;                                  
  User_extensions_Control *the_extension;                             
                                                                      
  for ( the_node = _Chain_Last( &_User_extensions_List );             
        !_Chain_Is_head( &_User_extensions_List, the_node ) ;         
        the_node = the_node->previous ) {                             
   482de:	246a 0004      	moveal %a2@(4),%a2                          
)                                                                     
{                                                                     
  Chain_Node              *the_node;                                  
  User_extensions_Control *the_extension;                             
                                                                      
  for ( the_node = _Chain_Last( &_User_extensions_List );             
   482e2:	b5fc 0005 c834 	cmpal #378932,%a2                           
   482e8:	66e6           	bnes 482d0 <_User_extensions_Thread_exitted+0x14>
    the_extension = (User_extensions_Control *) the_node;             
                                                                      
    if ( the_extension->Callouts.thread_exitted != NULL )             
      (*the_extension->Callouts.thread_exitted)( executing );         
  }                                                                   
}                                                                     
   482ea:	242e fff8      	movel %fp@(-8),%d2                          
   482ee:	246e fffc      	moveal %fp@(-4),%a2                         
   482f2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00048c04 <_User_extensions_Thread_restart>: #include <rtems/score/userext.h> void _User_extensions_Thread_restart ( Thread_Control *the_thread ) {
   48c04:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   48c08:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
      (*the_extension->Callouts.thread_restart)(                      
        _Thread_Executing,                                            
        the_thread                                                    
      );                                                              
  }                                                                   
}                                                                     
   48c0a:	2479 0005 d35c 	moveal 5d35c <_User_extensions_List>,%a2    <== NOT EXECUTED
#include <rtems/score/userext.h>                                      
                                                                      
void _User_extensions_Thread_restart (                                
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
   48c10:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   48c12:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
  Chain_Node              *the_node;                                  
  User_extensions_Control *the_extension;                             
                                                                      
  for ( the_node = _Chain_First( &_User_extensions_List );            
   48c16:	6016           	bras 48c2e <_User_extensions_Thread_restart+0x2a><== NOT EXECUTED
        !_Chain_Is_tail( &_User_extensions_List, the_node ) ;         
        the_node = the_node->next ) {                                 
                                                                      
    the_extension = (User_extensions_Control *) the_node;             
                                                                      
    if ( the_extension->Callouts.thread_restart != NULL )             
   48c18:	206a 001c      	moveal %a2@(28),%a0                         <== NOT EXECUTED
   48c1c:	4a88           	tstl %a0                                    <== NOT EXECUTED
   48c1e:	670c           	beqs 48c2c <_User_extensions_Thread_restart+0x28><== NOT EXECUTED
      (*the_extension->Callouts.thread_restart)(                      
   48c20:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   48c22:	2f39 0005 d3ac 	movel 5d3ac <_Per_CPU_Information+0xc>,%sp@-<== NOT EXECUTED
   48c28:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   48c2a:	508f           	addql #8,%sp                                <== NOT EXECUTED
  Chain_Node              *the_node;                                  
  User_extensions_Control *the_extension;                             
                                                                      
  for ( the_node = _Chain_First( &_User_extensions_List );            
        !_Chain_Is_tail( &_User_extensions_List, the_node ) ;         
        the_node = the_node->next ) {                                 
   48c2c:	2452           	moveal %a2@,%a2                             <== NOT EXECUTED
)                                                                     
{                                                                     
  Chain_Node              *the_node;                                  
  User_extensions_Control *the_extension;                             
                                                                      
  for ( the_node = _Chain_First( &_User_extensions_List );            
   48c2e:	b5fc 0005 d360 	cmpal #381792,%a2                           <== NOT EXECUTED
   48c34:	66e2           	bnes 48c18 <_User_extensions_Thread_restart+0x14><== NOT EXECUTED
      (*the_extension->Callouts.thread_restart)(                      
        _Thread_Executing,                                            
        the_thread                                                    
      );                                                              
  }                                                                   
}                                                                     
   48c36:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   48c3a:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   48c3e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00049940 <_Watchdog_Adjust>: Watchdog_Interval units ) { ISR_Level level; _ISR_Disable( level );
   49940:	327c 0700      	moveaw #1792,%a1                            <== NOT EXECUTED
   49944:	2209           	movel %a1,%d1                               <== NOT EXECUTED
void _Watchdog_Adjust(                                                
  Chain_Control               *header,                                
  Watchdog_Adjust_directions   direction,                             
  Watchdog_Interval            units                                  
)                                                                     
{                                                                     
   49946:	4e56 ffe8      	linkw %fp,#-24                              <== NOT EXECUTED
   4994a:	48d7 1c1c      	moveml %d2-%d4/%a2-%a4,%sp@                 <== NOT EXECUTED
   4994e:	266e 0008      	moveal %fp@(8),%a3                          <== NOT EXECUTED
   49952:	262e 000c      	movel %fp@(12),%d3                          <== NOT EXECUTED
   49956:	242e 0010      	movel %fp@(16),%d2                          <== NOT EXECUTED
  ISR_Level level;                                                    
                                                                      
  _ISR_Disable( level );                                              
   4995a:	40c0           	movew %sr,%d0                               <== NOT EXECUTED
   4995c:	8280           	orl %d0,%d1                                 <== NOT EXECUTED
   4995e:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
    }                                                                 
  }                                                                   
                                                                      
  _ISR_Enable( level );                                               
                                                                      
}                                                                     
   49960:	244b           	moveal %a3,%a2                              <== NOT EXECUTED
   49962:	205a           	moveal %a2@+,%a0                            <== NOT EXECUTED
   *       hence the compiler must not assume *header to remain       
   *       unmodified across that call.                               
   *                                                                  
   *       Till Straumann, 7/2003                                     
   */                                                                 
  if ( !_Chain_Is_empty( header ) ) {                                 
   49964:	b5c8           	cmpal %a0,%a2                               <== NOT EXECUTED
   49966:	674c           	beqs 499b4 <_Watchdog_Adjust+0x74>          <== NOT EXECUTED
    switch ( direction ) {                                            
   49968:	4a83           	tstl %d3                                    <== NOT EXECUTED
   4996a:	673c           	beqs 499a8 <_Watchdog_Adjust+0x68>          <== NOT EXECUTED
   4996c:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   4996e:	b283           	cmpl %d3,%d1                                <== NOT EXECUTED
   49970:	6642           	bnes 499b4 <_Watchdog_Adjust+0x74>          <== NOT EXECUTED
      case WATCHDOG_BACKWARD:                                         
        _Watchdog_First( header )->delta_interval += units;           
   49972:	d5a8 0010      	addl %d2,%a0@(16)                           <== NOT EXECUTED
        break;                                                        
   49976:	603c           	bras 499b4 <_Watchdog_Adjust+0x74>          <== NOT EXECUTED
RTEMS_INLINE_ROUTINE Watchdog_Control *_Watchdog_First(               
  Chain_Control *header                                               
)                                                                     
{                                                                     
                                                                      
  return ( (Watchdog_Control *) _Chain_First( header ) );             
   49978:	2053           	moveal %a3@,%a0                             <== NOT EXECUTED
      case WATCHDOG_FORWARD:                                          
        while ( units ) {                                             
          if ( units < _Watchdog_First( header )->delta_interval ) {  
   4997a:	2628 0010      	movel %a0@(16),%d3                          <== NOT EXECUTED
   4997e:	b682           	cmpl %d2,%d3                                <== NOT EXECUTED
   49980:	6308           	blss 4998a <_Watchdog_Adjust+0x4a>          <== NOT EXECUTED
            _Watchdog_First( header )->delta_interval -= units;       
   49982:	9682           	subl %d2,%d3                                <== NOT EXECUTED
   49984:	2143 0010      	movel %d3,%a0@(16)                          <== NOT EXECUTED
            break;                                                    
   49988:	602a           	bras 499b4 <_Watchdog_Adjust+0x74>          <== NOT EXECUTED
          } else {                                                    
            units -= _Watchdog_First( header )->delta_interval;       
            _Watchdog_First( header )->delta_interval = 1;            
   4998a:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   4998c:	2141 0010      	movel %d1,%a0@(16)                          <== NOT EXECUTED
                                                                      
            _ISR_Enable( level );                                     
   49990:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
                                                                      
            _Watchdog_Tickle( header );                               
   49992:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   49994:	4e94           	jsr %a4@                                    <== NOT EXECUTED
                                                                      
            _ISR_Disable( level );                                    
   49996:	2204           	movel %d4,%d1                               <== NOT EXECUTED
   49998:	40c0           	movew %sr,%d0                               <== NOT EXECUTED
   4999a:	8280           	orl %d0,%d1                                 <== NOT EXECUTED
   4999c:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
                                                                      
            if ( _Chain_Is_empty( header ) )                          
   4999e:	588f           	addql #4,%sp                                <== NOT EXECUTED
   499a0:	b5d3           	cmpal %a3@,%a2                              <== NOT EXECUTED
   499a2:	6710           	beqs 499b4 <_Watchdog_Adjust+0x74>          <== NOT EXECUTED
        while ( units ) {                                             
          if ( units < _Watchdog_First( header )->delta_interval ) {  
            _Watchdog_First( header )->delta_interval -= units;       
            break;                                                    
          } else {                                                    
            units -= _Watchdog_First( header )->delta_interval;       
   499a4:	9483           	subl %d3,%d2                                <== NOT EXECUTED
   499a6:	6008           	bras 499b0 <_Watchdog_Adjust+0x70>          <== NOT EXECUTED
            _Watchdog_First( header )->delta_interval = 1;            
                                                                      
            _ISR_Enable( level );                                     
                                                                      
            _Watchdog_Tickle( header );                               
   499a8:	49f9 0004 9b64 	lea 49b64 <_Watchdog_Tickle>,%a4            <== NOT EXECUTED
                                                                      
            _ISR_Disable( level );                                    
   499ae:	2809           	movel %a1,%d4                               <== NOT EXECUTED
    switch ( direction ) {                                            
      case WATCHDOG_BACKWARD:                                         
        _Watchdog_First( header )->delta_interval += units;           
        break;                                                        
      case WATCHDOG_FORWARD:                                          
        while ( units ) {                                             
   499b0:	4a82           	tstl %d2                                    <== NOT EXECUTED
   499b2:	66c4           	bnes 49978 <_Watchdog_Adjust+0x38>          <== NOT EXECUTED
        }                                                             
        break;                                                        
    }                                                                 
  }                                                                   
                                                                      
  _ISR_Enable( level );                                               
   499b4:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
                                                                      
}                                                                     
   499b6:	4cee 1c1c ffe8 	moveml %fp@(-24),%d2-%d4/%a2-%a4            <== NOT EXECUTED
   499bc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00055c88 <_Watchdog_Adjust_to_chain>: Chain_Control *header, Watchdog_Interval units_arg, Chain_Control *to_fire ) {
   55c88:	4e56 ffe8      	linkw %fp,#-24                              <== NOT EXECUTED
   55c8c:	202e 000c      	movel %fp@(12),%d0                          <== NOT EXECUTED
   55c90:	48d7 1c1c      	moveml %d2-%d4/%a2-%a4,%sp@                 <== NOT EXECUTED
   55c94:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   55c98:	266e 0010      	moveal %fp@(16),%a3                         <== NOT EXECUTED
  Watchdog_Interval  units = units_arg;                               
  ISR_Level          level;                                           
  Watchdog_Control  *first;                                           
                                                                      
  if ( units <= 0 ) {                                                 
   55c9c:	4a80           	tstl %d0                                    <== NOT EXECUTED
   55c9e:	6770           	beqs 55d10 <_Watchdog_Adjust_to_chain+0x88> <== NOT EXECUTED
    return;                                                           
  }                                                                   
                                                                      
  _ISR_Disable( level );                                              
   55ca0:	307c 0700      	moveaw #1792,%a0                            <== NOT EXECUTED
   55ca4:	2208           	movel %a0,%d1                               <== NOT EXECUTED
   55ca6:	40c2           	movew %sr,%d2                               <== NOT EXECUTED
   55ca8:	8282           	orl %d2,%d1                                 <== NOT EXECUTED
   55caa:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  const Chain_Control *the_chain                                      
)                                                                     
{                                                                     
  return _Chain_Immutable_first( the_chain )                          
    == _Chain_Immutable_tail( the_chain );                            
   55cac:	260a           	movel %a2,%d3                               <== NOT EXECUTED
   55cae:	5883           	addql #4,%d3                                <== NOT EXECUTED
                                                                      
    while ( 1 ) {                                                     
      _Chain_Extract_unprotected( &first->Node );                     
      _Chain_Append_unprotected( to_fire, &first->Node );             
                                                                      
      _ISR_Flash( level );                                            
   55cb0:	2808           	movel %a0,%d4                               <== NOT EXECUTED
   55cb2:	6004           	bras 55cb8 <_Watchdog_Adjust_to_chain+0x30> <== NOT EXECUTED
  }                                                                   
                                                                      
  _ISR_Disable( level );                                              
                                                                      
  while ( 1 ) {                                                       
    if ( units <= 0 ) {                                               
   55cb4:	4a80           	tstl %d0                                    <== NOT EXECUTED
   55cb6:	6756           	beqs 55d0e <_Watchdog_Adjust_to_chain+0x86> <== NOT EXECUTED
        break;                                                        
    }                                                                 
  }                                                                   
                                                                      
  _ISR_Enable( level );                                               
}                                                                     
   55cb8:	2252           	moveal %a2@,%a1                             <== NOT EXECUTED
                                                                      
  while ( 1 ) {                                                       
    if ( units <= 0 ) {                                               
      break;                                                          
    }                                                                 
    if ( _Chain_Is_empty( header ) ) {                                
   55cba:	b689           	cmpl %a1,%d3                                <== NOT EXECUTED
   55cbc:	6750           	beqs 55d0e <_Watchdog_Adjust_to_chain+0x86> <== NOT EXECUTED
                                                                      
    /*                                                                
     *  If it is longer than "units" until the first element on the chain
     *  fires, then bump it and quit.                                 
     */                                                               
    if ( units < first->delta_interval ) {                            
   55cbe:	2229 0010      	movel %a1@(16),%d1                          <== NOT EXECUTED
   55cc2:	2049           	moveal %a1,%a0                              <== NOT EXECUTED
   55cc4:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   55cc6:	6308           	blss 55cd0 <_Watchdog_Adjust_to_chain+0x48> <== NOT EXECUTED
      first->delta_interval -= units;                                 
   55cc8:	9280           	subl %d0,%d1                                <== NOT EXECUTED
   55cca:	2341 0010      	movel %d1,%a1@(16)                          <== NOT EXECUTED
      break;                                                          
   55cce:	603e           	bras 55d0e <_Watchdog_Adjust_to_chain+0x86> <== NOT EXECUTED
                                                                      
    /*                                                                
     *  The first set happens in less than units, so take all of them 
     *  off the chain and adjust units to reflect this.               
     */                                                               
    units -= first->delta_interval;                                   
   55cd0:	9081           	subl %d1,%d0                                <== NOT EXECUTED
    first->delta_interval = 0;                                        
   55cd2:	42a9 0010      	clrl %a1@(16)                               <== NOT EXECUTED
{                                                                     
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
  previous       = the_node->previous;                                
   55cd6:	2268 0004      	moveal %a0@(4),%a1                          <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Chain_Append_unprotected(                  
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   55cda:	220b           	movel %a3,%d1                               <== NOT EXECUTED
   55cdc:	5881           	addql #4,%d1                                <== NOT EXECUTED
)                                                                     
{                                                                     
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
   55cde:	2850           	moveal %a0@,%a4                             <== NOT EXECUTED
  previous       = the_node->previous;                                
  next->previous = previous;                                          
  previous->next = next;                                              
   55ce0:	228c           	movel %a4,%a1@                              <== NOT EXECUTED
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
  previous       = the_node->previous;                                
  next->previous = previous;                                          
   55ce2:	2949 0004      	movel %a1,%a4@(4)                           <== NOT EXECUTED
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
  Chain_Node *old_last = tail->previous;                              
   55ce6:	226b 0008      	moveal %a3@(8),%a1                          <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Chain_Append_unprotected(                  
  Chain_Control *the_chain,                                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *tail = _Chain_Tail( the_chain );                        
   55cea:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
  Chain_Node *old_last = tail->previous;                              
                                                                      
  the_node->next = tail;                                              
  tail->previous = the_node;                                          
   55cec:	2748 0008      	movel %a0,%a3@(8)                           <== NOT EXECUTED
  old_last->next = the_node;                                          
   55cf0:	2288           	movel %a0,%a1@                              <== NOT EXECUTED
  the_node->previous = old_last;                                      
   55cf2:	2149 0004      	movel %a1,%a0@(4)                           <== NOT EXECUTED
                                                                      
    while ( 1 ) {                                                     
      _Chain_Extract_unprotected( &first->Node );                     
      _Chain_Append_unprotected( to_fire, &first->Node );             
                                                                      
      _ISR_Flash( level );                                            
   55cf6:	2204           	movel %d4,%d1                               <== NOT EXECUTED
   55cf8:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
   55cfa:	8282           	orl %d2,%d1                                 <== NOT EXECUTED
   55cfc:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
        break;                                                        
    }                                                                 
  }                                                                   
                                                                      
  _ISR_Enable( level );                                               
}                                                                     
   55cfe:	2212           	movel %a2@,%d1                              <== NOT EXECUTED
      _Chain_Extract_unprotected( &first->Node );                     
      _Chain_Append_unprotected( to_fire, &first->Node );             
                                                                      
      _ISR_Flash( level );                                            
                                                                      
      if ( _Chain_Is_empty( header ) )                                
   55d00:	b681           	cmpl %d1,%d3                                <== NOT EXECUTED
   55d02:	67b0           	beqs 55cb4 <_Watchdog_Adjust_to_chain+0x2c> <== NOT EXECUTED
   55d04:	2041           	moveal %d1,%a0                              <== NOT EXECUTED
        break;                                                        
      first = _Watchdog_First( header );                              
      if ( first->delta_interval != 0 )                               
   55d06:	4aa8 0010      	tstl %a0@(16)                               <== NOT EXECUTED
   55d0a:	67ca           	beqs 55cd6 <_Watchdog_Adjust_to_chain+0x4e> <== NOT EXECUTED
   55d0c:	60a6           	bras 55cb4 <_Watchdog_Adjust_to_chain+0x2c> <== NOT EXECUTED
        break;                                                        
    }                                                                 
  }                                                                   
                                                                      
  _ISR_Enable( level );                                               
   55d0e:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
}                                                                     
   55d10:	4cd7 1c1c      	moveml %sp@,%d2-%d4/%a2-%a4                 <== NOT EXECUTED
   55d14:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00048440 <_Watchdog_Insert>: Watchdog_Interval delta_interval; insert_isr_nest_level = _ISR_Nest_level; _ISR_Disable( level );
   48440:	327c 0700      	moveaw #1792,%a1                            
   48444:	2009           	movel %a1,%d0                               
                                                                      
void _Watchdog_Insert(                                                
  Chain_Control         *header,                                      
  Watchdog_Control      *the_watchdog                                 
)                                                                     
{                                                                     
   48446:	4e56 ffec      	linkw %fp,#-20                              
   4844a:	206e 000c      	moveal %fp@(12),%a0                         
   4844e:	48d7 0c1c      	moveml %d2-%d4/%a2-%a3,%sp@                 
   48452:	266e 0008      	moveal %fp@(8),%a3                          
  Watchdog_Control  *after;                                           
  uint32_t           insert_isr_nest_level;                           
  Watchdog_Interval  delta_interval;                                  
                                                                      
                                                                      
  insert_isr_nest_level   = _ISR_Nest_level;                          
   48456:	2439 0005 c880 	movel 5c880 <_Per_CPU_Information+0x8>,%d2  
                                                                      
  _ISR_Disable( level );                                              
   4845c:	40c1           	movew %sr,%d1                               
   4845e:	8081           	orl %d1,%d0                                 
   48460:	46c0           	movew %d0,%sr                               
  /*                                                                  
   *  Check to see if the watchdog has just been inserted by a        
   *  higher priority interrupt.  If so, abandon this insert.         
   */                                                                 
                                                                      
  if ( the_watchdog->state != WATCHDOG_INACTIVE ) {                   
   48462:	4aa8 0008      	tstl %a0@(8)                                
   48466:	6706           	beqs 4846e <_Watchdog_Insert+0x2e>          <== ALWAYS TAKEN
    _ISR_Enable( level );                                             
   48468:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
    return;                                                           
   4846a:	6000 009a      	braw 48506 <_Watchdog_Insert+0xc6>          <== NOT EXECUTED
  }                                                                   
                                                                      
  the_watchdog->state = WATCHDOG_BEING_INSERTED;                      
   4846e:	7001           	moveq #1,%d0                                
       break;                                                         
     }                                                                
                                                                      
     delta_interval -= after->delta_interval;                         
                                                                      
     _ISR_Flash( level );                                             
   48470:	2449           	moveal %a1,%a2                              
  if ( the_watchdog->state != WATCHDOG_INACTIVE ) {                   
    _ISR_Enable( level );                                             
    return;                                                           
  }                                                                   
                                                                      
  the_watchdog->state = WATCHDOG_BEING_INSERTED;                      
   48472:	2140 0008      	movel %d0,%a0@(8)                           
  _Watchdog_Sync_count++;                                             
   48476:	2039 0005 c7ec 	movel 5c7ec <_Watchdog_Sync_count>,%d0      
   4847c:	5280           	addql #1,%d0                                
   4847e:	23c0 0005 c7ec 	movel %d0,5c7ec <_Watchdog_Sync_count>      
                                                                      
restart:                                                              
  delta_interval = the_watchdog->initial;                             
   48484:	2028 000c      	movel %a0@(12),%d0                          
RTEMS_INLINE_ROUTINE Watchdog_Control *_Watchdog_First(               
  Chain_Control *header                                               
)                                                                     
{                                                                     
                                                                      
  return ( (Watchdog_Control *) _Chain_First( header ) );             
   48488:	2253           	moveal %a3@,%a1                             
                                                                      
  for ( after = _Watchdog_First( header ) ;                           
        ;                                                             
        after = _Watchdog_Next( after ) ) {                           
                                                                      
     if ( delta_interval == 0 || !_Watchdog_Next( after ) )           
   4848a:	4a80           	tstl %d0                                    
   4848c:	673c           	beqs 484ca <_Watchdog_Insert+0x8a>          <== NEVER TAKEN
   4848e:	4a91           	tstl %a1@                                   
   48490:	6738           	beqs 484ca <_Watchdog_Insert+0x8a>          <== ALWAYS TAKEN
       break;                                                         
                                                                      
     if ( delta_interval < after->delta_interval ) {                  
   48492:	2629 0010      	movel %a1@(16),%d3                          <== NOT EXECUTED
   48496:	b680           	cmpl %d0,%d3                                <== NOT EXECUTED
   48498:	6308           	blss 484a2 <_Watchdog_Insert+0x62>          <== NOT EXECUTED
       after->delta_interval -= delta_interval;                       
   4849a:	9680           	subl %d0,%d3                                <== NOT EXECUTED
   4849c:	2343 0010      	movel %d3,%a1@(16)                          <== NOT EXECUTED
       break;                                                         
   484a0:	6028           	bras 484ca <_Watchdog_Insert+0x8a>          <== NOT EXECUTED
     }                                                                
                                                                      
     delta_interval -= after->delta_interval;                         
                                                                      
     _ISR_Flash( level );                                             
   484a2:	280a           	movel %a2,%d4                               <== NOT EXECUTED
   484a4:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
   484a6:	8881           	orl %d1,%d4                                 <== NOT EXECUTED
   484a8:	46c4           	movew %d4,%sr                               <== NOT EXECUTED
                                                                      
     if ( the_watchdog->state != WATCHDOG_BEING_INSERTED ) {          
   484aa:	7801           	moveq #1,%d4                                <== NOT EXECUTED
   484ac:	b8a8 0008      	cmpl %a0@(8),%d4                            <== NOT EXECUTED
   484b0:	663e           	bnes 484f0 <_Watchdog_Insert+0xb0>          <== NOT EXECUTED
       goto exit_insert;                                              
     }                                                                
                                                                      
     if ( _Watchdog_Sync_level > insert_isr_nest_level ) {            
   484b2:	2839 0005 c78c 	movel 5c78c <_Watchdog_Sync_level>,%d4      <== NOT EXECUTED
   484b8:	b484           	cmpl %d4,%d2                                <== NOT EXECUTED
   484ba:	6408           	bccs 484c4 <_Watchdog_Insert+0x84>          <== NOT EXECUTED
       _Watchdog_Sync_level = insert_isr_nest_level;                  
   484bc:	23c2 0005 c78c 	movel %d2,5c78c <_Watchdog_Sync_level>      <== NOT EXECUTED
       goto restart;                                                  
   484c2:	60c0           	bras 48484 <_Watchdog_Insert+0x44>          <== NOT EXECUTED
                                                                      
exit_insert:                                                          
  _Watchdog_Sync_level = insert_isr_nest_level;                       
  _Watchdog_Sync_count--;                                             
  _ISR_Enable( level );                                               
}                                                                     
   484c4:	2251           	moveal %a1@,%a1                             <== NOT EXECUTED
     if ( delta_interval < after->delta_interval ) {                  
       after->delta_interval -= delta_interval;                       
       break;                                                         
     }                                                                
                                                                      
     delta_interval -= after->delta_interval;                         
   484c6:	9083           	subl %d3,%d0                                <== NOT EXECUTED
                                                                      
     if ( _Watchdog_Sync_level > insert_isr_nest_level ) {            
       _Watchdog_Sync_level = insert_isr_nest_level;                  
       goto restart;                                                  
     }                                                                
  }                                                                   
   484c8:	60c0           	bras 4848a <_Watchdog_Insert+0x4a>          <== NOT EXECUTED
                                                                      
  _Watchdog_Activate( the_watchdog );                                 
                                                                      
  the_watchdog->delta_interval = delta_interval;                      
                                                                      
  _Chain_Insert_unprotected( after->Node.previous, &the_watchdog->Node );
   484ca:	2269 0004      	moveal %a1@(4),%a1                          
RTEMS_INLINE_ROUTINE void _Watchdog_Activate(                         
  Watchdog_Control *the_watchdog                                      
)                                                                     
{                                                                     
                                                                      
  the_watchdog->state = WATCHDOG_ACTIVE;                              
   484ce:	7602           	moveq #2,%d3                                
)                                                                     
{                                                                     
  Chain_Node *before_node;                                            
                                                                      
  the_node->previous    = after_node;                                 
  before_node           = after_node->next;                           
   484d0:	2451           	moveal %a1@,%a2                             
     }                                                                
  }                                                                   
                                                                      
  _Watchdog_Activate( the_watchdog );                                 
                                                                      
  the_watchdog->delta_interval = delta_interval;                      
   484d2:	2140 0010      	movel %d0,%a0@(16)                          
                                                                      
  _Chain_Insert_unprotected( after->Node.previous, &the_watchdog->Node );
                                                                      
  the_watchdog->start_time = _Watchdog_Ticks_since_boot;              
   484d6:	2039 0005 c7f0 	movel 5c7f0 <_Watchdog_Ticks_since_boot>,%d0
   484dc:	2143 0008      	movel %d3,%a0@(8)                           
  Chain_Node *the_node                                                
)                                                                     
{                                                                     
  Chain_Node *before_node;                                            
                                                                      
  the_node->previous    = after_node;                                 
   484e0:	2149 0004      	movel %a1,%a0@(4)                           
  before_node           = after_node->next;                           
  after_node->next      = the_node;                                   
   484e4:	2288           	movel %a0,%a1@                              
  the_node->next        = before_node;                                
  before_node->previous = the_node;                                   
   484e6:	2548 0004      	movel %a0,%a2@(4)                           
  Chain_Node *before_node;                                            
                                                                      
  the_node->previous    = after_node;                                 
  before_node           = after_node->next;                           
  after_node->next      = the_node;                                   
  the_node->next        = before_node;                                
   484ea:	208a           	movel %a2,%a0@                              
   484ec:	2140 0014      	movel %d0,%a0@(20)                          
                                                                      
exit_insert:                                                          
  _Watchdog_Sync_level = insert_isr_nest_level;                       
   484f0:	23c2 0005 c78c 	movel %d2,5c78c <_Watchdog_Sync_level>      
  _Watchdog_Sync_count--;                                             
   484f6:	2039 0005 c7ec 	movel 5c7ec <_Watchdog_Sync_count>,%d0      
   484fc:	5380           	subql #1,%d0                                
   484fe:	23c0 0005 c7ec 	movel %d0,5c7ec <_Watchdog_Sync_count>      
  _ISR_Enable( level );                                               
   48504:	46c1           	movew %d1,%sr                               
}                                                                     
   48506:	4cd7 0c1c      	moveml %sp@,%d2-%d4/%a2-%a3                 
   4850a:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

00048568 <_Watchdog_Remove>: { ISR_Level level; Watchdog_States previous_state; Watchdog_Control *next_watchdog; _ISR_Disable( level );
   48568:	203c 0000 0700 	movel #1792,%d0                             
 */                                                                   
                                                                      
Watchdog_States _Watchdog_Remove(                                     
  Watchdog_Control *the_watchdog                                      
)                                                                     
{                                                                     
   4856e:	4e56 0000      	linkw %fp,#0                                
   48572:	206e 0008      	moveal %fp@(8),%a0                          
   48576:	2f0a           	movel %a2,%sp@-                             
   48578:	2f02           	movel %d2,%sp@-                             
  ISR_Level         level;                                            
  Watchdog_States   previous_state;                                   
  Watchdog_Control *next_watchdog;                                    
                                                                      
  _ISR_Disable( level );                                              
   4857a:	40c1           	movew %sr,%d1                               
   4857c:	8081           	orl %d1,%d0                                 
   4857e:	46c0           	movew %d0,%sr                               
  previous_state = the_watchdog->state;                               
   48580:	2028 0008      	movel %a0@(8),%d0                           
  switch ( previous_state ) {                                         
   48584:	7401           	moveq #1,%d2                                
   48586:	b480           	cmpl %d0,%d2                                
   48588:	670c           	beqs 48596 <_Watchdog_Remove+0x2e>          <== NEVER TAKEN
   4858a:	6242           	bhis 485ce <_Watchdog_Remove+0x66>          <== NEVER TAKEN
   4858c:	143c 0003      	moveb #3,%d2                                
   48590:	b480           	cmpl %d0,%d2                                
   48592:	653a           	bcss 485ce <_Watchdog_Remove+0x66>          <== NEVER TAKEN
   48594:	6006           	bras 4859c <_Watchdog_Remove+0x34>          
                                                                      
      /*                                                              
       *  It is not actually on the chain so just change the state and
       *  the Insert operation we interrupted will be aborted.        
       */                                                             
      the_watchdog->state = WATCHDOG_INACTIVE;                        
   48596:	42a8 0008      	clrl %a0@(8)                                <== NOT EXECUTED
      break;                                                          
   4859a:	6032           	bras 485ce <_Watchdog_Remove+0x66>          <== NOT EXECUTED
  }                                                                   
  the_watchdog->stop_time = _Watchdog_Ticks_since_boot;               
                                                                      
  _ISR_Enable( level );                                               
  return( previous_state );                                           
}                                                                     
   4859c:	2250           	moveal %a0@,%a1                             
      break;                                                          
                                                                      
    case WATCHDOG_ACTIVE:                                             
    case WATCHDOG_REMOVE_IT:                                          
                                                                      
      the_watchdog->state = WATCHDOG_INACTIVE;                        
   4859e:	42a8 0008      	clrl %a0@(8)                                
      next_watchdog = _Watchdog_Next( the_watchdog );                 
                                                                      
      if ( _Watchdog_Next(next_watchdog) )                            
   485a2:	4a91           	tstl %a1@                                   
   485a4:	6708           	beqs 485ae <_Watchdog_Remove+0x46>          <== ALWAYS TAKEN
        next_watchdog->delta_interval += the_watchdog->delta_interval;
   485a6:	2428 0010      	movel %a0@(16),%d2                          <== NOT EXECUTED
   485aa:	d5a9 0010      	addl %d2,%a1@(16)                           <== NOT EXECUTED
                                                                      
      if ( _Watchdog_Sync_count )                                     
   485ae:	2479 0005 c7ec 	moveal 5c7ec <_Watchdog_Sync_count>,%a2     
   485b4:	4a8a           	tstl %a2                                    
   485b6:	670c           	beqs 485c4 <_Watchdog_Remove+0x5c>          <== ALWAYS TAKEN
        _Watchdog_Sync_level = _ISR_Nest_level;                       
   485b8:	45f9 0005 c880 	lea 5c880 <_Per_CPU_Information+0x8>,%a2    <== NOT EXECUTED
   485be:	23d2 0005 c78c 	movel %a2@,5c78c <_Watchdog_Sync_level>     <== NOT EXECUTED
{                                                                     
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
  previous       = the_node->previous;                                
   485c4:	2468 0004      	moveal %a0@(4),%a2                          
  next->previous = previous;                                          
   485c8:	234a 0004      	movel %a2,%a1@(4)                           
  previous->next = next;                                              
   485cc:	2489           	movel %a1,%a2@                              
                                                                      
      _Chain_Extract_unprotected( &the_watchdog->Node );              
      break;                                                          
  }                                                                   
  the_watchdog->stop_time = _Watchdog_Ticks_since_boot;               
   485ce:	2279 0005 c7f0 	moveal 5c7f0 <_Watchdog_Ticks_since_boot>,%a1
   485d4:	2149 0018      	movel %a1,%a0@(24)                          
                                                                      
  _ISR_Enable( level );                                               
   485d8:	46c1           	movew %d1,%sr                               
  return( previous_state );                                           
}                                                                     
   485da:	241f           	movel %sp@+,%d2                             
   485dc:	245f           	moveal %sp@+,%a2                            
   485de:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

000495d4 <_Watchdog_Report>: void _Watchdog_Report( const char *name, Watchdog_Control *watch ) {
   495d4:	4e56 fff0      	linkw %fp,#-16                              <== NOT EXECUTED
  printk(                                                             
   495d8:	223c 0005 bb7d 	movel #375677,%d1                           <== NOT EXECUTED
                                                                      
void _Watchdog_Report(                                                
  const char        *name,                                            
  Watchdog_Control  *watch                                            
)                                                                     
{                                                                     
   495de:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
   495e2:	48d7 003c      	moveml %d2-%d5,%sp@                         <== NOT EXECUTED
   495e6:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
  printk(                                                             
   495ea:	2a28 0024      	movel %a0@(36),%d5                          <== NOT EXECUTED
   495ee:	2828 0020      	movel %a0@(32),%d4                          <== NOT EXECUTED
   495f2:	2628 001c      	movel %a0@(28),%d3                          <== NOT EXECUTED
   495f6:	2428 000c      	movel %a0@(12),%d2                          <== NOT EXECUTED
   495fa:	2268 0010      	moveal %a0@(16),%a1                         <== NOT EXECUTED
   495fe:	4a80           	tstl %d0                                    <== NOT EXECUTED
   49600:	6608           	bnes 4960a <_Watchdog_Report+0x36>          <== NOT EXECUTED
   49602:	223c 0005 bb82 	movel #375682,%d1                           <== NOT EXECUTED
   49608:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   4960a:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   4960c:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4960e:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   49610:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   49612:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   49614:	2f09           	movel %a1,%sp@-                             <== NOT EXECUTED
   49616:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   49618:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4961a:	4879 0005 bd0c 	pea 5bd0c <C.0.4108+0x44>                   <== NOT EXECUTED
   49620:	4eb9 0004 3dec 	jsr 43dec <printk>                          <== NOT EXECUTED
   49626:	4fef 0024      	lea %sp@(36),%sp                            <== NOT EXECUTED
    watch,                                                            
    watch->routine,                                                   
    watch->id,                                                        
    watch->user_data                                                  
  );                                                                  
}                                                                     
   4962a:	4cee 003c fff0 	moveml %fp@(-16),%d2-%d5                    <== NOT EXECUTED
   49630:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00049560 <_Watchdog_Report_chain>: ) { ISR_Level level; Chain_Node *node; _ISR_Disable( level );
   49560:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
                                                                      
void _Watchdog_Report_chain(                                          
  const char        *name,                                            
  Chain_Control     *header                                           
)                                                                     
{                                                                     
   49566:	4e56 ffec      	linkw %fp,#-20                              <== NOT EXECUTED
   4956a:	48d7 1c0c      	moveml %d2-%d3/%a2-%a4,%sp@                 <== NOT EXECUTED
   4956e:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
   49572:	266e 000c      	moveal %fp@(12),%a3                         <== NOT EXECUTED
  ISR_Level          level;                                           
  Chain_Node        *node;                                            
                                                                      
  _ISR_Disable( level );                                              
   49576:	40c3           	movew %sr,%d3                               <== NOT EXECUTED
   49578:	8083           	orl %d3,%d0                                 <== NOT EXECUTED
   4957a:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
    printk( "Watchdog Chain: %s %p\n", name, header );                
   4957c:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   4957e:	49f9 0004 3dec 	lea 43dec <printk>,%a4                      <== NOT EXECUTED
   49584:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   49586:	4879 0005 bcd6 	pea 5bcd6 <C.0.4108+0xe>                    <== NOT EXECUTED
   4958c:	4e94           	jsr %a4@                                    <== NOT EXECUTED
      printk( "== end of %s \n", name );                              
    } else {                                                          
      printk( "Chain is empty\n" );                                   
    }                                                                 
  _ISR_Enable( level );                                               
}                                                                     
   4958e:	245b           	moveal %a3@+,%a2                            <== NOT EXECUTED
  ISR_Level          level;                                           
  Chain_Node        *node;                                            
                                                                      
  _ISR_Disable( level );                                              
    printk( "Watchdog Chain: %s %p\n", name, header );                
    if ( !_Chain_Is_empty( header ) ) {                               
   49590:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   49594:	b7ca           	cmpal %a2,%a3                               <== NOT EXECUTED
   49596:	6726           	beqs 495be <_Watchdog_Report_chain+0x5e>    <== NOT EXECUTED
            node != _Chain_Tail(header) ;                             
            node = node->next )                                       
      {                                                               
        Watchdog_Control *watch = (Watchdog_Control *) node;          
                                                                      
        _Watchdog_Report( NULL, watch );                              
   49598:	49f9 0004 95d4 	lea 495d4 <_Watchdog_Report>,%a4            <== NOT EXECUTED
   4959e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   495a0:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   495a2:	4e94           	jsr %a4@                                    <== NOT EXECUTED
  _ISR_Disable( level );                                              
    printk( "Watchdog Chain: %s %p\n", name, header );                
    if ( !_Chain_Is_empty( header ) ) {                               
      for ( node = _Chain_First( header ) ;                           
            node != _Chain_Tail(header) ;                             
            node = node->next )                                       
   495a4:	2452           	moveal %a2@,%a2                             <== NOT EXECUTED
  Chain_Node        *node;                                            
                                                                      
  _ISR_Disable( level );                                              
    printk( "Watchdog Chain: %s %p\n", name, header );                
    if ( !_Chain_Is_empty( header ) ) {                               
      for ( node = _Chain_First( header ) ;                           
   495a6:	508f           	addql #8,%sp                                <== NOT EXECUTED
   495a8:	b7ca           	cmpal %a2,%a3                               <== NOT EXECUTED
   495aa:	66f2           	bnes 4959e <_Watchdog_Report_chain+0x3e>    <== NOT EXECUTED
      {                                                               
        Watchdog_Control *watch = (Watchdog_Control *) node;          
                                                                      
        _Watchdog_Report( NULL, watch );                              
      }                                                               
      printk( "== end of %s \n", name );                              
   495ac:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   495ae:	4879 0005 bced 	pea 5bced <C.0.4108+0x25>                   <== NOT EXECUTED
   495b4:	4eb9 0004 3dec 	jsr 43dec <printk>                          <== NOT EXECUTED
   495ba:	508f           	addql #8,%sp                                <== NOT EXECUTED
   495bc:	600a           	bras 495c8 <_Watchdog_Report_chain+0x68>    <== NOT EXECUTED
    } else {                                                          
      printk( "Chain is empty\n" );                                   
   495be:	4879 0005 bcfc 	pea 5bcfc <C.0.4108+0x34>                   <== NOT EXECUTED
   495c4:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   495c6:	588f           	addql #4,%sp                                <== NOT EXECUTED
    }                                                                 
  _ISR_Enable( level );                                               
   495c8:	46c3           	movew %d3,%sr                               <== NOT EXECUTED
}                                                                     
   495ca:	4cee 1c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a4            <== NOT EXECUTED
   495d0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000485e4 <_Watchdog_Tickle>: * See the comment in watchdoginsert.c and watchdogadjust.c * about why it's safe not to declare header a pointer to * volatile data - till, 2003/7 */ _ISR_Disable( level );
   485e4:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
 */                                                                   
                                                                      
void _Watchdog_Tickle(                                                
  Chain_Control *header                                               
)                                                                     
{                                                                     
   485ea:	4e56 ffe8      	linkw %fp,#-24                              <== NOT EXECUTED
   485ee:	48d7 3c0c      	moveml %d2-%d3/%a2-%a5,%sp@                 <== NOT EXECUTED
   485f2:	286e 0008      	moveal %fp@(8),%a4                          <== NOT EXECUTED
   * See the comment in watchdoginsert.c and watchdogadjust.c         
   * about why it's safe not to declare header a pointer to           
   * volatile data - till, 2003/7                                     
   */                                                                 
                                                                      
  _ISR_Disable( level );                                              
   485f6:	40c2           	movew %sr,%d2                               <== NOT EXECUTED
   485f8:	8082           	orl %d2,%d0                                 <== NOT EXECUTED
   485fa:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
   } while ( !_Chain_Is_empty( header ) &&                            
             (the_watchdog->delta_interval == 0) );                   
                                                                      
leave:                                                                
   _ISR_Enable(level);                                                
}                                                                     
   485fc:	264c           	moveal %a4,%a3                              <== NOT EXECUTED
   485fe:	245b           	moveal %a3@+,%a2                            <== NOT EXECUTED
   * volatile data - till, 2003/7                                     
   */                                                                 
                                                                      
  _ISR_Disable( level );                                              
                                                                      
  if ( _Chain_Is_empty( header ) )                                    
   48600:	b7ca           	cmpal %a2,%a3                               <== NOT EXECUTED
   48602:	674c           	beqs 48650 <_Watchdog_Tickle+0x6c>          <== NOT EXECUTED
   * to be inserted has already had its delta_interval adjusted to 0, and
   * so is added to the head of the chain with a delta_interval of 0. 
   *                                                                  
   * Steven Johnson - 12/2005 (gcc-3.2.3 -O3 on powerpc)              
   */                                                                 
  if (the_watchdog->delta_interval != 0) {                            
   48604:	202a 0010      	movel %a2@(16),%d0                          <== NOT EXECUTED
   48608:	6708           	beqs 48612 <_Watchdog_Tickle+0x2e>          <== NOT EXECUTED
    the_watchdog->delta_interval--;                                   
   4860a:	5380           	subql #1,%d0                                <== NOT EXECUTED
   4860c:	2540 0010      	movel %d0,%a2@(16)                          <== NOT EXECUTED
    if ( the_watchdog->delta_interval != 0 )                          
   48610:	663e           	bnes 48650 <_Watchdog_Tickle+0x6c>          <== NOT EXECUTED
      goto leave;                                                     
  }                                                                   
                                                                      
  do {                                                                
     watchdog_state = _Watchdog_Remove( the_watchdog );               
   48612:	4bf9 0004 8568 	lea 48568 <_Watchdog_Remove>,%a5            <== NOT EXECUTED
                                                                      
       case WATCHDOG_REMOVE_IT:                                       
         break;                                                       
     }                                                                
                                                                      
     _ISR_Disable( level );                                           
   48618:	263c 0000 0700 	movel #1792,%d3                             <== NOT EXECUTED
    if ( the_watchdog->delta_interval != 0 )                          
      goto leave;                                                     
  }                                                                   
                                                                      
  do {                                                                
     watchdog_state = _Watchdog_Remove( the_watchdog );               
   4861e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   48620:	4e95           	jsr %a5@                                    <== NOT EXECUTED
                                                                      
     _ISR_Enable( level );                                            
   48622:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
                                                                      
     switch( watchdog_state ) {                                       
   48624:	7202           	moveq #2,%d1                                <== NOT EXECUTED
   48626:	588f           	addql #4,%sp                                <== NOT EXECUTED
   48628:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   4862a:	6610           	bnes 4863c <_Watchdog_Tickle+0x58>          <== NOT EXECUTED
       case WATCHDOG_ACTIVE:                                          
         (*the_watchdog->routine)(                                    
   4862c:	2f2a 0024      	movel %a2@(36),%sp@-                        <== NOT EXECUTED
   48630:	2f2a 0020      	movel %a2@(32),%sp@-                        <== NOT EXECUTED
   48634:	206a 001c      	moveal %a2@(28),%a0                         <== NOT EXECUTED
   48638:	4e90           	jsr %a0@                                    <== NOT EXECUTED
           the_watchdog->id,                                          
           the_watchdog->user_data                                    
         );                                                           
         break;                                                       
   4863a:	508f           	addql #8,%sp                                <== NOT EXECUTED
                                                                      
       case WATCHDOG_REMOVE_IT:                                       
         break;                                                       
     }                                                                
                                                                      
     _ISR_Disable( level );                                           
   4863c:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   4863e:	40c2           	movew %sr,%d2                               <== NOT EXECUTED
   48640:	8082           	orl %d2,%d0                                 <== NOT EXECUTED
   48642:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
   } while ( !_Chain_Is_empty( header ) &&                            
             (the_watchdog->delta_interval == 0) );                   
                                                                      
leave:                                                                
   _ISR_Enable(level);                                                
}                                                                     
   48644:	2454           	moveal %a4@,%a2                             <== NOT EXECUTED
                                                                      
     _ISR_Disable( level );                                           
                                                                      
     the_watchdog = _Watchdog_First( header );                        
   } while ( !_Chain_Is_empty( header ) &&                            
             (the_watchdog->delta_interval == 0) );                   
   48646:	b7ca           	cmpal %a2,%a3                               <== NOT EXECUTED
   48648:	6706           	beqs 48650 <_Watchdog_Tickle+0x6c>          <== NOT EXECUTED
     }                                                                
                                                                      
     _ISR_Disable( level );                                           
                                                                      
     the_watchdog = _Watchdog_First( header );                        
   } while ( !_Chain_Is_empty( header ) &&                            
   4864a:	4aaa 0010      	tstl %a2@(16)                               <== NOT EXECUTED
   4864e:	67ce           	beqs 4861e <_Watchdog_Tickle+0x3a>          <== NOT EXECUTED
             (the_watchdog->delta_interval == 0) );                   
                                                                      
leave:                                                                
   _ISR_Enable(level);                                                
   48650:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
}                                                                     
   48652:	4cee 3c0c ffe8 	moveml %fp@(-24),%d2-%d3/%a2-%a5            <== NOT EXECUTED
   48658:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004c1dc <rtems_barrier_create>: rtems_name name, rtems_attribute attribute_set, uint32_t maximum_waiters, rtems_id *id ) {
   4c1dc:	4e56 ffe4      	linkw %fp,#-28                              
   4c1e0:	202e 0010      	movel %fp@(16),%d0                          
   4c1e4:	48d7 1c0c      	moveml %d2-%d3/%a2-%a4,%sp@                 
   4c1e8:	242e 0008      	movel %fp@(8),%d2                           
   4c1ec:	262e 000c      	movel %fp@(12),%d3                          
   4c1f0:	246e 0014      	moveal %fp@(20),%a2                         
  Barrier_Control         *the_barrier;                               
  CORE_barrier_Attributes  the_attributes;                            
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
   4c1f4:	4a82           	tstl %d2                                    
   4c1f6:	677e           	beqs 4c276 <rtems_barrier_create+0x9a>      <== NEVER TAKEN
    return RTEMS_INVALID_NAME;                                        
                                                                      
  if ( !id )                                                          
   4c1f8:	4a8a           	tstl %a2                                    
   4c1fa:	677e           	beqs 4c27a <rtems_barrier_create+0x9e>      <== NEVER TAKEN
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  /* Initialize core barrier attributes */                            
  if ( _Attributes_Is_barrier_automatic( attribute_set ) ) {          
   4c1fc:	0803 0004      	btst #4,%d3                                 
   4c200:	670a           	beqs 4c20c <rtems_barrier_create+0x30>      <== NEVER TAKEN
    the_attributes.discipline = CORE_BARRIER_AUTOMATIC_RELEASE;       
   4c202:	42ae fff8      	clrl %fp@(-8)                               
    if ( maximum_waiters == 0 )                                       
   4c206:	4a80           	tstl %d0                                    
   4c208:	6608           	bnes 4c212 <rtems_barrier_create+0x36>      <== ALWAYS TAKEN
   4c20a:	6072           	bras 4c27e <rtems_barrier_create+0xa2>      <== NOT EXECUTED
      return RTEMS_INVALID_NUMBER;                                    
  } else                                                              
    the_attributes.discipline = CORE_BARRIER_MANUAL_RELEASE;          
   4c20c:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   4c20e:	2d41 fff8      	movel %d1,%fp@(-8)                          <== NOT EXECUTED
  the_attributes.maximum_count = maximum_waiters;                     
   4c212:	2d40 fffc      	movel %d0,%fp@(-4)                          
   4c216:	2039 0005 e9ec 	movel 5e9ec <_Thread_Dispatch_disable_level>,%d0
   4c21c:	5280           	addql #1,%d0                                
   4c21e:	23c0 0005 e9ec 	movel %d0,5e9ec <_Thread_Dispatch_disable_level>
 *  This function allocates a barrier control block from              
 *  the inactive chain of free barrier control blocks.                
 */                                                                   
RTEMS_INLINE_ROUTINE Barrier_Control *_Barrier_Allocate( void )       
{                                                                     
  return (Barrier_Control *) _Objects_Allocate( &_Barrier_Information );
   4c224:	4879 0005 ebdc 	pea 5ebdc <_Barrier_Information>            
   4c22a:	49f9 0004 933e 	lea 4933e <_Thread_Enable_dispatch>,%a4     
   4c230:	4eb9 0004 8474 	jsr 48474 <_Objects_Allocate>               
                                                                      
  _Thread_Disable_dispatch();             /* prevents deletion */     
                                                                      
  the_barrier = _Barrier_Allocate();                                  
                                                                      
  if ( !the_barrier ) {                                               
   4c236:	588f           	addql #4,%sp                                
   4c238:	2640           	moveal %d0,%a3                              
   4c23a:	4a80           	tstl %d0                                    
   4c23c:	6606           	bnes 4c244 <rtems_barrier_create+0x68>      <== ALWAYS TAKEN
    _Thread_Enable_dispatch();                                        
   4c23e:	4e94           	jsr %a4@                                    <== NOT EXECUTED
    return RTEMS_TOO_MANY;                                            
   4c240:	7005           	moveq #5,%d0                                <== NOT EXECUTED
   4c242:	603c           	bras 4c280 <rtems_barrier_create+0xa4>      <== NOT EXECUTED
  }                                                                   
                                                                      
  the_barrier->attribute_set = attribute_set;                         
   4c244:	2743 0010      	movel %d3,%a3@(16)                          
                                                                      
  _CORE_barrier_Initialize( &the_barrier->Barrier, &the_attributes ); 
   4c248:	486e fff8      	pea %fp@(-8)                                
   4c24c:	486b 0014      	pea %a3@(20)                                
   4c250:	4eb9 0004 c9b0 	jsr 4c9b0 <_CORE_barrier_Initialize>        
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
   4c256:	202b 0008      	movel %a3@(8),%d0                           
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   4c25a:	4281           	clrl %d1                                    
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   4c25c:	2079 0005 ebf4 	moveal 5ebf4 <_Barrier_Information+0x18>,%a0
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   4c262:	3200           	movew %d0,%d1                               
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   4c264:	218b 1c00      	movel %a3,%a0@(00000000,%d1:l:4)            
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
    the_object                                                        
  );                                                                  
                                                                      
  the_object->name = name;                                            
   4c268:	2742 000c      	movel %d2,%a3@(12)                          
    &_Barrier_Information,                                            
    &the_barrier->Object,                                             
    (Objects_Name) name                                               
  );                                                                  
                                                                      
  *id = the_barrier->Object.id;                                       
   4c26c:	2480           	movel %d0,%a2@                              
                                                                      
  _Thread_Enable_dispatch();                                          
   4c26e:	4e94           	jsr %a4@                                    
  return RTEMS_SUCCESSFUL;                                            
   4c270:	508f           	addql #8,%sp                                
   4c272:	4280           	clrl %d0                                    
   4c274:	600a           	bras 4c280 <rtems_barrier_create+0xa4>      
{                                                                     
  Barrier_Control         *the_barrier;                               
  CORE_barrier_Attributes  the_attributes;                            
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
    return RTEMS_INVALID_NAME;                                        
   4c276:	7003           	moveq #3,%d0                                
   4c278:	6006           	bras 4c280 <rtems_barrier_create+0xa4>      
                                                                      
  if ( !id )                                                          
    return RTEMS_INVALID_ADDRESS;                                     
   4c27a:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4c27c:	6002           	bras 4c280 <rtems_barrier_create+0xa4>      <== NOT EXECUTED
                                                                      
  /* Initialize core barrier attributes */                            
  if ( _Attributes_Is_barrier_automatic( attribute_set ) ) {          
    the_attributes.discipline = CORE_BARRIER_AUTOMATIC_RELEASE;       
    if ( maximum_waiters == 0 )                                       
      return RTEMS_INVALID_NUMBER;                                    
   4c27e:	700a           	moveq #10,%d0                               <== NOT EXECUTED
                                                                      
  *id = the_barrier->Object.id;                                       
                                                                      
  _Thread_Enable_dispatch();                                          
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4c280:	4cee 1c0c ffe4 	moveml %fp@(-28),%d2-%d3/%a2-%a4            
   4c286:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

0004c28c <rtems_barrier_delete>: */ rtems_status_code rtems_barrier_delete( rtems_id id ) {
   4c28c:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   4c290:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Barrier_Control *)                                          
    _Objects_Get( &_Barrier_Information, id, location );              
   4c292:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4c296:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4c29a:	4879 0005 ebdc 	pea 5ebdc <_Barrier_Information>            <== NOT EXECUTED
   4c2a0:	4eb9 0004 88cc 	jsr 488cc <_Objects_Get>                    <== NOT EXECUTED
  Barrier_Control   *the_barrier;                                     
  Objects_Locations  location;                                        
                                                                      
  the_barrier = _Barrier_Get( id, &location );                        
  switch ( location ) {                                               
   4c2a6:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4c2aa:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   4c2ac:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4c2b0:	663a           	bnes 4c2ec <rtems_barrier_delete+0x60>      <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      _CORE_barrier_Flush(                                            
   4c2b2:	4878 0002      	pea 2 <DOUBLE_FLOAT>                        <== NOT EXECUTED
   4c2b6:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4c2b8:	486a 0014      	pea %a2@(20)                                <== NOT EXECUTED
   4c2bc:	4eb9 0004 9988 	jsr 49988 <_Thread_queue_Flush>             <== NOT EXECUTED
        &the_barrier->Barrier,                                        
        NULL,                                                         
        CORE_BARRIER_WAS_DELETED                                      
      );                                                              
                                                                      
      _Objects_Close( &_Barrier_Information, &the_barrier->Object );  
   4c2c2:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4c2c4:	4879 0005 ebdc 	pea 5ebdc <_Barrier_Information>            <== NOT EXECUTED
   4c2ca:	4eb9 0004 84f0 	jsr 484f0 <_Objects_Close>                  <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _Barrier_Free (                             
  Barrier_Control *the_barrier                                        
)                                                                     
{                                                                     
  _Objects_Free( &_Barrier_Information, &the_barrier->Object );       
   4c2d0:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4c2d2:	4879 0005 ebdc 	pea 5ebdc <_Barrier_Information>            <== NOT EXECUTED
   4c2d8:	4eb9 0004 8768 	jsr 48768 <_Objects_Free>                   <== NOT EXECUTED
                                                                      
      _Barrier_Free( the_barrier );                                   
                                                                      
      _Thread_Enable_dispatch();                                      
   4c2de:	4eb9 0004 933e 	jsr 4933e <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   4c2e4:	4fef 001c      	lea %sp@(28),%sp                            <== NOT EXECUTED
   4c2e8:	4280           	clrl %d0                                    <== NOT EXECUTED
   4c2ea:	6002           	bras 4c2ee <rtems_barrier_delete+0x62>      <== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4c2ec:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4c2ee:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   4c2f2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00045dac <rtems_barrier_ident>: rtems_status_code rtems_barrier_ident( rtems_name name, rtems_id *id ) {
   45dac:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  Objects_Name_or_id_lookup_errors  status;                           
                                                                      
  status = _Objects_Name_to_id_u32(                                   
   45db0:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   45db4:	2f3c 7fff ffff 	movel #2147483647,%sp@-                     <== NOT EXECUTED
   45dba:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   45dbe:	4879 0005 db7c 	pea 5db7c <_Barrier_Information>            <== NOT EXECUTED
   45dc4:	4eb9 0004 7d68 	jsr 47d68 <_Objects_Name_to_id_u32>         <== NOT EXECUTED
    OBJECTS_SEARCH_LOCAL_NODE,                                        
    id                                                                
  );                                                                  
                                                                      
  return _Status_Object_name_errors_to_status[ status ];              
}                                                                     
   45dca:	41f9 0005 b6ae 	lea 5b6ae <_Status_Object_name_errors_to_status>,%a0<== NOT EXECUTED
   45dd0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   45dd2:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
                                                                      

0004c328 <rtems_barrier_release>: rtems_status_code rtems_barrier_release( rtems_id id, uint32_t *released ) {
   4c328:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   4c32c:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4c32e:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
   4c332:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4c334:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
  Barrier_Control   *the_barrier;                                     
  Objects_Locations  location;                                        
                                                                      
  if ( !released )                                                    
   4c338:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4c33a:	673c           	beqs 4c378 <rtems_barrier_release+0x50>     <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Barrier_Control *)                                          
    _Objects_Get( &_Barrier_Information, id, location );              
   4c33c:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4c340:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4c342:	4879 0005 ebdc 	pea 5ebdc <_Barrier_Information>            <== NOT EXECUTED
   4c348:	4eb9 0004 88cc 	jsr 488cc <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_barrier = _Barrier_Get( id, &location );                        
  switch ( location ) {                                               
   4c34e:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4c352:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4c356:	6624           	bnes 4c37c <rtems_barrier_release+0x54>     <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      *released = _CORE_barrier_Release( &the_barrier->Barrier, id, NULL );
   4c358:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4c35a:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4c35c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4c35e:	4868 0014      	pea %a0@(20)                                <== NOT EXECUTED
   4c362:	4eb9 0004 c9ec 	jsr 4c9ec <_CORE_barrier_Release>           <== NOT EXECUTED
   4c368:	2480           	movel %d0,%a2@                              <== NOT EXECUTED
      _Thread_Enable_dispatch();                                      
   4c36a:	4eb9 0004 933e 	jsr 4933e <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   4c370:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4c374:	4280           	clrl %d0                                    <== NOT EXECUTED
   4c376:	6006           	bras 4c37e <rtems_barrier_release+0x56>     <== NOT EXECUTED
{                                                                     
  Barrier_Control   *the_barrier;                                     
  Objects_Locations  location;                                        
                                                                      
  if ( !released )                                                    
    return RTEMS_INVALID_ADDRESS;                                     
   4c378:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4c37a:	6002           	bras 4c37e <rtems_barrier_release+0x56>     <== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4c37c:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4c37e:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   4c382:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   4c386:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004c38c <rtems_barrier_wait>: rtems_status_code rtems_barrier_wait( rtems_id id, rtems_interval timeout ) {
   4c38c:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   4c390:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4c392:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4c396:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
   4c39a:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4c39c:	4879 0005 ebdc 	pea 5ebdc <_Barrier_Information>            <== NOT EXECUTED
   4c3a2:	4eb9 0004 88cc 	jsr 488cc <_Objects_Get>                    <== NOT EXECUTED
  Barrier_Control   *the_barrier;                                     
  Objects_Locations  location;                                        
                                                                      
  the_barrier = _Barrier_Get( id, &location );                        
  switch ( location ) {                                               
   4c3a8:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4c3ac:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4c3b0:	6634           	bnes 4c3e6 <rtems_barrier_wait+0x5a>        <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      _CORE_barrier_Wait(                                             
   4c3b2:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4c3b4:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   4c3b8:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4c3ba:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   4c3be:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4c3c0:	4868 0014      	pea %a0@(20)                                <== NOT EXECUTED
   4c3c4:	4eb9 0004 ca20 	jsr 4ca20 <_CORE_barrier_Wait>              <== NOT EXECUTED
        id,                                                           
        true,                                                         
        timeout,                                                      
        NULL                                                          
      );                                                              
      _Thread_Enable_dispatch();                                      
   4c3ca:	4eb9 0004 933e 	jsr 4933e <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return _Barrier_Translate_core_barrier_return_code(             
                _Thread_Executing->Wait.return_code );                
   4c3d0:	2079 0005 eba8 	moveal 5eba8 <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
        true,                                                         
        timeout,                                                      
        NULL                                                          
      );                                                              
      _Thread_Enable_dispatch();                                      
      return _Barrier_Translate_core_barrier_return_code(             
   4c3d6:	2f28 0034      	movel %a0@(52),%sp@-                        <== NOT EXECUTED
   4c3da:	4eb9 0004 d39c 	jsr 4d39c <_Barrier_Translate_core_barrier_return_code><== NOT EXECUTED
   4c3e0:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
   4c3e4:	6002           	bras 4c3e8 <rtems_barrier_wait+0x5c>        <== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4c3e6:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4c3e8:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   4c3ec:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046b5c <rtems_build_id>: uint32_t api, uint32_t class, uint32_t node, uint32_t index ) {
   46b5c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   46b60:	202e 000c      	movel %fp@(12),%d0                          <== NOT EXECUTED
   46b64:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
  uint32_t         node,                                              
  uint32_t         index                                              
)                                                                     
{                                                                     
  return (( (Objects_Id) the_api )   << OBJECTS_API_START_BIT)   |    
         (( (Objects_Id) the_class ) << OBJECTS_CLASS_START_BIT) |    
   46b66:	761b           	moveq #27,%d3                               <== NOT EXECUTED
   46b68:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   46b6a:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
   46b6e:	e7a8           	lsll %d3,%d0                                <== NOT EXECUTED
  uint32_t         the_class,                                         
  uint32_t         node,                                              
  uint32_t         index                                              
)                                                                     
{                                                                     
  return (( (Objects_Id) the_api )   << OBJECTS_API_START_BIT)   |    
   46b70:	163c 0018      	moveb #24,%d3                               <== NOT EXECUTED
   46b74:	e7aa           	lsll %d3,%d2                                <== NOT EXECUTED
   46b76:	222e 0010      	movel %fp@(16),%d1                          <== NOT EXECUTED
   46b7a:	8082           	orl %d2,%d0                                 <== NOT EXECUTED
  return _Objects_Build_id( api, class, node, index );                
}                                                                     
   46b7c:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
         (( (Objects_Id) the_class ) << OBJECTS_CLASS_START_BIT) |    
   46b7e:	80ae 0014      	orl %fp@(20),%d0                            <== NOT EXECUTED
         #if !defined(RTEMS_USE_16_BIT_OBJECT)                        
           (( (Objects_Id) node )    << OBJECTS_NODE_START_BIT)  |    
   46b82:	4841           	swap %d1                                    <== NOT EXECUTED
   46b84:	4241           	clrw %d1                                    <== NOT EXECUTED
   46b86:	261f           	movel %sp@+,%d3                             <== NOT EXECUTED
   46b88:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   46b8a:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
	...                                                                  
                                                                      

00046b90 <rtems_build_name>: char C1, char C2, char C3, char C4 ) {
   46b90:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return _Objects_Build_name( C1, C2, C3, C4 );                       
   46b94:	102e 000f      	moveb %fp@(15),%d0                          <== NOT EXECUTED
   46b98:	122e 000b      	moveb %fp@(11),%d1                          <== NOT EXECUTED
  char C1,                                                            
  char C2,                                                            
  char C3,                                                            
  char C4                                                             
)                                                                     
{                                                                     
   46b9c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  return _Objects_Build_name( C1, C2, C3, C4 );                       
   46b9e:	7418           	moveq #24,%d2                               <== NOT EXECUTED
   46ba0:	49c0           	extbl %d0                                   <== NOT EXECUTED
   46ba2:	49c1           	extbl %d1                                   <== NOT EXECUTED
   46ba4:	4840           	swap %d0                                    <== NOT EXECUTED
   46ba6:	4240           	clrw %d0                                    <== NOT EXECUTED
   46ba8:	e5a9           	lsll %d2,%d1                                <== NOT EXECUTED
}                                                                     
   46baa:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
  char C2,                                                            
  char C3,                                                            
  char C4                                                             
)                                                                     
{                                                                     
  return _Objects_Build_name( C1, C2, C3, C4 );                       
   46bac:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   46bae:	122e 0013      	moveb %fp@(19),%d1                          <== NOT EXECUTED
   46bb2:	49c1           	extbl %d1                                   <== NOT EXECUTED
   46bb4:	e189           	lsll #8,%d1                                 <== NOT EXECUTED
   46bb6:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   46bb8:	122e 0017      	moveb %fp@(23),%d1                          <== NOT EXECUTED
}                                                                     
   46bbc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  char C2,                                                            
  char C3,                                                            
  char C4                                                             
)                                                                     
{                                                                     
  return _Objects_Build_name( C1, C2, C3, C4 );                       
   46bbe:	49c1           	extbl %d1                                   <== NOT EXECUTED
}                                                                     
   46bc0:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
                                                                      

000460dc <rtems_chain_append_with_notification>: rtems_chain_control *chain, rtems_chain_node *node, rtems_id task, rtems_event_set events ) {
   460dc:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   460e0:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   460e2:	262e 0014      	movel %fp@(20),%d3                          <== NOT EXECUTED
   460e6:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
RTEMS_INLINE_ROUTINE bool rtems_chain_append_with_empty_check(        
  rtems_chain_control *chain,                                         
  rtems_chain_node *node                                              
)                                                                     
{                                                                     
  return _Chain_Append_with_empty_check( chain, node );               
   460e8:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   460ec:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   460f0:	242e 0010      	movel %fp@(16),%d2                          <== NOT EXECUTED
   460f4:	4eb9 0004 6618 	jsr 46618 <_Chain_Append_with_empty_check>  <== NOT EXECUTED
  rtems_status_code sc = RTEMS_SUCCESSFUL;                            
  bool was_empty = rtems_chain_append_with_empty_check( chain, node );
                                                                      
  if ( was_empty ) {                                                  
   460fa:	508f           	addql #8,%sp                                <== NOT EXECUTED
   460fc:	4a00           	tstb %d0                                    <== NOT EXECUTED
   460fe:	6718           	beqs 46118 <rtems_chain_append_with_notification+0x3c><== NOT EXECUTED
    sc = rtems_event_send( task, events );                            
   46100:	2d43 000c      	movel %d3,%fp@(12)                          <== NOT EXECUTED
  }                                                                   
                                                                      
  return sc;                                                          
}                                                                     
   46104:	262e fffc      	movel %fp@(-4),%d3                          <== NOT EXECUTED
{                                                                     
  rtems_status_code sc = RTEMS_SUCCESSFUL;                            
  bool was_empty = rtems_chain_append_with_empty_check( chain, node );
                                                                      
  if ( was_empty ) {                                                  
    sc = rtems_event_send( task, events );                            
   46108:	2d42 0008      	movel %d2,%fp@(8)                           <== NOT EXECUTED
  }                                                                   
                                                                      
  return sc;                                                          
}                                                                     
   4610c:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   46110:	4e5e           	unlk %fp                                    <== NOT EXECUTED
{                                                                     
  rtems_status_code sc = RTEMS_SUCCESSFUL;                            
  bool was_empty = rtems_chain_append_with_empty_check( chain, node );
                                                                      
  if ( was_empty ) {                                                  
    sc = rtems_event_send( task, events );                            
   46112:	4ef9 0004 5760 	jmp 45760 <rtems_event_send>                <== NOT EXECUTED
  }                                                                   
                                                                      
  return sc;                                                          
}                                                                     
   46118:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   4611c:	4280           	clrl %d0                                    <== NOT EXECUTED
   4611e:	262e fffc      	movel %fp@(-4),%d3                          <== NOT EXECUTED
   46122:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00046128 <rtems_chain_get_with_notification>: rtems_chain_control *chain, rtems_id task, rtems_event_set events, rtems_chain_node **node ) {
   46128:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4612c:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4612e:	262e 0010      	movel %fp@(16),%d3                          <== NOT EXECUTED
   46132:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
RTEMS_INLINE_ROUTINE bool rtems_chain_get_with_empty_check(           
  rtems_chain_control *chain,                                         
  rtems_chain_node **node                                             
)                                                                     
{                                                                     
  return _Chain_Get_with_empty_check( chain, node );                  
   46134:	2f2e 0014      	movel %fp@(20),%sp@-                        <== NOT EXECUTED
   46138:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4613c:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
   46140:	4eb9 0004 66b8 	jsr 466b8 <_Chain_Get_with_empty_check>     <== NOT EXECUTED
  rtems_status_code sc = RTEMS_SUCCESSFUL;                            
  bool is_empty = rtems_chain_get_with_empty_check( chain, node );    
                                                                      
  if ( is_empty ) {                                                   
   46146:	508f           	addql #8,%sp                                <== NOT EXECUTED
   46148:	4a00           	tstb %d0                                    <== NOT EXECUTED
   4614a:	6718           	beqs 46164 <rtems_chain_get_with_notification+0x3c><== NOT EXECUTED
    sc = rtems_event_send( task, events );                            
   4614c:	2d43 000c      	movel %d3,%fp@(12)                          <== NOT EXECUTED
  }                                                                   
                                                                      
  return sc;                                                          
}                                                                     
   46150:	262e fffc      	movel %fp@(-4),%d3                          <== NOT EXECUTED
{                                                                     
  rtems_status_code sc = RTEMS_SUCCESSFUL;                            
  bool is_empty = rtems_chain_get_with_empty_check( chain, node );    
                                                                      
  if ( is_empty ) {                                                   
    sc = rtems_event_send( task, events );                            
   46154:	2d42 0008      	movel %d2,%fp@(8)                           <== NOT EXECUTED
  }                                                                   
                                                                      
  return sc;                                                          
}                                                                     
   46158:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   4615c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
{                                                                     
  rtems_status_code sc = RTEMS_SUCCESSFUL;                            
  bool is_empty = rtems_chain_get_with_empty_check( chain, node );    
                                                                      
  if ( is_empty ) {                                                   
    sc = rtems_event_send( task, events );                            
   4615e:	4ef9 0004 5760 	jmp 45760 <rtems_event_send>                <== NOT EXECUTED
  }                                                                   
                                                                      
  return sc;                                                          
}                                                                     
   46164:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   46168:	4280           	clrl %d0                                    <== NOT EXECUTED
   4616a:	262e fffc      	movel %fp@(-4),%d3                          <== NOT EXECUTED
   4616e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00046174 <rtems_chain_get_with_wait>: rtems_chain_control *chain, rtems_event_set events, rtems_interval timeout, rtems_chain_node **node_ptr ) {
   46174:	4e56 ffe0      	linkw %fp,#-32                              <== NOT EXECUTED
   46178:	48d7 0c7c      	moveml %d2-%d6/%a2-%a3,%sp@                 <== NOT EXECUTED
  while (                                                             
    sc == RTEMS_SUCCESSFUL                                            
      && (node = rtems_chain_get( chain )) == NULL                    
  ) {                                                                 
    rtems_event_set out;                                              
    sc = rtems_event_receive(                                         
   4617c:	260e           	movel %fp,%d3                               <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE rtems_chain_node *rtems_chain_get(               
  rtems_chain_control *the_chain                                      
)                                                                     
{                                                                     
  return _Chain_Get( the_chain );                                     
   4617e:	47f9 0004 6700 	lea 46700 <_Chain_Get>,%a3                  <== NOT EXECUTED
   46184:	5983           	subql #4,%d3                                <== NOT EXECUTED
   46186:	45f9 0004 55fc 	lea 455fc <rtems_event_receive>,%a2         <== NOT EXECUTED
  rtems_chain_control *chain,                                         
  rtems_event_set events,                                             
  rtems_interval timeout,                                             
  rtems_chain_node **node_ptr                                         
)                                                                     
{                                                                     
   4618c:	2c2e 0008      	movel %fp@(8),%d6                           <== NOT EXECUTED
   46190:	2a2e 000c      	movel %fp@(12),%d5                          <== NOT EXECUTED
   46194:	282e 0010      	movel %fp@(16),%d4                          <== NOT EXECUTED
   46198:	6012           	bras 461ac <rtems_chain_get_with_wait+0x38> <== NOT EXECUTED
  while (                                                             
    sc == RTEMS_SUCCESSFUL                                            
      && (node = rtems_chain_get( chain )) == NULL                    
  ) {                                                                 
    rtems_event_set out;                                              
    sc = rtems_event_receive(                                         
   4619a:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4619c:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4619e:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   461a0:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   461a2:	4e92           	jsr %a2@                                    <== NOT EXECUTED
)                                                                     
{                                                                     
  rtems_status_code sc = RTEMS_SUCCESSFUL;                            
  rtems_chain_node *node = NULL;                                      
                                                                      
  while (                                                             
   461a4:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   461a8:	4a80           	tstl %d0                                    <== NOT EXECUTED
   461aa:	660c           	bnes 461b8 <rtems_chain_get_with_wait+0x44> <== NOT EXECUTED
   461ac:	2f06           	movel %d6,%sp@-                             <== NOT EXECUTED
   461ae:	4e93           	jsr %a3@                                    <== NOT EXECUTED
    sc == RTEMS_SUCCESSFUL                                            
      && (node = rtems_chain_get( chain )) == NULL                    
   461b0:	588f           	addql #4,%sp                                <== NOT EXECUTED
   461b2:	2400           	movel %d0,%d2                               <== NOT EXECUTED
   461b4:	67e4           	beqs 4619a <rtems_chain_get_with_wait+0x26> <== NOT EXECUTED
   461b6:	4280           	clrl %d0                                    <== NOT EXECUTED
      timeout,                                                        
      &out                                                            
    );                                                                
  }                                                                   
                                                                      
  *node_ptr = node;                                                   
   461b8:	206e 0014      	moveal %fp@(20),%a0                         <== NOT EXECUTED
   461bc:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
                                                                      
  return sc;                                                          
}                                                                     
   461be:	4cee 0c7c ffe0 	moveml %fp@(-32),%d2-%d6/%a2-%a3            <== NOT EXECUTED
   461c4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000461c8 <rtems_chain_prepend_with_notification>: rtems_chain_control *chain, rtems_chain_node *node, rtems_id task, rtems_event_set events ) {
   461c8:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   461cc:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   461ce:	262e 0014      	movel %fp@(20),%d3                          <== NOT EXECUTED
   461d2:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
RTEMS_INLINE_ROUTINE bool rtems_chain_prepend_with_empty_check(       
  rtems_chain_control *chain,                                         
  rtems_chain_node *node                                              
)                                                                     
{                                                                     
  return _Chain_Prepend_with_empty_check( chain, node );              
   461d4:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   461d8:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   461dc:	242e 0010      	movel %fp@(16),%d2                          <== NOT EXECUTED
   461e0:	4eb9 0004 6764 	jsr 46764 <_Chain_Prepend_with_empty_check> <== NOT EXECUTED
  rtems_status_code sc = RTEMS_SUCCESSFUL;                            
  bool was_empty = rtems_chain_prepend_with_empty_check( chain, node );
                                                                      
  if (was_empty) {                                                    
   461e6:	508f           	addql #8,%sp                                <== NOT EXECUTED
   461e8:	4a00           	tstb %d0                                    <== NOT EXECUTED
   461ea:	6718           	beqs 46204 <rtems_chain_prepend_with_notification+0x3c><== NOT EXECUTED
    sc = rtems_event_send( task, events );                            
   461ec:	2d43 000c      	movel %d3,%fp@(12)                          <== NOT EXECUTED
  }                                                                   
                                                                      
  return sc;                                                          
}                                                                     
   461f0:	262e fffc      	movel %fp@(-4),%d3                          <== NOT EXECUTED
{                                                                     
  rtems_status_code sc = RTEMS_SUCCESSFUL;                            
  bool was_empty = rtems_chain_prepend_with_empty_check( chain, node );
                                                                      
  if (was_empty) {                                                    
    sc = rtems_event_send( task, events );                            
   461f4:	2d42 0008      	movel %d2,%fp@(8)                           <== NOT EXECUTED
  }                                                                   
                                                                      
  return sc;                                                          
}                                                                     
   461f8:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   461fc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
{                                                                     
  rtems_status_code sc = RTEMS_SUCCESSFUL;                            
  bool was_empty = rtems_chain_prepend_with_empty_check( chain, node );
                                                                      
  if (was_empty) {                                                    
    sc = rtems_event_send( task, events );                            
   461fe:	4ef9 0004 5760 	jmp 45760 <rtems_event_send>                <== NOT EXECUTED
  }                                                                   
                                                                      
  return sc;                                                          
}                                                                     
   46204:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   46208:	4280           	clrl %d0                                    <== NOT EXECUTED
   4620a:	262e fffc      	movel %fp@(-4),%d3                          <== NOT EXECUTED
   4620e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004ef40 <rtems_clock_get>: rtems_status_code rtems_clock_get( rtems_clock_get_options option, void *time_buffer ) {
   4ef40:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4ef44:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   4ef48:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4ef4a:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
  if ( !time_buffer )                                                 
   4ef4e:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4ef50:	6760           	beqs 4efb2 <rtems_clock_get+0x72>           <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( option == RTEMS_CLOCK_GET_TOD )                                
   4ef52:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4ef54:	6610           	bnes 4ef66 <rtems_clock_get+0x26>           <== NOT EXECUTED
    return rtems_clock_get_tod( (rtems_time_of_day *)time_buffer );   
   4ef56:	2d4a 0008      	movel %a2,%fp@(8)                           <== NOT EXECUTED
  if ( option == RTEMS_CLOCK_GET_TIME_VALUE )                         
      return rtems_clock_get_tod_timeval( (struct timeval *)time_buffer );
                                                                      
  return RTEMS_INVALID_NUMBER;                                        
                                                                      
}                                                                     
   4ef5a:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   4ef5e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
{                                                                     
  if ( !time_buffer )                                                 
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( option == RTEMS_CLOCK_GET_TOD )                                
    return rtems_clock_get_tod( (rtems_time_of_day *)time_buffer );   
   4ef60:	4ef9 0004 f010 	jmp 4f010 <rtems_clock_get_tod>             <== NOT EXECUTED
                                                                      
  if ( option == RTEMS_CLOCK_GET_SECONDS_SINCE_EPOCH )                
   4ef66:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   4ef68:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   4ef6a:	6610           	bnes 4ef7c <rtems_clock_get+0x3c>           <== NOT EXECUTED
      return rtems_clock_get_seconds_since_epoch((rtems_interval *)time_buffer);
   4ef6c:	2d4a 0008      	movel %a2,%fp@(8)                           <== NOT EXECUTED
  if ( option == RTEMS_CLOCK_GET_TIME_VALUE )                         
      return rtems_clock_get_tod_timeval( (struct timeval *)time_buffer );
                                                                      
  return RTEMS_INVALID_NUMBER;                                        
                                                                      
}                                                                     
   4ef70:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   4ef74:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
  if ( option == RTEMS_CLOCK_GET_TOD )                                
    return rtems_clock_get_tod( (rtems_time_of_day *)time_buffer );   
                                                                      
  if ( option == RTEMS_CLOCK_GET_SECONDS_SINCE_EPOCH )                
      return rtems_clock_get_seconds_since_epoch((rtems_interval *)time_buffer);
   4ef76:	4ef9 0004 efc0 	jmp 4efc0 <rtems_clock_get_seconds_since_epoch><== NOT EXECUTED
                                                                      
  if ( option == RTEMS_CLOCK_GET_TICKS_SINCE_BOOT ) {                 
   4ef7c:	7202           	moveq #2,%d1                                <== NOT EXECUTED
   4ef7e:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   4ef80:	6608           	bnes 4ef8a <rtems_clock_get+0x4a>           <== NOT EXECUTED
    rtems_interval *interval = (rtems_interval *)time_buffer;         
                                                                      
    *interval = rtems_clock_get_ticks_since_boot();                   
   4ef82:	4eb9 0004 f000 	jsr 4f000 <rtems_clock_get_ticks_since_boot><== NOT EXECUTED
   4ef88:	600c           	bras 4ef96 <rtems_clock_get+0x56>           <== NOT EXECUTED
    return RTEMS_SUCCESSFUL;                                          
  }                                                                   
                                                                      
  if ( option == RTEMS_CLOCK_GET_TICKS_PER_SECOND ) {                 
   4ef8a:	7203           	moveq #3,%d1                                <== NOT EXECUTED
   4ef8c:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   4ef8e:	660c           	bnes 4ef9c <rtems_clock_get+0x5c>           <== NOT EXECUTED
    rtems_interval *interval = (rtems_interval *)time_buffer;         
                                                                      
    *interval = rtems_clock_get_ticks_per_second();                   
   4ef90:	4eb9 0004 efe8 	jsr 4efe8 <rtems_clock_get_ticks_per_second><== NOT EXECUTED
   4ef96:	2480           	movel %d0,%a2@                              <== NOT EXECUTED
    return RTEMS_SUCCESSFUL;                                          
   4ef98:	4280           	clrl %d0                                    <== NOT EXECUTED
   4ef9a:	601c           	bras 4efb8 <rtems_clock_get+0x78>           <== NOT EXECUTED
  }                                                                   
                                                                      
  if ( option == RTEMS_CLOCK_GET_TIME_VALUE )                         
   4ef9c:	7204           	moveq #4,%d1                                <== NOT EXECUTED
   4ef9e:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   4efa0:	6614           	bnes 4efb6 <rtems_clock_get+0x76>           <== NOT EXECUTED
      return rtems_clock_get_tod_timeval( (struct timeval *)time_buffer );
   4efa2:	2d4a 0008      	movel %a2,%fp@(8)                           <== NOT EXECUTED
                                                                      
  return RTEMS_INVALID_NUMBER;                                        
                                                                      
}                                                                     
   4efa6:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   4efaa:	4e5e           	unlk %fp                                    <== NOT EXECUTED
    *interval = rtems_clock_get_ticks_per_second();                   
    return RTEMS_SUCCESSFUL;                                          
  }                                                                   
                                                                      
  if ( option == RTEMS_CLOCK_GET_TIME_VALUE )                         
      return rtems_clock_get_tod_timeval( (struct timeval *)time_buffer );
   4efac:	4ef9 0004 f0c4 	jmp 4f0c4 <rtems_clock_get_tod_timeval>     <== NOT EXECUTED
  rtems_clock_get_options  option,                                    
  void                    *time_buffer                                
)                                                                     
{                                                                     
  if ( !time_buffer )                                                 
    return RTEMS_INVALID_ADDRESS;                                     
   4efb2:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4efb4:	6002           	bras 4efb8 <rtems_clock_get+0x78>           <== NOT EXECUTED
  }                                                                   
                                                                      
  if ( option == RTEMS_CLOCK_GET_TIME_VALUE )                         
      return rtems_clock_get_tod_timeval( (struct timeval *)time_buffer );
                                                                      
  return RTEMS_INVALID_NUMBER;                                        
   4efb6:	700a           	moveq #10,%d0                               <== NOT EXECUTED
                                                                      
}                                                                     
   4efb8:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   4efbc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00045d9c <rtems_clock_get_seconds_since_epoch>: #include <rtems/score/watchdog.h> rtems_status_code rtems_clock_get_seconds_since_epoch( rtems_interval *the_interval ) {
   45d9c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   45da0:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
  if ( !the_interval )                                                
   45da4:	4a88           	tstl %a0                                    <== NOT EXECUTED
   45da6:	6712           	beqs 45dba <rtems_clock_get_seconds_since_epoch+0x1e><== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !_TOD_Is_set )                                                 
   45da8:	4a39 0006 65b8 	tstb 665b8 <_TOD_Is_set>                    <== NOT EXECUTED
   45dae:	670e           	beqs 45dbe <rtems_clock_get_seconds_since_epoch+0x22><== NOT EXECUTED
    return RTEMS_NOT_DEFINED;                                         
                                                                      
  *the_interval = _TOD_Seconds_since_epoch();                         
   45db0:	20b9 0006 6652 	movel 66652 <_TOD_Now>,%a0@                 <== NOT EXECUTED
  return RTEMS_SUCCESSFUL;                                            
   45db6:	4280           	clrl %d0                                    <== NOT EXECUTED
   45db8:	6006           	bras 45dc0 <rtems_clock_get_seconds_since_epoch+0x24><== NOT EXECUTED
rtems_status_code rtems_clock_get_seconds_since_epoch(                
  rtems_interval *the_interval                                        
)                                                                     
{                                                                     
  if ( !the_interval )                                                
    return RTEMS_INVALID_ADDRESS;                                     
   45dba:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   45dbc:	6002           	bras 45dc0 <rtems_clock_get_seconds_since_epoch+0x24><== NOT EXECUTED
                                                                      
  if ( !_TOD_Is_set )                                                 
    return RTEMS_NOT_DEFINED;                                         
   45dbe:	700b           	moveq #11,%d0                               <== NOT EXECUTED
                                                                      
  *the_interval = _TOD_Seconds_since_epoch();                         
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   45dc0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00044fc0 <rtems_clock_get_ticks_per_second>: rtems_interval rtems_clock_get_ticks_per_second(void) { return TOD_MICROSECONDS_PER_SECOND / rtems_configuration_get_microseconds_per_tick(); }
   44fc0:	41f9 0005 aea0 	lea 5aea0 <Configuration+0xc>,%a0           <== NOT EXECUTED
#include <rtems/score/thread.h>                                       
#include <rtems/score/tod.h>                                          
#include <rtems/score/watchdog.h>                                     
                                                                      
rtems_interval rtems_clock_get_ticks_per_second(void)                 
{                                                                     
   44fc6:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return TOD_MICROSECONDS_PER_SECOND /                                
    rtems_configuration_get_microseconds_per_tick();                  
}                                                                     
   44fca:	203c 000f 4240 	movel #1000000,%d0                          <== NOT EXECUTED
   44fd0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44fd2:	4c50 0000      	remul %a0@,%d0,%d0                          <== NOT EXECUTED
                                                                      

00044fd8 <rtems_clock_get_ticks_since_boot>: #include <rtems/score/thread.h> #include <rtems/score/tod.h> #include <rtems/score/watchdog.h> rtems_interval rtems_clock_get_ticks_since_boot(void) {
   44fd8:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return _Watchdog_Ticks_since_boot;                                  
   44fdc:	2039 0005 c7f0 	movel 5c7f0 <_Watchdog_Ticks_since_boot>,%d0<== NOT EXECUTED
}                                                                     
   44fe2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00045dec <rtems_clock_get_tod>: #include <rtems/score/watchdog.h> rtems_status_code rtems_clock_get_tod( rtems_time_of_day *time_buffer ) {
   45dec:	4e56 ffcc      	linkw %fp,#-52                              <== NOT EXECUTED
   45df0:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   45df2:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   45df6:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  rtems_time_of_day *tmbuf = time_buffer;                             
  struct tm time;                                                     
  struct timeval now;                                                 
                                                                      
  if ( !time_buffer )                                                 
   45df8:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   45dfa:	6700 0090      	beqw 45e8c <rtems_clock_get_tod+0xa0>       <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !_TOD_Is_set )                                                 
   45dfe:	4a39 0006 65b8 	tstb 665b8 <_TOD_Is_set>                    <== NOT EXECUTED
   45e04:	6700 008a      	beqw 45e90 <rtems_clock_get_tod+0xa4>       <== NOT EXECUTED
{                                                                     
  ISR_Level       level;                                              
  struct timespec now;                                                
  suseconds_t     useconds;                                           
                                                                      
  _ISR_Disable(level);                                                
   45e08:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   45e0e:	40c2           	movew %sr,%d2                               <== NOT EXECUTED
   45e10:	8082           	orl %d2,%d0                                 <== NOT EXECUTED
   45e12:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
    _TOD_Get( &now );                                                 
   45e14:	486e fff0      	pea %fp@(-16)                               <== NOT EXECUTED
   45e18:	4eb9 0004 754c 	jsr 4754c <_TOD_Get>                        <== NOT EXECUTED
  _ISR_Enable(level);                                                 
   45e1e:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
                                                                      
  useconds = (suseconds_t)now.tv_nsec;                                
  useconds /= (suseconds_t)TOD_NANOSECONDS_PER_MICROSECOND;           
                                                                      
  time->tv_sec  = now.tv_sec;                                         
  time->tv_usec = useconds;                                           
   45e20:	243c 0000 03e8 	movel #1000,%d2                             <== NOT EXECUTED
                                                                      
  /* Obtain the current time */                                       
  _TOD_Get_timeval( &now );                                           
                                                                      
  /* Split it into a closer format */                                 
  gmtime_r( &now.tv_sec, &time );                                     
   45e26:	486e ffcc      	pea %fp@(-52)                               <== NOT EXECUTED
                                                                      
  _ISR_Disable(level);                                                
    _TOD_Get( &now );                                                 
  _ISR_Enable(level);                                                 
                                                                      
  useconds = (suseconds_t)now.tv_nsec;                                
   45e2a:	202e fff4      	movel %fp@(-12),%d0                         <== NOT EXECUTED
   45e2e:	486e fff8      	pea %fp@(-8)                                <== NOT EXECUTED
  useconds /= (suseconds_t)TOD_NANOSECONDS_PER_MICROSECOND;           
                                                                      
  time->tv_sec  = now.tv_sec;                                         
   45e32:	2d6e fff0 fff8 	movel %fp@(-16),%fp@(-8)                    <== NOT EXECUTED
  time->tv_usec = useconds;                                           
   45e38:	4c42 0800      	remsl %d2,%d0,%d0                           <== NOT EXECUTED
   45e3c:	2d40 fffc      	movel %d0,%fp@(-4)                          <== NOT EXECUTED
   45e40:	4eb9 0004 d7a0 	jsr 4d7a0 <gmtime_r>                        <== NOT EXECUTED
                                                                      
  /* Now adjust it to the RTEMS format */                             
  tmbuf->year   = time.tm_year + 1900;                                
   45e46:	206e ffe0      	moveal %fp@(-32),%a0                        <== NOT EXECUTED
   45e4a:	41e8 076c      	lea %a0@(1900),%a0                          <== NOT EXECUTED
  tmbuf->minute = time.tm_min;                                        
  tmbuf->second = time.tm_sec;                                        
  tmbuf->ticks  = now.tv_usec /                                       
    rtems_configuration_get_microseconds_per_tick();                  
                                                                      
  return RTEMS_SUCCESSFUL;                                            
   45e4e:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
  /* Split it into a closer format */                                 
  gmtime_r( &now.tv_sec, &time );                                     
                                                                      
  /* Now adjust it to the RTEMS format */                             
  tmbuf->year   = time.tm_year + 1900;                                
  tmbuf->month  = time.tm_mon + 1;                                    
   45e52:	202e ffdc      	movel %fp@(-36),%d0                         <== NOT EXECUTED
   45e56:	5280           	addql #1,%d0                                <== NOT EXECUTED
                                                                      
  /* Split it into a closer format */                                 
  gmtime_r( &now.tv_sec, &time );                                     
                                                                      
  /* Now adjust it to the RTEMS format */                             
  tmbuf->year   = time.tm_year + 1900;                                
   45e58:	2488           	movel %a0,%a2@                              <== NOT EXECUTED
  tmbuf->month  = time.tm_mon + 1;                                    
  tmbuf->day    = time.tm_mday;                                       
  tmbuf->hour   = time.tm_hour;                                       
  tmbuf->minute = time.tm_min;                                        
  tmbuf->second = time.tm_sec;                                        
  tmbuf->ticks  = now.tv_usec /                                       
   45e5a:	222e fffc      	movel %fp@(-4),%d1                          <== NOT EXECUTED
   45e5e:	41f9 0005 cfc0 	lea 5cfc0 <Configuration+0xc>,%a0           <== NOT EXECUTED
  /* Split it into a closer format */                                 
  gmtime_r( &now.tv_sec, &time );                                     
                                                                      
  /* Now adjust it to the RTEMS format */                             
  tmbuf->year   = time.tm_year + 1900;                                
  tmbuf->month  = time.tm_mon + 1;                                    
   45e64:	2540 0004      	movel %d0,%a2@(4)                           <== NOT EXECUTED
  tmbuf->day    = time.tm_mday;                                       
   45e68:	256e ffd8 0008 	movel %fp@(-40),%a2@(8)                     <== NOT EXECUTED
  tmbuf->hour   = time.tm_hour;                                       
   45e6e:	256e ffd4 000c 	movel %fp@(-44),%a2@(12)                    <== NOT EXECUTED
  tmbuf->minute = time.tm_min;                                        
   45e74:	256e ffd0 0010 	movel %fp@(-48),%a2@(16)                    <== NOT EXECUTED
  tmbuf->second = time.tm_sec;                                        
   45e7a:	256e ffcc 0014 	movel %fp@(-52),%a2@(20)                    <== NOT EXECUTED
  tmbuf->ticks  = now.tv_usec /                                       
   45e80:	4c50 1001      	remul %a0@,%d1,%d1                          <== NOT EXECUTED
    rtems_configuration_get_microseconds_per_tick();                  
                                                                      
  return RTEMS_SUCCESSFUL;                                            
   45e84:	4280           	clrl %d0                                    <== NOT EXECUTED
  tmbuf->month  = time.tm_mon + 1;                                    
  tmbuf->day    = time.tm_mday;                                       
  tmbuf->hour   = time.tm_hour;                                       
  tmbuf->minute = time.tm_min;                                        
  tmbuf->second = time.tm_sec;                                        
  tmbuf->ticks  = now.tv_usec /                                       
   45e86:	2541 0018      	movel %d1,%a2@(24)                          <== NOT EXECUTED
    rtems_configuration_get_microseconds_per_tick();                  
                                                                      
  return RTEMS_SUCCESSFUL;                                            
   45e8a:	6006           	bras 45e92 <rtems_clock_get_tod+0xa6>       <== NOT EXECUTED
  rtems_time_of_day *tmbuf = time_buffer;                             
  struct tm time;                                                     
  struct timeval now;                                                 
                                                                      
  if ( !time_buffer )                                                 
    return RTEMS_INVALID_ADDRESS;                                     
   45e8c:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   45e8e:	6002           	bras 45e92 <rtems_clock_get_tod+0xa6>       <== NOT EXECUTED
                                                                      
  if ( !_TOD_Is_set )                                                 
    return RTEMS_NOT_DEFINED;                                         
   45e90:	700b           	moveq #11,%d0                               <== NOT EXECUTED
  tmbuf->second = time.tm_sec;                                        
  tmbuf->ticks  = now.tv_usec /                                       
    rtems_configuration_get_microseconds_per_tick();                  
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   45e92:	242e ffc4      	movel %fp@(-60),%d2                         <== NOT EXECUTED
   45e96:	246e ffc8      	moveal %fp@(-56),%a2                        <== NOT EXECUTED
   45e9a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004f0c4 <rtems_clock_get_tod_timeval>: #include <rtems/score/watchdog.h> rtems_status_code rtems_clock_get_tod_timeval( struct timeval *time ) {
   4f0c4:	4e56 fff8      	linkw %fp,#-8                               <== NOT EXECUTED
   4f0c8:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4f0ca:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   4f0ce:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  if ( !time )                                                        
   4f0d0:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4f0d2:	673c           	beqs 4f110 <rtems_clock_get_tod_timeval+0x4c><== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !_TOD_Is_set )                                                 
   4f0d4:	4a39 0007 5014 	tstb 75014 <_TOD_Is_set>                    <== NOT EXECUTED
   4f0da:	6738           	beqs 4f114 <rtems_clock_get_tod_timeval+0x50><== NOT EXECUTED
{                                                                     
  ISR_Level       level;                                              
  struct timespec now;                                                
  suseconds_t     useconds;                                           
                                                                      
  _ISR_Disable(level);                                                
   4f0dc:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   4f0e2:	40c2           	movew %sr,%d2                               <== NOT EXECUTED
   4f0e4:	8082           	orl %d2,%d0                                 <== NOT EXECUTED
   4f0e6:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
    _TOD_Get( &now );                                                 
   4f0e8:	486e fff8      	pea %fp@(-8)                                <== NOT EXECUTED
   4f0ec:	4eb9 0005 3164 	jsr 53164 <_TOD_Get>                        <== NOT EXECUTED
  _ISR_Enable(level);                                                 
   4f0f2:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
                                                                      
  useconds = (suseconds_t)now.tv_nsec;                                
  useconds /= (suseconds_t)TOD_NANOSECONDS_PER_MICROSECOND;           
                                                                      
  time->tv_sec  = now.tv_sec;                                         
  time->tv_usec = useconds;                                           
   4f0f4:	243c 0000 03e8 	movel #1000,%d2                             <== NOT EXECUTED
    return RTEMS_NOT_DEFINED;                                         
                                                                      
  _TOD_Get_timeval( time );                                           
                                                                      
  return RTEMS_SUCCESSFUL;                                            
   4f0fa:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  _ISR_Disable(level);                                                
    _TOD_Get( &now );                                                 
  _ISR_Enable(level);                                                 
                                                                      
  useconds = (suseconds_t)now.tv_nsec;                                
   4f0fc:	202e fffc      	movel %fp@(-4),%d0                          <== NOT EXECUTED
  useconds /= (suseconds_t)TOD_NANOSECONDS_PER_MICROSECOND;           
                                                                      
  time->tv_sec  = now.tv_sec;                                         
  time->tv_usec = useconds;                                           
   4f100:	4c42 0800      	remsl %d2,%d0,%d0                           <== NOT EXECUTED
  _ISR_Enable(level);                                                 
                                                                      
  useconds = (suseconds_t)now.tv_nsec;                                
  useconds /= (suseconds_t)TOD_NANOSECONDS_PER_MICROSECOND;           
                                                                      
  time->tv_sec  = now.tv_sec;                                         
   4f104:	24ae fff8      	movel %fp@(-8),%a2@                         <== NOT EXECUTED
  time->tv_usec = useconds;                                           
   4f108:	2540 0004      	movel %d0,%a2@(4)                           <== NOT EXECUTED
   4f10c:	4280           	clrl %d0                                    <== NOT EXECUTED
   4f10e:	6006           	bras 4f116 <rtems_clock_get_tod_timeval+0x52><== NOT EXECUTED
rtems_status_code rtems_clock_get_tod_timeval(                        
  struct timeval  *time                                               
)                                                                     
{                                                                     
  if ( !time )                                                        
    return RTEMS_INVALID_ADDRESS;                                     
   4f110:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4f112:	6002           	bras 4f116 <rtems_clock_get_tod_timeval+0x52><== NOT EXECUTED
                                                                      
  if ( !_TOD_Is_set )                                                 
    return RTEMS_NOT_DEFINED;                                         
   4f114:	700b           	moveq #11,%d0                               <== NOT EXECUTED
                                                                      
  _TOD_Get_timeval( time );                                           
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4f116:	242e fff0      	movel %fp@(-16),%d2                         <== NOT EXECUTED
   4f11a:	246e fff4      	moveal %fp@(-12),%a2                        <== NOT EXECUTED
   4f11e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00045218 <rtems_clock_get_uptime>: * error code - if unsuccessful */ rtems_status_code rtems_clock_get_uptime( struct timespec *uptime ) {
   45218:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4521c:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
  if ( !uptime )                                                      
   45220:	670e           	beqs 45230 <rtems_clock_get_uptime+0x18>    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  _TOD_Get_uptime_as_timespec( uptime );                              
   45222:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   45224:	4eb9 0004 672c 	jsr 4672c <_TOD_Get_uptime_as_timespec>     <== NOT EXECUTED
  return RTEMS_SUCCESSFUL;                                            
   4522a:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4522c:	4280           	clrl %d0                                    <== NOT EXECUTED
   4522e:	6002           	bras 45232 <rtems_clock_get_uptime+0x1a>    <== NOT EXECUTED
rtems_status_code rtems_clock_get_uptime(                             
  struct timespec *uptime                                             
)                                                                     
{                                                                     
  if ( !uptime )                                                      
    return RTEMS_INVALID_ADDRESS;                                     
   45230:	7009           	moveq #9,%d0                                <== NOT EXECUTED
                                                                      
  _TOD_Get_uptime_as_timespec( uptime );                              
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   45232:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00045ebc <rtems_clock_set>: */ rtems_status_code rtems_clock_set( rtems_time_of_day *time_buffer ) {
   45ebc:	4e56 fff8      	linkw %fp,#-8                               <== NOT EXECUTED
   45ec0:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   45ec2:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
  struct timespec  newtime;                                           
                                                                      
  if ( !time_buffer )                                                 
   45ec6:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   45ec8:	675a           	beqs 45f24 <rtems_clock_set+0x68>           <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( _TOD_Validate( time_buffer ) ) {                               
   45eca:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   45ecc:	4eb9 0004 600c 	jsr 4600c <_TOD_Validate>                   <== NOT EXECUTED
   45ed2:	588f           	addql #4,%sp                                <== NOT EXECUTED
   45ed4:	4a00           	tstb %d0                                    <== NOT EXECUTED
   45ed6:	6750           	beqs 45f28 <rtems_clock_set+0x6c>           <== NOT EXECUTED
    newtime.tv_sec = _TOD_To_seconds( time_buffer );                  
   45ed8:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   45eda:	4eb9 0004 5f70 	jsr 45f70 <_TOD_To_seconds>                 <== NOT EXECUTED
    newtime.tv_nsec = time_buffer->ticks *                            
   45ee0:	41f9 0005 cfc0 	lea 5cfc0 <Configuration+0xc>,%a0           <== NOT EXECUTED
   45ee6:	223c 0000 03e8 	movel #1000,%d1                             <== NOT EXECUTED
                                                                      
  if ( !time_buffer )                                                 
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( _TOD_Validate( time_buffer ) ) {                               
    newtime.tv_sec = _TOD_To_seconds( time_buffer );                  
   45eec:	2d40 fff8      	movel %d0,%fp@(-8)                          <== NOT EXECUTED
    newtime.tv_nsec = time_buffer->ticks *                            
   45ef0:	202a 0018      	movel %a2@(24),%d0                          <== NOT EXECUTED
   45ef4:	4c10 0800      	mulsl %a0@,%d0                              <== NOT EXECUTED
   45ef8:	4c00 1800      	mulsl %d0,%d1                               <== NOT EXECUTED
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   45efc:	2039 0006 65a8 	movel 665a8 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   45f02:	5280           	addql #1,%d0                                <== NOT EXECUTED
   45f04:	2d41 fffc      	movel %d1,%fp@(-4)                          <== NOT EXECUTED
   45f08:	23c0 0006 65a8 	movel %d0,665a8 <_Thread_Dispatch_disable_level><== NOT EXECUTED
      rtems_configuration_get_nanoseconds_per_tick();                 
                                                                      
    _Thread_Disable_dispatch();                                       
      _TOD_Set( &newtime );                                           
   45f0e:	486e fff8      	pea %fp@(-8)                                <== NOT EXECUTED
   45f12:	4eb9 0004 7644 	jsr 47644 <_TOD_Set>                        <== NOT EXECUTED
    _Thread_Enable_dispatch();                                        
   45f18:	4eb9 0004 8aba 	jsr 48aba <_Thread_Enable_dispatch>         <== NOT EXECUTED
    return RTEMS_SUCCESSFUL;                                          
   45f1e:	508f           	addql #8,%sp                                <== NOT EXECUTED
   45f20:	4280           	clrl %d0                                    <== NOT EXECUTED
   45f22:	6006           	bras 45f2a <rtems_clock_set+0x6e>           <== NOT EXECUTED
)                                                                     
{                                                                     
  struct timespec  newtime;                                           
                                                                      
  if ( !time_buffer )                                                 
    return RTEMS_INVALID_ADDRESS;                                     
   45f24:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   45f26:	6002           	bras 45f2a <rtems_clock_set+0x6e>           <== NOT EXECUTED
    _Thread_Disable_dispatch();                                       
      _TOD_Set( &newtime );                                           
    _Thread_Enable_dispatch();                                        
    return RTEMS_SUCCESSFUL;                                          
  }                                                                   
  return RTEMS_INVALID_CLOCK;                                         
   45f28:	7014           	moveq #20,%d0                               <== NOT EXECUTED
}                                                                     
   45f2a:	246e fff4      	moveal %fp@(-12),%a2                        <== NOT EXECUTED
   45f2e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00044fe8 <rtems_clock_set_nanoseconds_extension>: * error code - if unsuccessful */ rtems_status_code rtems_clock_set_nanoseconds_extension( rtems_nanoseconds_extension_routine routine ) {
   44fe8:	4e56 0000      	linkw %fp,#0                                
   44fec:	202e 0008      	movel %fp@(8),%d0                           
  if ( !routine )                                                     
   44ff0:	670a           	beqs 44ffc <rtems_clock_set_nanoseconds_extension+0x14><== NEVER TAKEN
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  _Watchdog_Nanoseconds_since_tick_handler = routine;                 
   44ff2:	23c0 0005 b004 	movel %d0,5b004 <_Watchdog_Nanoseconds_since_tick_handler>
  return RTEMS_SUCCESSFUL;                                            
   44ff8:	4280           	clrl %d0                                    
   44ffa:	6002           	bras 44ffe <rtems_clock_set_nanoseconds_extension+0x16>
rtems_status_code rtems_clock_set_nanoseconds_extension(              
  rtems_nanoseconds_extension_routine routine                         
)                                                                     
{                                                                     
  if ( !routine )                                                     
    return RTEMS_INVALID_ADDRESS;                                     
   44ffc:	7009           	moveq #9,%d0                                <== NOT EXECUTED
                                                                      
  _Watchdog_Nanoseconds_since_tick_handler = routine;                 
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   44ffe:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

00045004 <rtems_clock_tick>: * * NOTE: This routine only works for leap-years through 2099. */ rtems_status_code rtems_clock_tick( void ) {
   45004:	4e56 0000      	linkw %fp,#0                                
  _TOD_Tickle_ticks();                                                
   45008:	4eb9 0004 63c0 	jsr 463c0 <_TOD_Tickle_ticks>               
 */                                                                   
                                                                      
RTEMS_INLINE_ROUTINE void _Watchdog_Tickle_ticks( void )              
{                                                                     
                                                                      
  _Watchdog_Tickle( &_Watchdog_Ticks_chain );                         
   4500e:	4879 0005 c7a8 	pea 5c7a8 <_Watchdog_Ticks_chain>           <== NOT EXECUTED
   45014:	4eb9 0004 85e4 	jsr 485e4 <_Watchdog_Tickle>                <== NOT EXECUTED
                                                                      
  _Watchdog_Tickle_ticks();                                           
                                                                      
  _Thread_Tickle_timeslice();                                         
   4501a:	4eb9 0004 8104 	jsr 48104 <_Thread_Tickle_timeslice>        <== NOT EXECUTED
                                                                      
  if ( _Thread_Is_context_switch_necessary() &&                       
   45020:	588f           	addql #4,%sp                                <== NOT EXECUTED
 *  otherwise.                                                        
 */                                                                   
                                                                      
RTEMS_INLINE_ROUTINE bool _Thread_Is_context_switch_necessary( void ) 
{                                                                     
  return ( _Thread_Dispatch_necessary );                              
   45022:	1039 0005 c890 	moveb 5c890 <_Per_CPU_Information+0x18>,%d0 <== NOT EXECUTED
   45028:	670e           	beqs 45038 <rtems_clock_tick+0x34>          <== NOT EXECUTED
 *  otherwise.                                                        
 */                                                                   
                                                                      
RTEMS_INLINE_ROUTINE bool _Thread_Is_dispatching_enabled( void )      
{                                                                     
  return ( _Thread_Dispatch_disable_level == 0 );                     
   4502a:	2039 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   45030:	6606           	bnes 45038 <rtems_clock_tick+0x34>          <== NOT EXECUTED
       _Thread_Is_dispatching_enabled() )                             
    _Thread_Dispatch();                                               
   45032:	4eb9 0004 75e0 	jsr 475e0 <_Thread_Dispatch>                <== NOT EXECUTED
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   45038:	4280           	clrl %d0                                    <== NOT EXECUTED
   4503a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00049f6c <rtems_debug_enable>: * rtems_debug_enable */ void rtems_debug_enable ( rtems_debug_control to_be_enabled ) {
   49f6c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  _Debug_Level |= to_be_enabled;                                      
   49f70:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
}                                                                     
   49f74:	4e5e           	unlk %fp                                    <== NOT EXECUTED
 */                                                                   
void rtems_debug_enable (                                             
  rtems_debug_control  to_be_enabled                                  
)                                                                     
{                                                                     
  _Debug_Level |= to_be_enabled;                                      
   49f76:	81b9 0005 c790 	orl %d0,5c790 <_Debug_Level>                <== NOT EXECUTED
}                                                                     
                                                                      

00049fa6 <rtems_debug_is_enabled>: * rtems_debug_is_enabled */ bool rtems_debug_is_enabled( rtems_debug_control level ) {
   49fa6:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return (_Debug_Level & level) ? true : false;                       
   49faa:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
}                                                                     
   49fae:	4e5e           	unlk %fp                                    <== NOT EXECUTED
 */                                                                   
bool rtems_debug_is_enabled(                                          
  rtems_debug_control  level                                          
)                                                                     
{                                                                     
  return (_Debug_Level & level) ? true : false;                       
   49fb0:	c0b9 0005 c790 	andl 5c790 <_Debug_Level>,%d0               <== NOT EXECUTED
   49fb6:	56c0           	sne %d0                                     <== NOT EXECUTED
}                                                                     
   49fb8:	4480           	negl %d0                                    <== NOT EXECUTED
                                                                      

00045040 <rtems_event_receive>: rtems_event_set event_in, rtems_option option_set, rtems_interval ticks, rtems_event_set *event_out ) {
   45040:	4e56 0000      	linkw %fp,#0                                
   45044:	202e 0008      	movel %fp@(8),%d0                           
   45048:	206e 0014      	moveal %fp@(20),%a0                         
  RTEMS_API_Control       *api;                                       
                                                                      
  if ( !event_out )                                                   
   4504c:	4a88           	tstl %a0                                    
   4504e:	6748           	beqs 45098 <rtems_event_receive+0x58>       <== NEVER TAKEN
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  api = _Thread_Executing->API_Extensions[ THREAD_API_RTEMS ];        
   45050:	2279 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a1 
   45056:	2269 00fc      	moveal %a1@(252),%a1                        
                                                                      
  if ( _Event_sets_Is_empty( event_in ) ) {                           
   4505a:	4a80           	tstl %d0                                    
   4505c:	6604           	bnes 45062 <rtems_event_receive+0x22>       <== ALWAYS TAKEN
    *event_out = api->pending_events;                                 
   4505e:	2091           	movel %a1@,%a0@                             <== NOT EXECUTED
    return RTEMS_SUCCESSFUL;                                          
   45060:	6038           	bras 4509a <rtems_event_receive+0x5a>       <== NOT EXECUTED
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   45062:	2239 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d1
   45068:	5281           	addql #1,%d1                                
   4506a:	23c1 0005 c6c8 	movel %d1,5c6c8 <_Thread_Dispatch_disable_level>
  }                                                                   
                                                                      
  _Thread_Disable_dispatch();                                         
  _Event_Seize( event_in, option_set, ticks, event_out );             
   45070:	2f08           	movel %a0,%sp@-                             
   45072:	2f2e 0010      	movel %fp@(16),%sp@-                        
   45076:	2f2e 000c      	movel %fp@(12),%sp@-                        
   4507a:	2f00           	movel %d0,%sp@-                             
   4507c:	4eb9 0004 50a0 	jsr 450a0 <_Event_Seize>                    
  _Thread_Enable_dispatch();                                          
   45082:	4eb9 0004 771e 	jsr 4771e <_Thread_Enable_dispatch>         
  return( _Thread_Executing->Wait.return_code );                      
   45088:	2079 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a0 
   4508e:	4fef 0010      	lea %sp@(16),%sp                            
   45092:	2028 0034      	movel %a0@(52),%d0                          
   45096:	6002           	bras 4509a <rtems_event_receive+0x5a>       
)                                                                     
{                                                                     
  RTEMS_API_Control       *api;                                       
                                                                      
  if ( !event_out )                                                   
    return RTEMS_INVALID_ADDRESS;                                     
   45098:	7009           	moveq #9,%d0                                <== NOT EXECUTED
                                                                      
  _Thread_Disable_dispatch();                                         
  _Event_Seize( event_in, option_set, ticks, event_out );             
  _Thread_Enable_dispatch();                                          
  return( _Thread_Executing->Wait.return_code );                      
}                                                                     
   4509a:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

000451a4 <rtems_event_send>: rtems_status_code rtems_event_send( rtems_id id, rtems_event_set event_in ) {
   451a4:	4e56 fffc      	linkw %fp,#-4                               
   451a8:	2f02           	movel %d2,%sp@-                             
  register Thread_Control *the_thread;                                
  Objects_Locations        location;                                  
  RTEMS_API_Control       *api;                                       
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   451aa:	486e fffc      	pea %fp@(-4)                                
   451ae:	2f2e 0008      	movel %fp@(8),%sp@-                         
   451b2:	4eb9 0004 7744 	jsr 47744 <_Thread_Get>                     
  switch ( location ) {                                               
   451b8:	508f           	addql #8,%sp                                
   451ba:	4aae fffc      	tstl %fp@(-4)                               
   451be:	662e           	bnes 451ee <rtems_event_send+0x4a>          <== NEVER TAKEN
                                                                      
    case OBJECTS_LOCAL:                                               
      api = the_thread->API_Extensions[ THREAD_API_RTEMS ];           
   451c0:	2240           	moveal %d0,%a1                              
  rtems_event_set *the_event_set                                      
)                                                                     
{                                                                     
  ISR_Level level;                                                    
                                                                      
  _ISR_Disable( level );                                              
   451c2:	223c 0000 0700 	movel #1792,%d1                             
   451c8:	2069 00fc      	moveal %a1@(252),%a0                        
   451cc:	40c2           	movew %sr,%d2                               
   451ce:	8282           	orl %d2,%d1                                 
   451d0:	46c1           	movew %d1,%sr                               
    *the_event_set |= the_new_events;                                 
   451d2:	222e 000c      	movel %fp@(12),%d1                          
   451d6:	8390           	orl %d1,%a0@                                
  _ISR_Enable( level );                                               
   451d8:	46c2           	movew %d2,%sr                               
      _Event_sets_Post( event_in, &api->pending_events );             
      _Event_Surrender( the_thread );                                 
   451da:	2f00           	movel %d0,%sp@-                             
   451dc:	4eb9 0004 51f8 	jsr 451f8 <_Event_Surrender>                
      _Thread_Enable_dispatch();                                      
   451e2:	4eb9 0004 771e 	jsr 4771e <_Thread_Enable_dispatch>         
      return RTEMS_SUCCESSFUL;                                        
   451e8:	588f           	addql #4,%sp                                
   451ea:	4280           	clrl %d0                                    
   451ec:	6002           	bras 451f0 <rtems_event_send+0x4c>          
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   451ee:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   451f0:	242e fff8      	movel %fp@(-8),%d2                          
   451f4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046df8 <rtems_extension_create>: rtems_status_code rtems_extension_create( rtems_name name, const rtems_extensions_table *extension_table, rtems_id *id ) {
   46df8:	4e56 fff0      	linkw %fp,#-16                              <== NOT EXECUTED
   46dfc:	48d7 1c04      	moveml %d2/%a2-%a4,%sp@                     <== NOT EXECUTED
   46e00:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
   46e04:	286e 0010      	moveal %fp@(16),%a4                         <== NOT EXECUTED
  Extension_Control *the_extension;                                   
                                                                      
  if ( !id )                                                          
   46e08:	4a8c           	tstl %a4                                    <== NOT EXECUTED
   46e0a:	6770           	beqs 46e7c <rtems_extension_create+0x84>    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
   46e0c:	4a82           	tstl %d2                                    <== NOT EXECUTED
   46e0e:	6770           	beqs 46e80 <rtems_extension_create+0x88>    <== NOT EXECUTED
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   46e10:	2039 0006 65a8 	movel 665a8 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   46e16:	5280           	addql #1,%d0                                <== NOT EXECUTED
   46e18:	23c0 0006 65a8 	movel %d0,665a8 <_Thread_Dispatch_disable_level><== NOT EXECUTED
#ifndef __EXTENSION_MANAGER_inl                                       
#define __EXTENSION_MANAGER_inl                                       
                                                                      
RTEMS_INLINE_ROUTINE Extension_Control *_Extension_Allocate( void )   
{                                                                     
  return (Extension_Control *) _Objects_Allocate( &_Extension_Information );
   46e1e:	4879 0006 672c 	pea 6672c <_Extension_Information>          <== NOT EXECUTED
   46e24:	47f9 0004 8aba 	lea 48aba <_Thread_Enable_dispatch>,%a3     <== NOT EXECUTED
   46e2a:	4eb9 0004 7b54 	jsr 47b54 <_Objects_Allocate>               <== NOT EXECUTED
                                                                      
  _Thread_Disable_dispatch();         /* to prevent deletion */       
                                                                      
  the_extension = _Extension_Allocate();                              
                                                                      
  if ( !the_extension ) {                                             
   46e30:	588f           	addql #4,%sp                                <== NOT EXECUTED
   46e32:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   46e34:	4a80           	tstl %d0                                    <== NOT EXECUTED
   46e36:	6606           	bnes 46e3e <rtems_extension_create+0x46>    <== NOT EXECUTED
    _Thread_Enable_dispatch();                                        
   46e38:	4e93           	jsr %a3@                                    <== NOT EXECUTED
    return RTEMS_TOO_MANY;                                            
   46e3a:	7005           	moveq #5,%d0                                <== NOT EXECUTED
   46e3c:	6044           	bras 46e82 <rtems_extension_create+0x8a>    <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _User_extensions_Add_set_with_table(        
  User_extensions_Control     *extension,                             
  const User_extensions_Table *extension_table                        
)                                                                     
{                                                                     
  extension->Callouts = *extension_table;                             
   46e3e:	4878 0020      	pea 20 <OPER2+0xc>                          <== NOT EXECUTED
   46e42:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   46e46:	486a 0024      	pea %a2@(36)                                <== NOT EXECUTED
   46e4a:	4eb9 0004 d7bc 	jsr 4d7bc <memcpy>                          <== NOT EXECUTED
                                                                      
  _User_extensions_Add_set( extension );                              
   46e50:	486a 0010      	pea %a2@(16)                                <== NOT EXECUTED
   46e54:	4eb9 0004 968c 	jsr 4968c <_User_extensions_Add_set>        <== NOT EXECUTED
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
   46e5a:	202a 0008      	movel %a2@(8),%d0                           <== NOT EXECUTED
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   46e5e:	4281           	clrl %d1                                    <== NOT EXECUTED
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   46e60:	2079 0006 6744 	moveal 66744 <_Extension_Information+0x18>,%a0<== NOT EXECUTED
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   46e66:	3200           	movew %d0,%d1                               <== NOT EXECUTED
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   46e68:	218a 1c00      	movel %a2,%a0@(00000000,%d1:l:4)            <== NOT EXECUTED
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
    the_object                                                        
  );                                                                  
                                                                      
  the_object->name = name;                                            
   46e6c:	2542 000c      	movel %d2,%a2@(12)                          <== NOT EXECUTED
    &_Extension_Information,                                          
    &the_extension->Object,                                           
    (Objects_Name) name                                               
  );                                                                  
                                                                      
  *id = the_extension->Object.id;                                     
   46e70:	2880           	movel %d0,%a4@                              <== NOT EXECUTED
  _Thread_Enable_dispatch();                                          
   46e72:	4e93           	jsr %a3@                                    <== NOT EXECUTED
  return RTEMS_SUCCESSFUL;                                            
   46e74:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   46e78:	4280           	clrl %d0                                    <== NOT EXECUTED
   46e7a:	6006           	bras 46e82 <rtems_extension_create+0x8a>    <== NOT EXECUTED
)                                                                     
{                                                                     
  Extension_Control *the_extension;                                   
                                                                      
  if ( !id )                                                          
    return RTEMS_INVALID_ADDRESS;                                     
   46e7c:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   46e7e:	6002           	bras 46e82 <rtems_extension_create+0x8a>    <== NOT EXECUTED
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
    return RTEMS_INVALID_NAME;                                        
   46e80:	7003           	moveq #3,%d0                                <== NOT EXECUTED
  );                                                                  
                                                                      
  *id = the_extension->Object.id;                                     
  _Thread_Enable_dispatch();                                          
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   46e82:	4cee 1c04 fff0 	moveml %fp@(-16),%d2/%a2-%a4                <== NOT EXECUTED
   46e88:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046c68 <rtems_extension_delete>: #include <rtems/extension.h> rtems_status_code rtems_extension_delete( rtems_id id ) {
   46c68:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   46c6c:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Extension_Control *)                                        
    _Objects_Get( &_Extension_Information, id, location );            
   46c6e:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   46c72:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   46c76:	4879 0006 60ac 	pea 660ac <_Extension_Information>          <== NOT EXECUTED
   46c7c:	4eb9 0004 7d30 	jsr 47d30 <_Objects_Get>                    <== NOT EXECUTED
  Extension_Control   *the_extension;                                 
  Objects_Locations    location;                                      
                                                                      
  the_extension = _Extension_Get( id, &location );                    
  switch ( location ) {                                               
   46c82:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   46c86:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   46c88:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   46c8c:	6634           	bnes 46cc2 <rtems_extension_delete+0x5a>    <== NOT EXECUTED
    case OBJECTS_LOCAL:                                               
      _User_extensions_Remove_set( &the_extension->Extension );       
   46c8e:	486a 0010      	pea %a2@(16)                                <== NOT EXECUTED
   46c92:	4eb9 0004 9364 	jsr 49364 <_User_extensions_Remove_set>     <== NOT EXECUTED
      _Objects_Close( &_Extension_Information, &the_extension->Object );
   46c98:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   46c9a:	4879 0006 60ac 	pea 660ac <_Extension_Information>          <== NOT EXECUTED
   46ca0:	4eb9 0004 7954 	jsr 47954 <_Objects_Close>                  <== NOT EXECUTED
                                                                      
RTEMS_INLINE_ROUTINE void _Extension_Free (                           
  Extension_Control *the_extension                                    
)                                                                     
{                                                                     
  _Objects_Free( &_Extension_Information, &the_extension->Object );   
   46ca6:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   46ca8:	4879 0006 60ac 	pea 660ac <_Extension_Information>          <== NOT EXECUTED
   46cae:	4eb9 0004 7bcc 	jsr 47bcc <_Objects_Free>                   <== NOT EXECUTED
      _Extension_Free( the_extension );                               
      _Thread_Enable_dispatch();                                      
   46cb4:	4eb9 0004 8772 	jsr 48772 <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   46cba:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   46cbe:	4280           	clrl %d0                                    <== NOT EXECUTED
   46cc0:	6002           	bras 46cc4 <rtems_extension_delete+0x5c>    <== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   46cc2:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   46cc4:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   46cc8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00047670 <rtems_extension_ident>: rtems_status_code rtems_extension_ident( rtems_name name, rtems_id *id ) {
   47670:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  Objects_Name_or_id_lookup_errors  status;                           
                                                                      
  status = _Objects_Name_to_id_u32(                                   
   47674:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   47678:	2f3c 7fff ffff 	movel #2147483647,%sp@-                     <== NOT EXECUTED
   4767e:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   47682:	4879 0005 f25c 	pea 5f25c <_Extension_Information>          <== NOT EXECUTED
   47688:	4eb9 0004 8800 	jsr 48800 <_Objects_Name_to_id_u32>         <== NOT EXECUTED
    OBJECTS_SEARCH_LOCAL_NODE,                                        
    id                                                                
  );                                                                  
                                                                      
  return _Status_Object_name_errors_to_status[ status ];              
}                                                                     
   4768e:	41f9 0005 c8fa 	lea 5c8fa <_Status_Object_name_errors_to_status>,%a0<== NOT EXECUTED
   47694:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   47696:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
                                                                      

00047728 <rtems_get_version_string>: #endif #include <rtems/system.h> const char *rtems_get_version_string(void) {
   47728:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return _RTEMS_version;                                              
}                                                                     
   4772c:	203c 0005 d7ec 	movel #382956,%d0                           <== NOT EXECUTED
   47732:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00045c1e <rtems_initialize_start_multitasking>:
   45c1e:	7002           	moveq #2,%d0                                
}                                                                     
                                                                      
void rtems_initialize_start_multitasking(void)                        
{                                                                     
   45c20:	4e56 0000      	linkw %fp,#0                                
   ******                 APPLICATION RUNS HERE                 ******
   ******            RETURNS WHEN SYSTEM IS SHUT DOWN           ******
   *******************************************************************
   *******************************************************************
   *******************************************************************/
}                                                                     
   45c24:	4e5e           	unlk %fp                                    
   45c26:	23c0 0005 c830 	movel %d0,5c830 <_System_state_Current>     
void rtems_initialize_start_multitasking(void)                        
{                                                                     
                                                                      
  _System_state_Set( SYSTEM_STATE_BEGIN_MULTITASKING );               
                                                                      
  _Thread_Start_multitasking();                                       
   45c2c:	4ef9 0004 8014 	jmp 48014 <_Thread_Start_multitasking>      
	...                                                                  
                                                                      

0004537c <rtems_interrupt_catch>: rtems_status_code rtems_interrupt_catch( rtems_isr_entry new_isr_handler, rtems_vector_number vector, rtems_isr_entry *old_isr_handler ) {
   4537c:	4e56 0000      	linkw %fp,#0                                
   45380:	222e 0008      	movel %fp@(8),%d1                           
   45384:	202e 000c      	movel %fp@(12),%d0                          
   45388:	206e 0010      	moveal %fp@(16),%a0                         
  if ( !_ISR_Is_vector_number_valid( vector ) )                       
   4538c:	0c80 0000 00ff 	cmpil #255,%d0                              
   45392:	621c           	bhis 453b0 <rtems_interrupt_catch+0x34>     <== NEVER TAKEN
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  if ( !_ISR_Is_valid_user_handler( (void *) new_isr_handler ) )      
   45394:	4a81           	tstl %d1                                    
   45396:	671c           	beqs 453b4 <rtems_interrupt_catch+0x38>     <== NEVER TAKEN
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !_ISR_Is_valid_user_handler( (void *) old_isr_handler ) )      
   45398:	4a88           	tstl %a0                                    
   4539a:	6718           	beqs 453b4 <rtems_interrupt_catch+0x38>     <== NEVER TAKEN
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  _ISR_Install_vector(                                                
   4539c:	2f08           	movel %a0,%sp@-                             
   4539e:	2f01           	movel %d1,%sp@-                             
   453a0:	2f00           	movel %d0,%sp@-                             
   453a2:	4eb9 0004 8816 	jsr 48816 <_CPU_ISR_install_vector>         
    vector, (proc_ptr)new_isr_handler, (proc_ptr *)old_isr_handler ); 
                                                                      
  return RTEMS_SUCCESSFUL;                                            
   453a8:	4fef 000c      	lea %sp@(12),%sp                            
   453ac:	4280           	clrl %d0                                    
   453ae:	6006           	bras 453b6 <rtems_interrupt_catch+0x3a>     
  rtems_vector_number  vector,                                        
  rtems_isr_entry     *old_isr_handler                                
)                                                                     
{                                                                     
  if ( !_ISR_Is_vector_number_valid( vector ) )                       
    return RTEMS_INVALID_NUMBER;                                      
   453b0:	700a           	moveq #10,%d0                               <== NOT EXECUTED
   453b2:	6002           	bras 453b6 <rtems_interrupt_catch+0x3a>     <== NOT EXECUTED
                                                                      
  if ( !_ISR_Is_valid_user_handler( (void *) new_isr_handler ) )      
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !_ISR_Is_valid_user_handler( (void *) old_isr_handler ) )      
    return RTEMS_INVALID_ADDRESS;                                     
   453b4:	7009           	moveq #9,%d0                                <== NOT EXECUTED
                                                                      
  _ISR_Install_vector(                                                
    vector, (proc_ptr)new_isr_handler, (proc_ptr *)old_isr_handler ); 
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   453b6:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

00045f14 <rtems_interrupt_disable>: rtems_interrupt_level rtems_interrupt_disable( void ) { rtems_interrupt_level previous_level; _ISR_Disable( previous_level );
   45f14:	223c 0000 0700 	movel #1792,%d1                             <== NOT EXECUTED
 */                                                                   
                                                                      
#undef rtems_interrupt_disable                                        
                                                                      
rtems_interrupt_level rtems_interrupt_disable( void )                 
{                                                                     
   45f1a:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  rtems_interrupt_level previous_level;                               
                                                                      
  _ISR_Disable( previous_level );                                     
   45f1e:	40c0           	movew %sr,%d0                               <== NOT EXECUTED
   45f20:	8280           	orl %d0,%d1                                 <== NOT EXECUTED
   45f22:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
                                                                      
  return previous_level;                                              
}                                                                     
   45f24:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00045f28 <rtems_interrupt_enable>: #undef rtems_interrupt_enable void rtems_interrupt_enable( rtems_interrupt_level previous_level ) {
   45f28:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  _ISR_Enable( previous_level );                                      
   45f2c:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   45f30:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
}                                                                     
   45f32:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00045f36 <rtems_interrupt_flash>: #undef rtems_interrupt_flash void rtems_interrupt_flash( rtems_interrupt_level previous_level ) {
   45f36:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  _ISR_Flash( previous_level );                                       
   45f3a:	222e 0008      	movel %fp@(8),%d1                           <== NOT EXECUTED
   45f3e:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   45f44:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
   45f46:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   45f48:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
}                                                                     
   45f4a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00045f4e <rtems_interrupt_is_in_progress>: */ #undef rtems_interrupt_is_in_progress bool rtems_interrupt_is_in_progress( void ) {
   45f4e:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return _ISR_Is_in_progress();                                       
   45f52:	4ab9 0005 da80 	tstl 5da80 <_Per_CPU_Information+0x8>       <== NOT EXECUTED
   45f58:	56c0           	sne %d0                                     <== NOT EXECUTED
}                                                                     
   45f5a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   45f5c:	4480           	negl %d0                                    <== NOT EXECUTED
                                                                      

000459b0 <rtems_interrupt_level_attribute>: rtems_attribute rtems_interrupt_level_attribute( uint32_t level ) { return RTEMS_INTERRUPT_LEVEL(level); }
   459b0:	7007           	moveq #7,%d0                                <== NOT EXECUTED
uint32_t   rtems_interrupt_mask = RTEMS_INTERRUPT_MASK;               
                                                                      
rtems_attribute rtems_interrupt_level_attribute(                      
  uint32_t   level                                                    
)                                                                     
{                                                                     
   459b2:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return RTEMS_INTERRUPT_LEVEL(level);                                
}                                                                     
   459b6:	c0ae 0008      	andl %fp@(8),%d0                            <== NOT EXECUTED
   459ba:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004b874 <rtems_io_close>: rtems_status_code rtems_io_close( rtems_device_major_number major, rtems_device_minor_number minor, void *argument ) {
   4b874:	4e56 0000      	linkw %fp,#0                                
   4b878:	202e 0008      	movel %fp@(8),%d0                           
   4b87c:	2f03           	movel %d3,%sp@-                             
   4b87e:	2f02           	movel %d2,%sp@-                             
  rtems_device_driver_entry callout;                                  
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
   4b880:	b0b9 0005 c8f4 	cmpl 5c8f4 <_IO_Number_of_drivers>,%d0      
   4b886:	6420           	bccs 4b8a8 <rtems_io_close+0x34>            <== NEVER TAKEN
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  callout = _IO_Driver_address_table[major].close_entry;              
   4b888:	2600           	movel %d0,%d3                               
   4b88a:	2200           	movel %d0,%d1                               
   4b88c:	e78b           	lsll #3,%d3                                 
   4b88e:	eb89           	lsll #5,%d1                                 
   4b890:	2279 0005 c8f8 	moveal 5c8f8 <_IO_Driver_address_table>,%a1 
   4b896:	9283           	subl %d3,%d1                                
   4b898:	2271 1808      	moveal %a1@(00000008,%d1:l),%a1             
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   4b89c:	4a89           	tstl %a1                                    
   4b89e:	670c           	beqs 4b8ac <rtems_io_close+0x38>            <== NEVER TAKEN
}                                                                     
   4b8a0:	241f           	movel %sp@+,%d2                             
   4b8a2:	261f           	movel %sp@+,%d3                             
   4b8a4:	4e5e           	unlk %fp                                    
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  callout = _IO_Driver_address_table[major].close_entry;              
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   4b8a6:	4ed1           	jmp %a1@                                    
)                                                                     
{                                                                     
  rtems_device_driver_entry callout;                                  
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
    return RTEMS_INVALID_NUMBER;                                      
   4b8a8:	700a           	moveq #10,%d0                               <== NOT EXECUTED
   4b8aa:	6002           	bras 4b8ae <rtems_io_close+0x3a>            <== NOT EXECUTED
                                                                      
  callout = _IO_Driver_address_table[major].close_entry;              
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   4b8ac:	4280           	clrl %d0                                    <== NOT EXECUTED
}                                                                     
   4b8ae:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
   4b8b0:	261f           	movel %sp@+,%d3                             <== NOT EXECUTED
   4b8b2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004b8b8 <rtems_io_control>: rtems_status_code rtems_io_control( rtems_device_major_number major, rtems_device_minor_number minor, void *argument ) {
   4b8b8:	4e56 0000      	linkw %fp,#0                                
   4b8bc:	202e 0008      	movel %fp@(8),%d0                           
   4b8c0:	2f03           	movel %d3,%sp@-                             
   4b8c2:	2f02           	movel %d2,%sp@-                             
  rtems_device_driver_entry callout;                                  
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
   4b8c4:	b0b9 0005 c8f4 	cmpl 5c8f4 <_IO_Number_of_drivers>,%d0      
   4b8ca:	6420           	bccs 4b8ec <rtems_io_control+0x34>          <== NEVER TAKEN
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  callout = _IO_Driver_address_table[major].control_entry;            
   4b8cc:	2600           	movel %d0,%d3                               
   4b8ce:	2200           	movel %d0,%d1                               
   4b8d0:	e78b           	lsll #3,%d3                                 
   4b8d2:	eb89           	lsll #5,%d1                                 
   4b8d4:	2279 0005 c8f8 	moveal 5c8f8 <_IO_Driver_address_table>,%a1 
   4b8da:	9283           	subl %d3,%d1                                
   4b8dc:	2271 1814      	moveal %a1@(00000014,%d1:l),%a1             
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   4b8e0:	4a89           	tstl %a1                                    
   4b8e2:	670c           	beqs 4b8f0 <rtems_io_control+0x38>          <== NEVER TAKEN
}                                                                     
   4b8e4:	241f           	movel %sp@+,%d2                             
   4b8e6:	261f           	movel %sp@+,%d3                             
   4b8e8:	4e5e           	unlk %fp                                    
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  callout = _IO_Driver_address_table[major].control_entry;            
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   4b8ea:	4ed1           	jmp %a1@                                    
)                                                                     
{                                                                     
  rtems_device_driver_entry callout;                                  
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
    return RTEMS_INVALID_NUMBER;                                      
   4b8ec:	700a           	moveq #10,%d0                               <== NOT EXECUTED
   4b8ee:	6002           	bras 4b8f2 <rtems_io_control+0x3a>          <== NOT EXECUTED
                                                                      
  callout = _IO_Driver_address_table[major].control_entry;            
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   4b8f0:	4280           	clrl %d0                                    <== NOT EXECUTED
}                                                                     
   4b8f2:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
   4b8f4:	261f           	movel %sp@+,%d3                             <== NOT EXECUTED
   4b8f6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00049fbc <rtems_io_initialize>: rtems_status_code rtems_io_initialize( rtems_device_major_number major, rtems_device_minor_number minor, void *argument ) {
   49fbc:	4e56 0000      	linkw %fp,#0                                
   49fc0:	202e 0008      	movel %fp@(8),%d0                           
   49fc4:	2f03           	movel %d3,%sp@-                             
   49fc6:	2f02           	movel %d2,%sp@-                             
  rtems_device_driver_entry callout;                                  
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
   49fc8:	b0b9 0005 c8f4 	cmpl 5c8f4 <_IO_Number_of_drivers>,%d0      
   49fce:	6420           	bccs 49ff0 <rtems_io_initialize+0x34>       <== NEVER TAKEN
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  callout = _IO_Driver_address_table[major].initialization_entry;     
   49fd0:	2600           	movel %d0,%d3                               
   49fd2:	2400           	movel %d0,%d2                               
   49fd4:	e78b           	lsll #3,%d3                                 
   49fd6:	2279 0005 c8f8 	moveal 5c8f8 <_IO_Driver_address_table>,%a1 
   49fdc:	93c3           	subal %d3,%a1                               
   49fde:	eb8a           	lsll #5,%d2                                 
   49fe0:	2271 2800      	moveal %a1@(00000000,%d2:l),%a1             
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   49fe4:	4a89           	tstl %a1                                    
   49fe6:	670c           	beqs 49ff4 <rtems_io_initialize+0x38>       
}                                                                     
   49fe8:	241f           	movel %sp@+,%d2                             
   49fea:	261f           	movel %sp@+,%d3                             
   49fec:	4e5e           	unlk %fp                                    
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  callout = _IO_Driver_address_table[major].initialization_entry;     
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   49fee:	4ed1           	jmp %a1@                                    
)                                                                     
{                                                                     
  rtems_device_driver_entry callout;                                  
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
    return RTEMS_INVALID_NUMBER;                                      
   49ff0:	700a           	moveq #10,%d0                               <== NOT EXECUTED
   49ff2:	6002           	bras 49ff6 <rtems_io_initialize+0x3a>       <== NOT EXECUTED
                                                                      
  callout = _IO_Driver_address_table[major].initialization_entry;     
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   49ff4:	4280           	clrl %d0                                    
}                                                                     
   49ff6:	241f           	movel %sp@+,%d2                             
   49ff8:	261f           	movel %sp@+,%d3                             
   49ffa:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

0004b8fc <rtems_io_open>: rtems_status_code rtems_io_open( rtems_device_major_number major, rtems_device_minor_number minor, void *argument ) {
   4b8fc:	4e56 0000      	linkw %fp,#0                                
   4b900:	202e 0008      	movel %fp@(8),%d0                           
   4b904:	2f03           	movel %d3,%sp@-                             
   4b906:	2f02           	movel %d2,%sp@-                             
  rtems_device_driver_entry callout;                                  
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
   4b908:	b0b9 0005 c8f4 	cmpl 5c8f4 <_IO_Number_of_drivers>,%d0      
   4b90e:	6420           	bccs 4b930 <rtems_io_open+0x34>             <== NEVER TAKEN
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  callout = _IO_Driver_address_table[major].open_entry;               
   4b910:	2600           	movel %d0,%d3                               
   4b912:	2200           	movel %d0,%d1                               
   4b914:	e78b           	lsll #3,%d3                                 
   4b916:	eb89           	lsll #5,%d1                                 
   4b918:	2279 0005 c8f8 	moveal 5c8f8 <_IO_Driver_address_table>,%a1 
   4b91e:	9283           	subl %d3,%d1                                
   4b920:	2271 1804      	moveal %a1@(00000004,%d1:l),%a1             
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   4b924:	4a89           	tstl %a1                                    
   4b926:	670c           	beqs 4b934 <rtems_io_open+0x38>             <== NEVER TAKEN
}                                                                     
   4b928:	241f           	movel %sp@+,%d2                             
   4b92a:	261f           	movel %sp@+,%d3                             
   4b92c:	4e5e           	unlk %fp                                    
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  callout = _IO_Driver_address_table[major].open_entry;               
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   4b92e:	4ed1           	jmp %a1@                                    
)                                                                     
{                                                                     
  rtems_device_driver_entry callout;                                  
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
    return RTEMS_INVALID_NUMBER;                                      
   4b930:	700a           	moveq #10,%d0                               <== NOT EXECUTED
   4b932:	6002           	bras 4b936 <rtems_io_open+0x3a>             <== NOT EXECUTED
                                                                      
  callout = _IO_Driver_address_table[major].open_entry;               
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   4b934:	4280           	clrl %d0                                    <== NOT EXECUTED
}                                                                     
   4b936:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
   4b938:	261f           	movel %sp@+,%d3                             <== NOT EXECUTED
   4b93a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004b940 <rtems_io_read>: rtems_status_code rtems_io_read( rtems_device_major_number major, rtems_device_minor_number minor, void *argument ) {
   4b940:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4b944:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   4b948:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4b94a:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  rtems_device_driver_entry callout;                                  
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
   4b94c:	b0b9 0005 c8f4 	cmpl 5c8f4 <_IO_Number_of_drivers>,%d0      <== NOT EXECUTED
   4b952:	6420           	bccs 4b974 <rtems_io_read+0x34>             <== NOT EXECUTED
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  callout = _IO_Driver_address_table[major].read_entry;               
   4b954:	2600           	movel %d0,%d3                               <== NOT EXECUTED
   4b956:	2200           	movel %d0,%d1                               <== NOT EXECUTED
   4b958:	e78b           	lsll #3,%d3                                 <== NOT EXECUTED
   4b95a:	eb89           	lsll #5,%d1                                 <== NOT EXECUTED
   4b95c:	2279 0005 c8f8 	moveal 5c8f8 <_IO_Driver_address_table>,%a1 <== NOT EXECUTED
   4b962:	9283           	subl %d3,%d1                                <== NOT EXECUTED
   4b964:	2271 180c      	moveal %a1@(0000000c,%d1:l),%a1             <== NOT EXECUTED
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   4b968:	4a89           	tstl %a1                                    <== NOT EXECUTED
   4b96a:	670c           	beqs 4b978 <rtems_io_read+0x38>             <== NOT EXECUTED
}                                                                     
   4b96c:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
   4b96e:	261f           	movel %sp@+,%d3                             <== NOT EXECUTED
   4b970:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  callout = _IO_Driver_address_table[major].read_entry;               
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   4b972:	4ed1           	jmp %a1@                                    <== NOT EXECUTED
)                                                                     
{                                                                     
  rtems_device_driver_entry callout;                                  
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
    return RTEMS_INVALID_NUMBER;                                      
   4b974:	700a           	moveq #10,%d0                               <== NOT EXECUTED
   4b976:	6002           	bras 4b97a <rtems_io_read+0x3a>             <== NOT EXECUTED
                                                                      
  callout = _IO_Driver_address_table[major].read_entry;               
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   4b978:	4280           	clrl %d0                                    <== NOT EXECUTED
}                                                                     
   4b97a:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
   4b97c:	261f           	movel %sp@+,%d3                             <== NOT EXECUTED
   4b97e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00046bf4 <rtems_io_register_driver>: rtems_status_code rtems_io_register_driver( rtems_device_major_number major, const rtems_driver_address_table *driver_table, rtems_device_major_number *registered_major ) {
   46bf4:	4e56 0000      	linkw %fp,#0                                
   46bf8:	206e 000c      	moveal %fp@(12),%a0                         
   46bfc:	2f0a           	movel %a2,%sp@-                             
   46bfe:	226e 0010      	moveal %fp@(16),%a1                         
   46c02:	2f02           	movel %d2,%sp@-                             
   46c04:	242e 0008      	movel %fp@(8),%d2                           
  rtems_device_major_number major_limit = _IO_Number_of_drivers;      
   46c08:	2039 0005 ff7c 	movel 5ff7c <_IO_Number_of_drivers>,%d0     
                                                                      
  if ( rtems_interrupt_is_in_progress() )                             
   46c0e:	4ab9 0005 ff08 	tstl 5ff08 <_Per_CPU_Information+0x8>       
   46c14:	6600 00d8      	bnew 46cee <rtems_io_register_driver+0xfa>  
    return RTEMS_CALLED_FROM_ISR;                                     
                                                                      
  if ( registered_major == NULL )                                     
   46c18:	4a89           	tstl %a1                                    
   46c1a:	6700 00d6      	beqw 46cf2 <rtems_io_register_driver+0xfe>  
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  /* Set it to an invalid value */                                    
  *registered_major = major_limit;                                    
   46c1e:	2280           	movel %d0,%a1@                              
                                                                      
  if ( driver_table == NULL )                                         
   46c20:	4a88           	tstl %a0                                    
   46c22:	6700 00ce      	beqw 46cf2 <rtems_io_register_driver+0xfe>  
                                                                      
static inline bool rtems_io_is_empty_table(                           
  const rtems_driver_address_table *table                             
)                                                                     
{                                                                     
  return table->initialization_entry == NULL && table->open_entry == NULL;
   46c26:	4a90           	tstl %a0@                                   
   46c28:	6600 00da      	bnew 46d04 <rtems_io_register_driver+0x110> 
   46c2c:	4aa8 0004      	tstl %a0@(4)                                
   46c30:	6600 00d2      	bnew 46d04 <rtems_io_register_driver+0x110> 
   46c34:	6000 00bc      	braw 46cf2 <rtems_io_register_driver+0xfe>  <== NOT EXECUTED
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   46c38:	2039 0005 fd50 	movel 5fd50 <_Thread_Dispatch_disable_level>,%d0
   46c3e:	5280           	addql #1,%d0                                
   46c40:	23c0 0005 fd50 	movel %d0,5fd50 <_Thread_Dispatch_disable_level>
  if ( major >= major_limit )                                         
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  _Thread_Disable_dispatch();                                         
                                                                      
  if ( major == 0 ) {                                                 
   46c46:	4a82           	tstl %d2                                    
   46c48:	662c           	bnes 46c76 <rtems_io_register_driver+0x82>  <== NEVER TAKEN
                                                                      
static rtems_status_code rtems_io_obtain_major_number(                
  rtems_device_major_number *major                                    
)                                                                     
{                                                                     
  rtems_device_major_number n = _IO_Number_of_drivers;                
   46c4a:	2039 0005 ff7c 	movel 5ff7c <_IO_Number_of_drivers>,%d0     
   46c50:	2479 0005 ff80 	moveal 5ff80 <_IO_Driver_address_table>,%a2 
   46c56:	6010           	bras 46c68 <rtems_io_register_driver+0x74>  
                                                                      
static inline bool rtems_io_is_empty_table(                           
  const rtems_driver_address_table *table                             
)                                                                     
{                                                                     
  return table->initialization_entry == NULL && table->open_entry == NULL;
   46c58:	4a92           	tstl %a2@                                   
   46c5a:	6600 00b0      	bnew 46d0c <rtems_io_register_driver+0x118> 
   46c5e:	4aaa 0004      	tstl %a2@(4)                                
   46c62:	6600 00a8      	bnew 46d0c <rtems_io_register_driver+0x118> 
   46c66:	6004           	bras 46c6c <rtems_io_register_driver+0x78>  
  rtems_device_major_number n = _IO_Number_of_drivers;                
  rtems_device_major_number m = 0;                                    
                                                                      
  /* major is error checked by caller */                              
                                                                      
  for ( m = 0; m < n; ++m ) {                                         
   46c68:	b082           	cmpl %d2,%d0                                
   46c6a:	62ec           	bhis 46c58 <rtems_io_register_driver+0x64>  <== ALWAYS TAKEN
    if ( rtems_io_is_empty_table( table ) )                           
      break;                                                          
  }                                                                   
                                                                      
  /* Assigns invalid value in case of failure */                      
  *major = m;                                                         
   46c6c:	2282           	movel %d2,%a1@                              
                                                                      
  if ( m != n )                                                       
   46c6e:	b082           	cmpl %d2,%d0                                
   46c70:	6638           	bnes 46caa <rtems_io_register_driver+0xb6>  <== ALWAYS TAKEN
   46c72:	6000 00a2      	braw 46d16 <rtems_io_register_driver+0x122> <== NOT EXECUTED
      _Thread_Enable_dispatch();                                      
      return sc;                                                      
    }                                                                 
    major = *registered_major;                                        
  } else {                                                            
    rtems_driver_address_table *const table = _IO_Driver_address_table + major;
   46c76:	2202           	movel %d2,%d1                               <== NOT EXECUTED
   46c78:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   46c7a:	e789           	lsll #3,%d1                                 <== NOT EXECUTED
   46c7c:	eb88           	lsll #5,%d0                                 <== NOT EXECUTED
   46c7e:	2479 0005 ff80 	moveal 5ff80 <_IO_Driver_address_table>,%a2 <== NOT EXECUTED
   46c84:	9081           	subl %d1,%d0                                <== NOT EXECUTED
   46c86:	d5c0           	addal %d0,%a2                               <== NOT EXECUTED
                                                                      
static inline bool rtems_io_is_empty_table(                           
  const rtems_driver_address_table *table                             
)                                                                     
{                                                                     
  return table->initialization_entry == NULL && table->open_entry == NULL;
   46c88:	4a92           	tstl %a2@                                   <== NOT EXECUTED
   46c8a:	660c           	bnes 46c98 <rtems_io_register_driver+0xa4>  <== NOT EXECUTED
    return RTEMS_SUCCESSFUL;                                          
                                                                      
  return RTEMS_TOO_MANY;                                              
}                                                                     
                                                                      
rtems_status_code rtems_io_register_driver(                           
   46c8c:	4aaa 0004      	tstl %a2@(4)                                <== NOT EXECUTED
   46c90:	57c0           	seq %d0                                     <== NOT EXECUTED
   46c92:	49c0           	extbl %d0                                   <== NOT EXECUTED
   46c94:	4480           	negl %d0                                    <== NOT EXECUTED
   46c96:	6002           	bras 46c9a <rtems_io_register_driver+0xa6>  <== NOT EXECUTED
                                                                      
static inline bool rtems_io_is_empty_table(                           
  const rtems_driver_address_table *table                             
)                                                                     
{                                                                     
  return table->initialization_entry == NULL && table->open_entry == NULL;
   46c98:	4280           	clrl %d0                                    <== NOT EXECUTED
    }                                                                 
    major = *registered_major;                                        
  } else {                                                            
    rtems_driver_address_table *const table = _IO_Driver_address_table + major;
                                                                      
    if ( !rtems_io_is_empty_table( table ) ) {                        
   46c9a:	4a00           	tstb %d0                                    <== NOT EXECUTED
   46c9c:	660a           	bnes 46ca8 <rtems_io_register_driver+0xb4>  <== NOT EXECUTED
      _Thread_Enable_dispatch();                                      
   46c9e:	4eb9 0004 8736 	jsr 48736 <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_RESOURCE_IN_USE;                                   
   46ca4:	700c           	moveq #12,%d0                               <== NOT EXECUTED
   46ca6:	6050           	bras 46cf8 <rtems_io_register_driver+0x104> <== NOT EXECUTED
    }                                                                 
                                                                      
    *registered_major = major;                                        
   46ca8:	2282           	movel %d2,%a1@                              <== NOT EXECUTED
  }                                                                   
                                                                      
  _IO_Driver_address_table [major] = *driver_table;                   
   46caa:	2202           	movel %d2,%d1                               
   46cac:	2002           	movel %d2,%d0                               
   46cae:	4878 0018      	pea 18 <OPER2+0x4>                          
   46cb2:	e789           	lsll #3,%d1                                 
   46cb4:	eb88           	lsll #5,%d0                                 
   46cb6:	2f08           	movel %a0,%sp@-                             
   46cb8:	9081           	subl %d1,%d0                                
   46cba:	d0b9 0005 ff80 	addl 5ff80 <_IO_Driver_address_table>,%d0   
   46cc0:	2f00           	movel %d0,%sp@-                             
   46cc2:	4eb9 0004 fbb4 	jsr 4fbb4 <memcpy>                          
                                                                      
  _Thread_Enable_dispatch();                                          
   46cc8:	4eb9 0004 8736 	jsr 48736 <_Thread_Enable_dispatch>         
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
}                                                                     
   46cce:	246e fffc      	moveal %fp@(-4),%a2                         
                                                                      
  _IO_Driver_address_table [major] = *driver_table;                   
                                                                      
  _Thread_Enable_dispatch();                                          
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
   46cd2:	4fef 000c      	lea %sp@(12),%sp                            
   46cd6:	2d42 0008      	movel %d2,%fp@(8)                           
}                                                                     
   46cda:	242e fff8      	movel %fp@(-8),%d2                          
                                                                      
  _IO_Driver_address_table [major] = *driver_table;                   
                                                                      
  _Thread_Enable_dispatch();                                          
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
   46cde:	42ae 0010      	clrl %fp@(16)                               
   46ce2:	42ae 000c      	clrl %fp@(12)                               
}                                                                     
   46ce6:	4e5e           	unlk %fp                                    
                                                                      
  _IO_Driver_address_table [major] = *driver_table;                   
                                                                      
  _Thread_Enable_dispatch();                                          
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
   46ce8:	4ef9 0004 d728 	jmp 4d728 <rtems_io_initialize>             
)                                                                     
{                                                                     
  rtems_device_major_number major_limit = _IO_Number_of_drivers;      
                                                                      
  if ( rtems_interrupt_is_in_progress() )                             
    return RTEMS_CALLED_FROM_ISR;                                     
   46cee:	7012           	moveq #18,%d0                               <== NOT EXECUTED
   46cf0:	6006           	bras 46cf8 <rtems_io_register_driver+0x104> <== NOT EXECUTED
                                                                      
  if ( driver_table == NULL )                                         
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( rtems_io_is_empty_table( driver_table ) )                      
    return RTEMS_INVALID_ADDRESS;                                     
   46cf2:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   46cf4:	6002           	bras 46cf8 <rtems_io_register_driver+0x104> <== NOT EXECUTED
                                                                      
  if ( major >= major_limit )                                         
    return RTEMS_INVALID_NUMBER;                                      
   46cf6:	700a           	moveq #10,%d0                               <== NOT EXECUTED
  _IO_Driver_address_table [major] = *driver_table;                   
                                                                      
  _Thread_Enable_dispatch();                                          
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
}                                                                     
   46cf8:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   46cfc:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   46d00:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   46d02:	4e75           	rts                                         <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( rtems_io_is_empty_table( driver_table ) )                      
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( major >= major_limit )                                         
   46d04:	b082           	cmpl %d2,%d0                                
   46d06:	6200 ff30      	bhiw 46c38 <rtems_io_register_driver+0x44>  
   46d0a:	60ea           	bras 46cf6 <rtems_io_register_driver+0x102> <== NOT EXECUTED
  rtems_device_major_number n = _IO_Number_of_drivers;                
  rtems_device_major_number m = 0;                                    
                                                                      
  /* major is error checked by caller */                              
                                                                      
  for ( m = 0; m < n; ++m ) {                                         
   46d0c:	5282           	addql #1,%d2                                
   46d0e:	45ea 0018      	lea %a2@(24),%a2                            
   46d12:	6000 ff54      	braw 46c68 <rtems_io_register_driver+0x74>  
                                                                      
  if ( major == 0 ) {                                                 
    rtems_status_code sc = rtems_io_obtain_major_number( registered_major );
                                                                      
    if ( sc != RTEMS_SUCCESSFUL ) {                                   
      _Thread_Enable_dispatch();                                      
   46d16:	4eb9 0004 8736 	jsr 48736 <_Thread_Enable_dispatch>         <== NOT EXECUTED
  *major = m;                                                         
                                                                      
  if ( m != n )                                                       
    return RTEMS_SUCCESSFUL;                                          
                                                                      
  return RTEMS_TOO_MANY;                                              
   46d1c:	7005           	moveq #5,%d0                                <== NOT EXECUTED
  if ( major == 0 ) {                                                 
    rtems_status_code sc = rtems_io_obtain_major_number( registered_major );
                                                                      
    if ( sc != RTEMS_SUCCESSFUL ) {                                   
      _Thread_Enable_dispatch();                                      
      return sc;                                                      
   46d1e:	60d8           	bras 46cf8 <rtems_io_register_driver+0x104> <== NOT EXECUTED
                                                                      

00046d20 <rtems_io_unregister_driver>: */ rtems_status_code rtems_io_unregister_driver( rtems_device_major_number major ) {
   46d20:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   46d24:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
  if ( rtems_interrupt_is_in_progress() )                             
   46d28:	4ab9 0005 ff08 	tstl 5ff08 <_Per_CPU_Information+0x8>       <== NOT EXECUTED
   46d2e:	6640           	bnes 46d70 <rtems_io_unregister_driver+0x50><== NOT EXECUTED
    return RTEMS_CALLED_FROM_ISR;                                     
                                                                      
  if ( major < _IO_Number_of_drivers ) {                              
   46d30:	b0b9 0005 ff7c 	cmpl 5ff7c <_IO_Number_of_drivers>,%d0      <== NOT EXECUTED
   46d36:	643c           	bccs 46d74 <rtems_io_unregister_driver+0x54><== NOT EXECUTED
   46d38:	2239 0005 fd50 	movel 5fd50 <_Thread_Dispatch_disable_level>,%d1<== NOT EXECUTED
   46d3e:	5281           	addql #1,%d1                                <== NOT EXECUTED
   46d40:	23c1 0005 fd50 	movel %d1,5fd50 <_Thread_Dispatch_disable_level><== NOT EXECUTED
    _Thread_Disable_dispatch();                                       
    memset(                                                           
      &_IO_Driver_address_table[major],                               
   46d46:	2200           	movel %d0,%d1                               <== NOT EXECUTED
  if ( rtems_interrupt_is_in_progress() )                             
    return RTEMS_CALLED_FROM_ISR;                                     
                                                                      
  if ( major < _IO_Number_of_drivers ) {                              
    _Thread_Disable_dispatch();                                       
    memset(                                                           
   46d48:	4878 0018      	pea 18 <OPER2+0x4>                          <== NOT EXECUTED
      &_IO_Driver_address_table[major],                               
   46d4c:	e789           	lsll #3,%d1                                 <== NOT EXECUTED
   46d4e:	eb88           	lsll #5,%d0                                 <== NOT EXECUTED
  if ( rtems_interrupt_is_in_progress() )                             
    return RTEMS_CALLED_FROM_ISR;                                     
                                                                      
  if ( major < _IO_Number_of_drivers ) {                              
    _Thread_Disable_dispatch();                                       
    memset(                                                           
   46d50:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
      &_IO_Driver_address_table[major],                               
   46d52:	9081           	subl %d1,%d0                                <== NOT EXECUTED
  if ( rtems_interrupt_is_in_progress() )                             
    return RTEMS_CALLED_FROM_ISR;                                     
                                                                      
  if ( major < _IO_Number_of_drivers ) {                              
    _Thread_Disable_dispatch();                                       
    memset(                                                           
   46d54:	d0b9 0005 ff80 	addl 5ff80 <_IO_Driver_address_table>,%d0   <== NOT EXECUTED
   46d5a:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   46d5c:	4eb9 0004 fc24 	jsr 4fc24 <memset>                          <== NOT EXECUTED
      &_IO_Driver_address_table[major],                               
      0,                                                              
      sizeof( rtems_driver_address_table )                            
    );                                                                
    _Thread_Enable_dispatch();                                        
   46d62:	4eb9 0004 8736 	jsr 48736 <_Thread_Enable_dispatch>         <== NOT EXECUTED
                                                                      
    return RTEMS_SUCCESSFUL;                                          
   46d68:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   46d6c:	4280           	clrl %d0                                    <== NOT EXECUTED
   46d6e:	6006           	bras 46d76 <rtems_io_unregister_driver+0x56><== NOT EXECUTED
rtems_status_code rtems_io_unregister_driver(                         
  rtems_device_major_number major                                     
)                                                                     
{                                                                     
  if ( rtems_interrupt_is_in_progress() )                             
    return RTEMS_CALLED_FROM_ISR;                                     
   46d70:	7012           	moveq #18,%d0                               <== NOT EXECUTED
   46d72:	6002           	bras 46d76 <rtems_io_unregister_driver+0x56><== NOT EXECUTED
    _Thread_Enable_dispatch();                                        
                                                                      
    return RTEMS_SUCCESSFUL;                                          
  }                                                                   
                                                                      
  return RTEMS_UNSATISFIED;                                           
   46d74:	700d           	moveq #13,%d0                               <== NOT EXECUTED
}                                                                     
   46d76:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004b984 <rtems_io_write>: rtems_status_code rtems_io_write( rtems_device_major_number major, rtems_device_minor_number minor, void *argument ) {
   4b984:	4e56 0000      	linkw %fp,#0                                
   4b988:	202e 0008      	movel %fp@(8),%d0                           
   4b98c:	2f03           	movel %d3,%sp@-                             
   4b98e:	2f02           	movel %d2,%sp@-                             
  rtems_device_driver_entry callout;                                  
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
   4b990:	b0b9 0005 c8f4 	cmpl 5c8f4 <_IO_Number_of_drivers>,%d0      
   4b996:	6420           	bccs 4b9b8 <rtems_io_write+0x34>            <== NEVER TAKEN
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  callout = _IO_Driver_address_table[major].write_entry;              
   4b998:	2600           	movel %d0,%d3                               
   4b99a:	2200           	movel %d0,%d1                               
   4b99c:	e78b           	lsll #3,%d3                                 
   4b99e:	eb89           	lsll #5,%d1                                 
   4b9a0:	2279 0005 c8f8 	moveal 5c8f8 <_IO_Driver_address_table>,%a1 
   4b9a6:	9283           	subl %d3,%d1                                
   4b9a8:	2271 1810      	moveal %a1@(00000010,%d1:l),%a1             
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   4b9ac:	4a89           	tstl %a1                                    
   4b9ae:	670c           	beqs 4b9bc <rtems_io_write+0x38>            <== NEVER TAKEN
}                                                                     
   4b9b0:	241f           	movel %sp@+,%d2                             
   4b9b2:	261f           	movel %sp@+,%d3                             
   4b9b4:	4e5e           	unlk %fp                                    
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  callout = _IO_Driver_address_table[major].write_entry;              
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   4b9b6:	4ed1           	jmp %a1@                                    
)                                                                     
{                                                                     
  rtems_device_driver_entry callout;                                  
                                                                      
  if ( major >= _IO_Number_of_drivers )                               
    return RTEMS_INVALID_NUMBER;                                      
   4b9b8:	700a           	moveq #10,%d0                               <== NOT EXECUTED
   4b9ba:	6002           	bras 4b9be <rtems_io_write+0x3a>            <== NOT EXECUTED
                                                                      
  callout = _IO_Driver_address_table[major].write_entry;              
  return callout ? callout(major, minor, argument) : RTEMS_SUCCESSFUL;
   4b9bc:	4280           	clrl %d0                                    <== NOT EXECUTED
}                                                                     
   4b9be:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
   4b9c0:	261f           	movel %sp@+,%d3                             <== NOT EXECUTED
   4b9c2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00047afc <rtems_iterate_over_all_threads>: #include <rtems/system.h> #include <rtems/score/thread.h> void rtems_iterate_over_all_threads(rtems_per_thread_routine routine) {
   47afc:	4e56 fff0      	linkw %fp,#-16                              <== NOT EXECUTED
   47b00:	48d7 1c04      	moveml %d2/%a2-%a4,%sp@                     <== NOT EXECUTED
   47b04:	286e 0008      	moveal %fp@(8),%a4                          <== NOT EXECUTED
  uint32_t             i;                                             
  uint32_t             api_index;                                     
  Thread_Control      *the_thread;                                    
  Objects_Information *information;                                   
                                                                      
  if ( !routine )                                                     
   47b08:	4a8c           	tstl %a4                                    <== NOT EXECUTED
   47b0a:	673c           	beqs 47b48 <rtems_iterate_over_all_threads+0x4c><== NOT EXECUTED
   47b0c:	45f9 0006 6568 	lea 66568 <_Objects_Information_table+0x4>,%a2<== NOT EXECUTED
    return;                                                           
                                                                      
  for ( api_index = 1 ; api_index <= OBJECTS_APIS_LAST ; api_index++ ) {
    #if !defined(RTEMS_POSIX_API) || defined(RTEMS_DEBUG)             
      if ( !_Objects_Information_table[ api_index ] )                 
   47b12:	205a           	moveal %a2@+,%a0                            <== NOT EXECUTED
   47b14:	4a88           	tstl %a0                                    <== NOT EXECUTED
   47b16:	6728           	beqs 47b40 <rtems_iterate_over_all_threads+0x44><== NOT EXECUTED
        continue;                                                     
    #endif                                                            
                                                                      
    information = _Objects_Information_table[ api_index ][ 1 ];       
   47b18:	2668 0004      	moveal %a0@(4),%a3                          <== NOT EXECUTED
    if ( !information )                                               
   47b1c:	4a8b           	tstl %a3                                    <== NOT EXECUTED
   47b1e:	6720           	beqs 47b40 <rtems_iterate_over_all_threads+0x44><== NOT EXECUTED
   47b20:	7401           	moveq #1,%d2                                <== NOT EXECUTED
   47b22:	6012           	bras 47b36 <rtems_iterate_over_all_threads+0x3a><== NOT EXECUTED
      continue;                                                       
                                                                      
    for ( i=1 ; i <= information->maximum ; i++ ) {                   
      the_thread = (Thread_Control *)information->local_table[ i ];   
   47b24:	206b 0018      	moveal %a3@(24),%a0                         <== NOT EXECUTED
   47b28:	2030 2c00      	movel %a0@(00000000,%d2:l:4),%d0            <== NOT EXECUTED
                                                                      
      if ( !the_thread )                                              
   47b2c:	6706           	beqs 47b34 <rtems_iterate_over_all_threads+0x38><== NOT EXECUTED
	continue;                                                            
                                                                      
      (*routine)(the_thread);                                         
   47b2e:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   47b30:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   47b32:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
    information = _Objects_Information_table[ api_index ][ 1 ];       
    if ( !information )                                               
      continue;                                                       
                                                                      
    for ( i=1 ; i <= information->maximum ; i++ ) {                   
   47b34:	5282           	addql #1,%d2                                <== NOT EXECUTED
   47b36:	4280           	clrl %d0                                    <== NOT EXECUTED
   47b38:	302b 000e      	movew %a3@(14),%d0                          <== NOT EXECUTED
   47b3c:	b082           	cmpl %d2,%d0                                <== NOT EXECUTED
   47b3e:	64e4           	bccs 47b24 <rtems_iterate_over_all_threads+0x28><== NOT EXECUTED
  Objects_Information *information;                                   
                                                                      
  if ( !routine )                                                     
    return;                                                           
                                                                      
  for ( api_index = 1 ; api_index <= OBJECTS_APIS_LAST ; api_index++ ) {
   47b40:	b5fc 0006 6574 	cmpal #419188,%a2                           <== NOT EXECUTED
   47b46:	66ca           	bnes 47b12 <rtems_iterate_over_all_threads+0x16><== NOT EXECUTED
                                                                      
      (*routine)(the_thread);                                         
    }                                                                 
  }                                                                   
                                                                      
}                                                                     
   47b48:	4cee 1c04 fff0 	moveml %fp@(-16),%d2/%a2-%a4                <== NOT EXECUTED
   47b4e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004f89c <rtems_message_queue_broadcast>: rtems_id id, const void *buffer, size_t size, uint32_t *count ) {
   4f89c:	4e56 fff0      	linkw %fp,#-16                              <== NOT EXECUTED
   4f8a0:	48d7 001c      	moveml %d2-%d4,%sp@                         <== NOT EXECUTED
   4f8a4:	262e 0008      	movel %fp@(8),%d3                           <== NOT EXECUTED
   4f8a8:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
   4f8ac:	282e 0014      	movel %fp@(20),%d4                          <== NOT EXECUTED
  register Message_queue_Control *the_message_queue;                  
  Objects_Locations               location;                           
  CORE_message_queue_Status       core_status;                        
                                                                      
  if ( !buffer )                                                      
   4f8b0:	4a82           	tstl %d2                                    <== NOT EXECUTED
   4f8b2:	674e           	beqs 4f902 <rtems_message_queue_broadcast+0x66><== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !count )                                                       
   4f8b4:	4a84           	tstl %d4                                    <== NOT EXECUTED
   4f8b6:	674a           	beqs 4f902 <rtems_message_queue_broadcast+0x66><== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Message_queue_Control *)                                    
     _Objects_Get( &_Message_queue_Information, id, location );       
   4f8b8:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4f8bc:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4f8be:	4879 0007 5200 	pea 75200 <_Message_queue_Information>      <== NOT EXECUTED
   4f8c4:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_message_queue = _Message_queue_Get( id, &location );            
  switch ( location ) {                                               
   4f8ca:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4f8ce:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4f8d2:	6632           	bnes 4f906 <rtems_message_queue_broadcast+0x6a><== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      core_status = _CORE_message_queue_Broadcast(                    
   4f8d4:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4f8d6:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4f8d8:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4f8da:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4f8dc:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   4f8e0:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4f8e2:	4868 0014      	pea %a0@(20)                                <== NOT EXECUTED
   4f8e6:	4eb9 0005 2ac4 	jsr 52ac4 <_CORE_message_queue_Broadcast>   <== NOT EXECUTED
   4f8ec:	2400           	movel %d0,%d2                               <== NOT EXECUTED
                        NULL,                                         
                      #endif                                          
                      count                                           
                    );                                                
                                                                      
      _Thread_Enable_dispatch();                                      
   4f8ee:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return                                                          
   4f8f4:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4f8f6:	4eb9 0004 fc20 	jsr 4fc20 <_Message_queue_Translate_core_message_queue_return_code><== NOT EXECUTED
   4f8fc:	4fef 001c      	lea %sp@(28),%sp                            <== NOT EXECUTED
   4f900:	6006           	bras 4f908 <rtems_message_queue_broadcast+0x6c><== NOT EXECUTED
                                                                      
  if ( !buffer )                                                      
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !count )                                                       
    return RTEMS_INVALID_ADDRESS;                                     
   4f902:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4f904:	6002           	bras 4f908 <rtems_message_queue_broadcast+0x6c><== NOT EXECUTED
#endif                                                                
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
  return RTEMS_INVALID_ID;                                            
   4f906:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4f908:	4cee 001c fff0 	moveml %fp@(-16),%d2-%d4                    <== NOT EXECUTED
   4f90e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004cc54 <rtems_message_queue_create>: uint32_t count, size_t max_message_size, rtems_attribute attribute_set, rtems_id *id ) {
   4cc54:	4e56 ffe4      	linkw %fp,#-28                              <== NOT EXECUTED
   4cc58:	48d7 1c1c      	moveml %d2-%d4/%a2-%a4,%sp@                 <== NOT EXECUTED
   4cc5c:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
   4cc60:	266e 000c      	moveal %fp@(12),%a3                         <== NOT EXECUTED
   4cc64:	262e 0010      	movel %fp@(16),%d3                          <== NOT EXECUTED
   4cc68:	282e 0014      	movel %fp@(20),%d4                          <== NOT EXECUTED
   4cc6c:	286e 0018      	moveal %fp@(24),%a4                         <== NOT EXECUTED
  CORE_message_queue_Attributes   the_msgq_attributes;                
#if defined(RTEMS_MULTIPROCESSING)                                    
  bool                            is_global;                          
#endif                                                                
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
   4cc70:	4a82           	tstl %d2                                    <== NOT EXECUTED
   4cc72:	6700 009a      	beqw 4cd0e <rtems_message_queue_create+0xba><== NOT EXECUTED
    return RTEMS_INVALID_NAME;                                        
                                                                      
  if ( !id )                                                          
   4cc76:	4a8c           	tstl %a4                                    <== NOT EXECUTED
   4cc78:	6700 0098      	beqw 4cd12 <rtems_message_queue_create+0xbe><== NOT EXECUTED
  if ( (is_global = _Attributes_Is_global( attribute_set ) ) &&       
       !_System_state_Is_multiprocessing )                            
    return RTEMS_MP_NOT_CONFIGURED;                                   
#endif                                                                
                                                                      
  if ( count == 0 )                                                   
   4cc7c:	4a8b           	tstl %a3                                    <== NOT EXECUTED
   4cc7e:	6700 0096      	beqw 4cd16 <rtems_message_queue_create+0xc2><== NOT EXECUTED
      return RTEMS_INVALID_NUMBER;                                    
                                                                      
  if ( max_message_size == 0 )                                        
   4cc82:	4a83           	tstl %d3                                    <== NOT EXECUTED
   4cc84:	6700 0094      	beqw 4cd1a <rtems_message_queue_create+0xc6><== NOT EXECUTED
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   4cc88:	2039 0006 51d0 	movel 651d0 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   4cc8e:	5280           	addql #1,%d0                                <== NOT EXECUTED
   4cc90:	23c0 0006 51d0 	movel %d0,651d0 <_Thread_Dispatch_disable_level><== NOT EXECUTED
#endif                                                                
#endif                                                                
                                                                      
  _Thread_Disable_dispatch();              /* protects object pointer */
                                                                      
  the_message_queue = _Message_queue_Allocate();                      
   4cc96:	4eb9 0005 1cf4 	jsr 51cf4 <_Message_queue_Allocate>         <== NOT EXECUTED
   4cc9c:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
                                                                      
  if ( !the_message_queue ) {                                         
   4cc9e:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4cca0:	660a           	bnes 4ccac <rtems_message_queue_create+0x58><== NOT EXECUTED
    _Thread_Enable_dispatch();                                        
   4cca2:	4eb9 0004 f7ca 	jsr 4f7ca <_Thread_Enable_dispatch>         <== NOT EXECUTED
    return RTEMS_TOO_MANY;                                            
   4cca8:	7005           	moveq #5,%d0                                <== NOT EXECUTED
   4ccaa:	6070           	bras 4cd1c <rtems_message_queue_create+0xc8><== NOT EXECUTED
#endif                                                                
                                                                      
  the_message_queue->attribute_set = attribute_set;                   
                                                                      
  if (_Attributes_Is_priority( attribute_set ) )                      
    the_msgq_attributes.discipline = CORE_MESSAGE_QUEUE_DISCIPLINES_PRIORITY;
   4ccac:	204e           	moveal %fp,%a0                              <== NOT EXECUTED
   4ccae:	44c4           	movew %d4,%ccr                              <== NOT EXECUTED
   4ccb0:	56c0           	sne %d0                                     <== NOT EXECUTED
    _Thread_Enable_dispatch();                                        
    return RTEMS_TOO_MANY;                                            
  }                                                                   
#endif                                                                
                                                                      
  the_message_queue->attribute_set = attribute_set;                   
   4ccb2:	2544 0010      	movel %d4,%a2@(16)                          <== NOT EXECUTED
                                                                      
  if (_Attributes_Is_priority( attribute_set ) )                      
    the_msgq_attributes.discipline = CORE_MESSAGE_QUEUE_DISCIPLINES_PRIORITY;
   4ccb6:	49c0           	extbl %d0                                   <== NOT EXECUTED
   4ccb8:	5280           	addql #1,%d0                                <== NOT EXECUTED
   4ccba:	2100           	movel %d0,%a0@-                             <== NOT EXECUTED
  else                                                                
    the_msgq_attributes.discipline = CORE_MESSAGE_QUEUE_DISCIPLINES_FIFO;
                                                                      
  if ( ! _CORE_message_queue_Initialize(                              
   4ccbc:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4ccbe:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   4ccc0:	47f9 0004 f7ca 	lea 4f7ca <_Thread_Enable_dispatch>,%a3     <== NOT EXECUTED
   4ccc6:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   4ccc8:	486a 0014      	pea %a2@(20)                                <== NOT EXECUTED
   4cccc:	4eb9 0004 ddd8 	jsr 4ddd8 <_CORE_message_queue_Initialize>  <== NOT EXECUTED
   4ccd2:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   4ccd6:	4a00           	tstb %d0                                    <== NOT EXECUTED
   4ccd8:	6616           	bnes 4ccf0 <rtems_message_queue_create+0x9c><== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _Message_queue_Free (                       
  Message_queue_Control *the_message_queue                            
)                                                                     
{                                                                     
  _Objects_Free( &_Message_queue_Information, &the_message_queue->Object );
   4ccda:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4ccdc:	4879 0006 53c4 	pea 653c4 <_Message_queue_Information>      <== NOT EXECUTED
   4cce2:	4eb9 0004 eb28 	jsr 4eb28 <_Objects_Free>                   <== NOT EXECUTED
        _Objects_MP_Close(                                            
          &_Message_queue_Information, the_message_queue->Object.id); 
#endif                                                                
                                                                      
    _Message_queue_Free( the_message_queue );                         
    _Thread_Enable_dispatch();                                        
   4cce8:	4e93           	jsr %a3@                                    <== NOT EXECUTED
    return RTEMS_UNSATISFIED;                                         
   4ccea:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4ccec:	700d           	moveq #13,%d0                               <== NOT EXECUTED
   4ccee:	602c           	bras 4cd1c <rtems_message_queue_create+0xc8><== NOT EXECUTED
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
   4ccf0:	202a 0008      	movel %a2@(8),%d0                           <== NOT EXECUTED
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   4ccf4:	4281           	clrl %d1                                    <== NOT EXECUTED
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   4ccf6:	2079 0006 53dc 	moveal 653dc <_Message_queue_Information+0x18>,%a0<== NOT EXECUTED
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   4ccfc:	3200           	movew %d0,%d1                               <== NOT EXECUTED
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   4ccfe:	218a 1c00      	movel %a2,%a0@(00000000,%d1:l:4)            <== NOT EXECUTED
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
    the_object                                                        
  );                                                                  
                                                                      
  the_object->name = name;                                            
   4cd02:	2542 000c      	movel %d2,%a2@(12)                          <== NOT EXECUTED
    &_Message_queue_Information,                                      
    &the_message_queue->Object,                                       
    (Objects_Name) name                                               
  );                                                                  
                                                                      
  *id = the_message_queue->Object.id;                                 
   4cd06:	2880           	movel %d0,%a4@                              <== NOT EXECUTED
      name,                                                           
      0                                                               
    );                                                                
#endif                                                                
                                                                      
  _Thread_Enable_dispatch();                                          
   4cd08:	4e93           	jsr %a3@                                    <== NOT EXECUTED
  return RTEMS_SUCCESSFUL;                                            
   4cd0a:	4280           	clrl %d0                                    <== NOT EXECUTED
   4cd0c:	600e           	bras 4cd1c <rtems_message_queue_create+0xc8><== NOT EXECUTED
#if defined(RTEMS_MULTIPROCESSING)                                    
  bool                            is_global;                          
#endif                                                                
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
    return RTEMS_INVALID_NAME;                                        
   4cd0e:	7003           	moveq #3,%d0                                <== NOT EXECUTED
   4cd10:	600a           	bras 4cd1c <rtems_message_queue_create+0xc8><== NOT EXECUTED
                                                                      
  if ( !id )                                                          
    return RTEMS_INVALID_ADDRESS;                                     
   4cd12:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4cd14:	6006           	bras 4cd1c <rtems_message_queue_create+0xc8><== NOT EXECUTED
       !_System_state_Is_multiprocessing )                            
    return RTEMS_MP_NOT_CONFIGURED;                                   
#endif                                                                
                                                                      
  if ( count == 0 )                                                   
      return RTEMS_INVALID_NUMBER;                                    
   4cd16:	700a           	moveq #10,%d0                               <== NOT EXECUTED
   4cd18:	6002           	bras 4cd1c <rtems_message_queue_create+0xc8><== NOT EXECUTED
                                                                      
  if ( max_message_size == 0 )                                        
      return RTEMS_INVALID_SIZE;                                      
   4cd1a:	7008           	moveq #8,%d0                                <== NOT EXECUTED
    );                                                                
#endif                                                                
                                                                      
  _Thread_Enable_dispatch();                                          
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4cd1c:	4cee 1c1c ffe4 	moveml %fp@(-28),%d2-%d4/%a2-%a4            <== NOT EXECUTED
   4cd22:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004f9e8 <rtems_message_queue_delete>: */ rtems_status_code rtems_message_queue_delete( rtems_id id ) {
   4f9e8:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   4f9ec:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Message_queue_Control *)                                    
     _Objects_Get( &_Message_queue_Information, id, location );       
   4f9ee:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4f9f2:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4f9f6:	4879 0007 5200 	pea 75200 <_Message_queue_Information>      <== NOT EXECUTED
   4f9fc:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
  register Message_queue_Control *the_message_queue;                  
  Objects_Locations               location;                           
                                                                      
  the_message_queue = _Message_queue_Get( id, &location );            
  switch ( location ) {                                               
   4fa02:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4fa06:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   4fa08:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4fa0c:	663a           	bnes 4fa48 <rtems_message_queue_delete+0x60><== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      _Objects_Close( &_Message_queue_Information,                    
   4fa0e:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4fa10:	4879 0007 5200 	pea 75200 <_Message_queue_Information>      <== NOT EXECUTED
   4fa16:	4eb9 0005 3eb0 	jsr 53eb0 <_Objects_Close>                  <== NOT EXECUTED
                      &the_message_queue->Object );                   
                                                                      
      _CORE_message_queue_Close(                                      
   4fa1c:	4878 0005      	pea 5 <COMPARE>                             <== NOT EXECUTED
   4fa20:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4fa22:	486a 0014      	pea %a2@(20)                                <== NOT EXECUTED
   4fa26:	4eb9 0005 2b34 	jsr 52b34 <_CORE_message_queue_Close>       <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _Message_queue_Free (                       
  Message_queue_Control *the_message_queue                            
)                                                                     
{                                                                     
  _Objects_Free( &_Message_queue_Information, &the_message_queue->Object );
   4fa2c:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4fa2e:	4879 0007 5200 	pea 75200 <_Message_queue_Information>      <== NOT EXECUTED
   4fa34:	4eb9 0005 4128 	jsr 54128 <_Objects_Free>                   <== NOT EXECUTED
          0,                                 /* Not used */           
          0                                                           
        );                                                            
      }                                                               
#endif                                                                
      _Thread_Enable_dispatch();                                      
   4fa3a:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   4fa40:	4fef 001c      	lea %sp@(28),%sp                            <== NOT EXECUTED
   4fa44:	4280           	clrl %d0                                    <== NOT EXECUTED
   4fa46:	6002           	bras 4fa4a <rtems_message_queue_delete+0x62><== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4fa48:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4fa4a:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   4fa4e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004fa54 <rtems_message_queue_flush>: rtems_status_code rtems_message_queue_flush( rtems_id id, uint32_t *count ) {
   4fa54:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   4fa58:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4fa5a:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
  register Message_queue_Control *the_message_queue;                  
  Objects_Locations               location;                           
                                                                      
  if ( !count )                                                       
   4fa5e:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4fa60:	6738           	beqs 4fa9a <rtems_message_queue_flush+0x46> <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Message_queue_Control *)                                    
     _Objects_Get( &_Message_queue_Information, id, location );       
   4fa62:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4fa66:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4fa6a:	4879 0007 5200 	pea 75200 <_Message_queue_Information>      <== NOT EXECUTED
   4fa70:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_message_queue = _Message_queue_Get( id, &location );            
  switch ( location ) {                                               
   4fa76:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4fa7a:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4fa7e:	661e           	bnes 4fa9e <rtems_message_queue_flush+0x4a> <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      *count = _CORE_message_queue_Flush( &the_message_queue->message_queue );
   4fa80:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4fa82:	4868 0014      	pea %a0@(20)                                <== NOT EXECUTED
   4fa86:	4eb9 0005 2b74 	jsr 52b74 <_CORE_message_queue_Flush>       <== NOT EXECUTED
   4fa8c:	2480           	movel %d0,%a2@                              <== NOT EXECUTED
      _Thread_Enable_dispatch();                                      
   4fa8e:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   4fa94:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4fa96:	4280           	clrl %d0                                    <== NOT EXECUTED
   4fa98:	6006           	bras 4faa0 <rtems_message_queue_flush+0x4c> <== NOT EXECUTED
{                                                                     
  register Message_queue_Control *the_message_queue;                  
  Objects_Locations               location;                           
                                                                      
  if ( !count )                                                       
    return RTEMS_INVALID_ADDRESS;                                     
   4fa9a:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4fa9c:	6002           	bras 4faa0 <rtems_message_queue_flush+0x4c> <== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4fa9e:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4faa0:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   4faa4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004faa8 <rtems_message_queue_get_number_pending>: rtems_status_code rtems_message_queue_get_number_pending( rtems_id id, uint32_t *count ) {
   4faa8:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   4faac:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4faae:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
  register Message_queue_Control *the_message_queue;                  
  Objects_Locations               location;                           
                                                                      
  if ( !count )                                                       
   4fab2:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4fab4:	672e           	beqs 4fae4 <rtems_message_queue_get_number_pending+0x3c><== NOT EXECUTED
   4fab6:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4faba:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4fabe:	4879 0007 5200 	pea 75200 <_Message_queue_Information>      <== NOT EXECUTED
   4fac4:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_message_queue = _Message_queue_Get( id, &location );            
  switch ( location ) {                                               
   4faca:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4face:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4fad2:	6614           	bnes 4fae8 <rtems_message_queue_get_number_pending+0x40><== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      *count = the_message_queue->message_queue.number_of_pending_messages;
   4fad4:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4fad6:	24a8 005c      	movel %a0@(92),%a2@                         <== NOT EXECUTED
      _Thread_Enable_dispatch();                                      
   4fada:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   4fae0:	4280           	clrl %d0                                    <== NOT EXECUTED
   4fae2:	6006           	bras 4faea <rtems_message_queue_get_number_pending+0x42><== NOT EXECUTED
{                                                                     
  register Message_queue_Control *the_message_queue;                  
  Objects_Locations               location;                           
                                                                      
  if ( !count )                                                       
    return RTEMS_INVALID_ADDRESS;                                     
   4fae4:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4fae6:	6002           	bras 4faea <rtems_message_queue_get_number_pending+0x42><== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4fae8:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4faea:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   4faee:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004cd28 <rtems_message_queue_ident>: rtems_status_code rtems_message_queue_ident( rtems_name name, uint32_t node, rtems_id *id ) {
   4cd28:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  Objects_Name_or_id_lookup_errors  status;                           
                                                                      
  status = _Objects_Name_to_id_u32(                                   
   4cd2c:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   4cd30:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   4cd34:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4cd38:	4879 0006 53c4 	pea 653c4 <_Message_queue_Information>      <== NOT EXECUTED
   4cd3e:	4eb9 0004 edf4 	jsr 4edf4 <_Objects_Name_to_id_u32>         <== NOT EXECUTED
    node,                                                             
    id                                                                
  );                                                                  
                                                                      
  return _Status_Object_name_errors_to_status[ status ];              
}                                                                     
   4cd44:	41f9 0006 2aea 	lea 62aea <_Status_Object_name_errors_to_status>,%a0<== NOT EXECUTED
   4cd4a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4cd4c:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
	...                                                                  
                                                                      

0004cd54 <rtems_message_queue_receive>: void *buffer, size_t *size, rtems_option option_set, rtems_interval timeout ) {
   4cd54:	4e56 fff0      	linkw %fp,#-16                              <== NOT EXECUTED
   4cd58:	48d7 001c      	moveml %d2-%d4,%sp@                         <== NOT EXECUTED
   4cd5c:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
   4cd60:	262e 0010      	movel %fp@(16),%d3                          <== NOT EXECUTED
  register Message_queue_Control *the_message_queue;                  
  Objects_Locations               location;                           
  bool                            wait;                               
                                                                      
  if ( !buffer )                                                      
   4cd64:	4a82           	tstl %d2                                    <== NOT EXECUTED
   4cd66:	6762           	beqs 4cdca <rtems_message_queue_receive+0x76><== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !size )                                                        
   4cd68:	4a83           	tstl %d3                                    <== NOT EXECUTED
   4cd6a:	675e           	beqs 4cdca <rtems_message_queue_receive+0x76><== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Message_queue_Control *)                                    
     _Objects_Get( &_Message_queue_Information, id, location );       
   4cd6c:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4cd70:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4cd74:	4879 0006 53c4 	pea 653c4 <_Message_queue_Information>      <== NOT EXECUTED
   4cd7a:	4eb9 0004 ec8c 	jsr 4ec8c <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_message_queue = _Message_queue_Get( id, &location );            
  switch ( location ) {                                               
   4cd80:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4cd84:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4cd88:	6644           	bnes 4cdce <rtems_message_queue_receive+0x7a><== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Options_Is_no_wait (                       
  rtems_option option_set                                             
)                                                                     
{                                                                     
   return (option_set & RTEMS_NO_WAIT) ? true : false;                
   4cd8a:	7201           	moveq #1,%d1                                <== NOT EXECUTED
      if ( _Options_Is_no_wait( option_set ) )                        
        wait = false;                                                 
      else                                                            
        wait = true;                                                  
                                                                      
      _CORE_message_queue_Seize(                                      
   4cd8c:	7801           	moveq #1,%d4                                <== NOT EXECUTED
   4cd8e:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4cd90:	c2ae 0014      	andl %fp@(20),%d1                           <== NOT EXECUTED
   4cd94:	2f2e 0018      	movel %fp@(24),%sp@-                        <== NOT EXECUTED
   4cd98:	b384           	eorl %d1,%d4                                <== NOT EXECUTED
   4cd9a:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4cd9c:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4cd9e:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4cda0:	2f28 0008      	movel %a0@(8),%sp@-                         <== NOT EXECUTED
   4cda4:	4868 0014      	pea %a0@(20)                                <== NOT EXECUTED
   4cda8:	4eb9 0004 de8c 	jsr 4de8c <_CORE_message_queue_Seize>       <== NOT EXECUTED
        buffer,                                                       
        size,                                                         
        wait,                                                         
        timeout                                                       
      );                                                              
      _Thread_Enable_dispatch();                                      
   4cdae:	4eb9 0004 f7ca 	jsr 4f7ca <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return _Message_queue_Translate_core_message_queue_return_code( 
        _Thread_Executing->Wait.return_code                           
   4cdb4:	2079 0006 538c 	moveal 6538c <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
        size,                                                         
        wait,                                                         
        timeout                                                       
      );                                                              
      _Thread_Enable_dispatch();                                      
      return _Message_queue_Translate_core_message_queue_return_code( 
   4cdba:	2f28 0034      	movel %a0@(52),%sp@-                        <== NOT EXECUTED
   4cdbe:	4eb9 0004 ce54 	jsr 4ce54 <_Message_queue_Translate_core_message_queue_return_code><== NOT EXECUTED
   4cdc4:	4fef 001c      	lea %sp@(28),%sp                            <== NOT EXECUTED
   4cdc8:	6006           	bras 4cdd0 <rtems_message_queue_receive+0x7c><== NOT EXECUTED
                                                                      
  if ( !buffer )                                                      
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !size )                                                        
    return RTEMS_INVALID_ADDRESS;                                     
   4cdca:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4cdcc:	6002           	bras 4cdd0 <rtems_message_queue_receive+0x7c><== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4cdce:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4cdd0:	4cee 001c fff0 	moveml %fp@(-16),%d2-%d4                    <== NOT EXECUTED
   4cdd6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004cddc <rtems_message_queue_send>: rtems_status_code rtems_message_queue_send( rtems_id id, const void *buffer, size_t size ) {
   4cddc:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   4cde0:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4cde2:	262e 0008      	movel %fp@(8),%d3                           <== NOT EXECUTED
   4cde6:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4cde8:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
  register Message_queue_Control  *the_message_queue;                 
  Objects_Locations                location;                          
  CORE_message_queue_Status        status;                            
                                                                      
  if ( !buffer )                                                      
   4cdec:	6754           	beqs 4ce42 <rtems_message_queue_send+0x66>  <== NOT EXECUTED
   4cdee:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4cdf2:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4cdf4:	4879 0006 53c4 	pea 653c4 <_Message_queue_Information>      <== NOT EXECUTED
   4cdfa:	4eb9 0004 ec8c 	jsr 4ec8c <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_message_queue = _Message_queue_Get( id, &location );            
  switch ( location ) {                                               
   4ce00:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4ce04:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4ce08:	663c           	bnes 4ce46 <rtems_message_queue_send+0x6a>  <== NOT EXECUTED
  CORE_message_queue_API_mp_support_callout  api_message_queue_mp_support,
  bool                                    wait,                       
  Watchdog_Interval                          timeout                  
)                                                                     
{                                                                     
  return _CORE_message_queue_Submit(                                  
   4ce0a:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4ce0c:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4ce0e:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4ce10:	2f3c 7fff ffff 	movel #2147483647,%sp@-                     <== NOT EXECUTED
   4ce16:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4ce18:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4ce1a:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   4ce1e:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4ce20:	4868 0014      	pea %a0@(20)                                <== NOT EXECUTED
   4ce24:	4eb9 0004 df74 	jsr 4df74 <_CORE_message_queue_Submit>      <== NOT EXECUTED
        MESSAGE_QUEUE_MP_HANDLER,                                     
        false,   /* sender does not block */                          
        0        /* no timeout */                                     
      );                                                              
                                                                      
      _Thread_Enable_dispatch();                                      
   4ce2a:	4fef 0020      	lea %sp@(32),%sp                            <== NOT EXECUTED
   4ce2e:	2400           	movel %d0,%d2                               <== NOT EXECUTED
   4ce30:	4eb9 0004 f7ca 	jsr 4f7ca <_Thread_Enable_dispatch>         <== NOT EXECUTED
      /*                                                              
       *  Since this API does not allow for blocking sends, we can directly
       *  return the returned status.                                 
       */                                                             
                                                                      
      return _Message_queue_Translate_core_message_queue_return_code(status);
   4ce36:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4ce38:	4eb9 0004 ce54 	jsr 4ce54 <_Message_queue_Translate_core_message_queue_return_code><== NOT EXECUTED
   4ce3e:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4ce40:	6006           	bras 4ce48 <rtems_message_queue_send+0x6c>  <== NOT EXECUTED
  register Message_queue_Control  *the_message_queue;                 
  Objects_Locations                location;                          
  CORE_message_queue_Status        status;                            
                                                                      
  if ( !buffer )                                                      
    return RTEMS_INVALID_ADDRESS;                                     
   4ce42:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4ce44:	6002           	bras 4ce48 <rtems_message_queue_send+0x6c>  <== NOT EXECUTED
#endif                                                                
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
  return RTEMS_INVALID_ID;                                            
   4ce46:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4ce48:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   4ce4c:	262e fff8      	movel %fp@(-8),%d3                          <== NOT EXECUTED
   4ce50:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004fc38 <rtems_message_queue_urgent>: rtems_status_code rtems_message_queue_urgent( rtems_id id, const void *buffer, size_t size ) {
   4fc38:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   4fc3c:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4fc3e:	262e 0008      	movel %fp@(8),%d3                           <== NOT EXECUTED
   4fc42:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4fc44:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
  register Message_queue_Control  *the_message_queue;                 
  Objects_Locations                location;                          
  CORE_message_queue_Status        status;                            
                                                                      
  if ( !buffer )                                                      
   4fc48:	6754           	beqs 4fc9e <rtems_message_queue_urgent+0x66><== NOT EXECUTED
   4fc4a:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4fc4e:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4fc50:	4879 0007 5200 	pea 75200 <_Message_queue_Information>      <== NOT EXECUTED
   4fc56:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_message_queue = _Message_queue_Get( id, &location );            
  switch ( location ) {                                               
   4fc5c:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4fc60:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4fc64:	663c           	bnes 4fca2 <rtems_message_queue_urgent+0x6a><== NOT EXECUTED
  CORE_message_queue_API_mp_support_callout  api_message_queue_mp_support,
  bool                                    wait,                       
  Watchdog_Interval                          timeout                  
)                                                                     
{                                                                     
  return _CORE_message_queue_Submit(                                  
   4fc66:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4fc68:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4fc6a:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4fc6c:	2f3c 8000 0000 	movel #-2147483648,%sp@-                    <== NOT EXECUTED
   4fc72:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4fc74:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4fc76:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   4fc7a:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4fc7c:	4868 0014      	pea %a0@(20)                                <== NOT EXECUTED
   4fc80:	4eb9 0005 2d88 	jsr 52d88 <_CORE_message_queue_Submit>      <== NOT EXECUTED
        id,                                                           
        MESSAGE_QUEUE_MP_HANDLER,                                     
        false,   /* sender does not block */                          
        0        /* no timeout */                                     
      );                                                              
      _Thread_Enable_dispatch();                                      
   4fc86:	4fef 0020      	lea %sp@(32),%sp                            <== NOT EXECUTED
   4fc8a:	2400           	movel %d0,%d2                               <== NOT EXECUTED
   4fc8c:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      /*                                                              
       *  Since this API does not allow for blocking sends, we can directly
       *  return the returned status.                                 
       */                                                             
                                                                      
      return _Message_queue_Translate_core_message_queue_return_code(status);
   4fc92:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4fc94:	4eb9 0004 fc20 	jsr 4fc20 <_Message_queue_Translate_core_message_queue_return_code><== NOT EXECUTED
   4fc9a:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4fc9c:	6006           	bras 4fca4 <rtems_message_queue_urgent+0x6c><== NOT EXECUTED
  register Message_queue_Control  *the_message_queue;                 
  Objects_Locations                location;                          
  CORE_message_queue_Status        status;                            
                                                                      
  if ( !buffer )                                                      
    return RTEMS_INVALID_ADDRESS;                                     
   4fc9e:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4fca0:	6002           	bras 4fca4 <rtems_message_queue_urgent+0x6c><== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4fca2:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4fca4:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   4fca8:	262e fff8      	movel %fp@(-8),%d3                          <== NOT EXECUTED
   4fcac:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046bc4 <rtems_object_api_maximum_class>: #include <rtems/rtems/types.h> int rtems_object_api_maximum_class( int api ) {
   46bc4:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return _Objects_API_maximum_class(api);                             
}                                                                     
   46bc8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
int rtems_object_api_maximum_class(                                   
  int api                                                             
)                                                                     
{                                                                     
  return _Objects_API_maximum_class(api);                             
   46bca:	4ef9 0004 8314 	jmp 48314 <_Objects_API_maximum_class>      <== NOT EXECUTED
                                                                      

00046bd0 <rtems_object_api_minimum_class>: uint32_t api ) { if ( _Objects_Is_api_valid( api ) ) return 1; return -1;
   46bd0:	7203           	moveq #3,%d1                                <== NOT EXECUTED
#include <rtems/rtems/types.h>                                        
                                                                      
uint32_t rtems_object_api_minimum_class(                              
  uint32_t api                                                        
)                                                                     
{                                                                     
   46bd2:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Objects_Is_api_valid(                      
  uint32_t   the_api                                                  
)                                                                     
{                                                                     
  if ( !the_api || the_api > OBJECTS_APIS_LAST )                      
   46bd6:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   46bda:	5380           	subql #1,%d0                                <== NOT EXECUTED
  if ( _Objects_Is_api_valid( api ) )                                 
    return 1;                                                         
  return -1;                                                          
   46bdc:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   46bde:	53c0           	sls %d0                                     <== NOT EXECUTED
   46be0:	49c0           	extbl %d0                                   <== NOT EXECUTED
}                                                                     
   46be2:	123c 0001      	moveb #1,%d1                                <== NOT EXECUTED
   46be6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   46be8:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
                                                                      

00046bec <rtems_object_get_api_class_name>: ) { const rtems_assoc_t *api_assoc; const rtems_assoc_t *class_assoc; if ( the_api == OBJECTS_INTERNAL_API )
   46bec:	7001           	moveq #1,%d0                                <== NOT EXECUTED
                                                                      
const char *rtems_object_get_api_class_name(                          
  int the_api,                                                        
  int the_class                                                       
)                                                                     
{                                                                     
   46bee:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   46bf2:	222e 0008      	movel %fp@(8),%d1                           <== NOT EXECUTED
   46bf6:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  const rtems_assoc_t *api_assoc;                                     
  const rtems_assoc_t *class_assoc;                                   
                                                                      
  if ( the_api == OBJECTS_INTERNAL_API )                              
   46bf8:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   46bfa:	6714           	beqs 46c10 <rtems_object_get_api_class_name+0x24><== NOT EXECUTED
    api_assoc = rtems_object_api_internal_assoc;                      
  else if ( the_api == OBJECTS_CLASSIC_API )                          
   46bfc:	7402           	moveq #2,%d2                                <== NOT EXECUTED
#ifdef RTEMS_POSIX_API                                                
  else if ( the_api == OBJECTS_POSIX_API )                            
    api_assoc = rtems_object_api_posix_assoc;                         
#endif                                                                
  else                                                                
    return "BAD API";                                                 
   46bfe:	203c 0005 ca7e 	movel #379518,%d0                           <== NOT EXECUTED
  const rtems_assoc_t *api_assoc;                                     
  const rtems_assoc_t *class_assoc;                                   
                                                                      
  if ( the_api == OBJECTS_INTERNAL_API )                              
    api_assoc = rtems_object_api_internal_assoc;                      
  else if ( the_api == OBJECTS_CLASSIC_API )                          
   46c04:	b481           	cmpl %d1,%d2                                <== NOT EXECUTED
   46c06:	662a           	bnes 46c32 <rtems_object_get_api_class_name+0x46><== NOT EXECUTED
    api_assoc = rtems_object_api_classic_assoc;                       
   46c08:	203c 0005 da7c 	movel #383612,%d0                           <== NOT EXECUTED
   46c0e:	6006           	bras 46c16 <rtems_object_get_api_class_name+0x2a><== NOT EXECUTED
{                                                                     
  const rtems_assoc_t *api_assoc;                                     
  const rtems_assoc_t *class_assoc;                                   
                                                                      
  if ( the_api == OBJECTS_INTERNAL_API )                              
    api_assoc = rtems_object_api_internal_assoc;                      
   46c10:	203c 0005 da64 	movel #383588,%d0                           <== NOT EXECUTED
  else if ( the_api == OBJECTS_POSIX_API )                            
    api_assoc = rtems_object_api_posix_assoc;                         
#endif                                                                
  else                                                                
    return "BAD API";                                                 
  class_assoc = rtems_assoc_ptr_by_local( api_assoc, the_class );     
   46c16:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   46c1a:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   46c1c:	4eb9 0004 b120 	jsr 4b120 <rtems_assoc_ptr_by_local>        <== NOT EXECUTED
  if ( class_assoc )                                                  
   46c22:	508f           	addql #8,%sp                                <== NOT EXECUTED
  else if ( the_api == OBJECTS_POSIX_API )                            
    api_assoc = rtems_object_api_posix_assoc;                         
#endif                                                                
  else                                                                
    return "BAD API";                                                 
  class_assoc = rtems_assoc_ptr_by_local( api_assoc, the_class );     
   46c24:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  if ( class_assoc )                                                  
    return class_assoc->name;                                         
  return "BAD CLASS";                                                 
   46c26:	203c 0005 ca86 	movel #379526,%d0                           <== NOT EXECUTED
    api_assoc = rtems_object_api_posix_assoc;                         
#endif                                                                
  else                                                                
    return "BAD API";                                                 
  class_assoc = rtems_assoc_ptr_by_local( api_assoc, the_class );     
  if ( class_assoc )                                                  
   46c2c:	4a88           	tstl %a0                                    <== NOT EXECUTED
   46c2e:	6702           	beqs 46c32 <rtems_object_get_api_class_name+0x46><== NOT EXECUTED
    return class_assoc->name;                                         
   46c30:	2010           	movel %a0@,%d0                              <== NOT EXECUTED
  return "BAD CLASS";                                                 
}                                                                     
   46c32:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
   46c36:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00046c3c <rtems_object_get_api_name>: }; const char *rtems_object_get_api_name( int api ) {
   46c3c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  const rtems_assoc_t *api_assoc;                                     
                                                                      
  api_assoc = rtems_assoc_ptr_by_local( rtems_objects_api_assoc, api );
   46c40:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   46c44:	4879 0005 daf4 	pea 5daf4 <rtems_objects_api_assoc>         <== NOT EXECUTED
   46c4a:	4eb9 0004 b120 	jsr 4b120 <rtems_assoc_ptr_by_local>        <== NOT EXECUTED
  if ( api_assoc )                                                    
   46c50:	508f           	addql #8,%sp                                <== NOT EXECUTED
  int api                                                             
)                                                                     
{                                                                     
  const rtems_assoc_t *api_assoc;                                     
                                                                      
  api_assoc = rtems_assoc_ptr_by_local( rtems_objects_api_assoc, api );
   46c52:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  if ( api_assoc )                                                    
    return api_assoc->name;                                           
  return "BAD CLASS";                                                 
   46c54:	203c 0005 ca86 	movel #379526,%d0                           <== NOT EXECUTED
)                                                                     
{                                                                     
  const rtems_assoc_t *api_assoc;                                     
                                                                      
  api_assoc = rtems_assoc_ptr_by_local( rtems_objects_api_assoc, api );
  if ( api_assoc )                                                    
   46c5a:	4a88           	tstl %a0                                    <== NOT EXECUTED
   46c5c:	6702           	beqs 46c60 <rtems_object_get_api_name+0x24> <== NOT EXECUTED
    return api_assoc->name;                                           
   46c5e:	2010           	movel %a0@,%d0                              <== NOT EXECUTED
  return "BAD CLASS";                                                 
}                                                                     
   46c60:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046c9c <rtems_object_get_class_information>: rtems_status_code rtems_object_get_class_information( int the_api, int the_class, rtems_object_api_class_information *info ) {
   46c9c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   46ca0:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   46ca2:	246e 0010      	moveal %fp@(16),%a2                         <== NOT EXECUTED
   46ca6:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  int                  i;                                             
                                                                      
  /*                                                                  
   * Validate parameters and look up information structure.           
   */                                                                 
  if ( !info )                                                        
   46ca8:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   46caa:	6752           	beqs 46cfe <rtems_object_get_class_information+0x62><== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  obj_info = _Objects_Get_information( the_api, the_class );          
   46cac:	3f2e 000e      	movew %fp@(14),%sp@-                        <== NOT EXECUTED
   46cb0:	4267           	clrw %sp@-                                  <== NOT EXECUTED
   46cb2:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   46cb6:	4eb9 0004 8660 	jsr 48660 <_Objects_Get_information>        <== NOT EXECUTED
  if ( !obj_info )                                                    
   46cbc:	508f           	addql #8,%sp                                <== NOT EXECUTED
   * Validate parameters and look up information structure.           
   */                                                                 
  if ( !info )                                                        
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  obj_info = _Objects_Get_information( the_api, the_class );          
   46cbe:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  if ( !obj_info )                                                    
   46cc0:	4a80           	tstl %d0                                    <== NOT EXECUTED
   46cc2:	673e           	beqs 46d02 <rtems_object_get_class_information+0x66><== NOT EXECUTED
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  /*                                                                  
   * Return information about this object class to the user.          
   */                                                                 
  info->minimum_id  = obj_info->minimum_id;                           
   46cc4:	24a8 0006      	movel %a0@(6),%a2@                          <== NOT EXECUTED
  info->maximum_id  = obj_info->maximum_id;                           
  info->auto_extend = obj_info->auto_extend;                          
  info->maximum     = obj_info->maximum;                              
   46cc8:	4282           	clrl %d2                                    <== NOT EXECUTED
                                                                      
  for ( unallocated=0, i=1 ; i <= info->maximum ; i++ )               
   46cca:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   46ccc:	4281           	clrl %d1                                    <== NOT EXECUTED
                                                                      
  /*                                                                  
   * Return information about this object class to the user.          
   */                                                                 
  info->minimum_id  = obj_info->minimum_id;                           
  info->maximum_id  = obj_info->maximum_id;                           
   46cce:	2568 000a 0004 	movel %a0@(10),%a2@(4)                      <== NOT EXECUTED
  info->auto_extend = obj_info->auto_extend;                          
  info->maximum     = obj_info->maximum;                              
   46cd4:	3428 000e      	movew %a0@(14),%d2                          <== NOT EXECUTED
  /*                                                                  
   * Return information about this object class to the user.          
   */                                                                 
  info->minimum_id  = obj_info->minimum_id;                           
  info->maximum_id  = obj_info->maximum_id;                           
  info->auto_extend = obj_info->auto_extend;                          
   46cd8:	1568 0010 000c 	moveb %a0@(16),%a2@(12)                     <== NOT EXECUTED
  info->maximum     = obj_info->maximum;                              
   46cde:	2542 0008      	movel %d2,%a2@(8)                           <== NOT EXECUTED
                                                                      
  for ( unallocated=0, i=1 ; i <= info->maximum ; i++ )               
   46ce2:	600e           	bras 46cf2 <rtems_object_get_class_information+0x56><== NOT EXECUTED
    if ( !obj_info->local_table[i] )                                  
   46ce4:	2268 0018      	moveal %a0@(24),%a1                         <== NOT EXECUTED
   46ce8:	4ab1 0c00      	tstl %a1@(00000000,%d0:l:4)                 <== NOT EXECUTED
   46cec:	6602           	bnes 46cf0 <rtems_object_get_class_information+0x54><== NOT EXECUTED
      unallocated++;                                                  
   46cee:	5281           	addql #1,%d1                                <== NOT EXECUTED
  info->minimum_id  = obj_info->minimum_id;                           
  info->maximum_id  = obj_info->maximum_id;                           
  info->auto_extend = obj_info->auto_extend;                          
  info->maximum     = obj_info->maximum;                              
                                                                      
  for ( unallocated=0, i=1 ; i <= info->maximum ; i++ )               
   46cf0:	5280           	addql #1,%d0                                <== NOT EXECUTED
   46cf2:	b480           	cmpl %d0,%d2                                <== NOT EXECUTED
   46cf4:	64ee           	bccs 46ce4 <rtems_object_get_class_information+0x48><== NOT EXECUTED
    if ( !obj_info->local_table[i] )                                  
      unallocated++;                                                  
                                                                      
  info->unallocated = unallocated;                                    
   46cf6:	2541 000e      	movel %d1,%a2@(14)                          <== NOT EXECUTED
                                                                      
  return RTEMS_SUCCESSFUL;                                            
   46cfa:	4280           	clrl %d0                                    <== NOT EXECUTED
   46cfc:	6006           	bras 46d04 <rtems_object_get_class_information+0x68><== NOT EXECUTED
                                                                      
  /*                                                                  
   * Validate parameters and look up information structure.           
   */                                                                 
  if ( !info )                                                        
    return RTEMS_INVALID_ADDRESS;                                     
   46cfe:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   46d00:	6002           	bras 46d04 <rtems_object_get_class_information+0x68><== NOT EXECUTED
                                                                      
  obj_info = _Objects_Get_information( the_api, the_class );          
  if ( !obj_info )                                                    
    return RTEMS_INVALID_NUMBER;                                      
   46d02:	700a           	moveq #10,%d0                               <== NOT EXECUTED
      unallocated++;                                                  
                                                                      
  info->unallocated = unallocated;                                    
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   46d04:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   46d08:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   46d0c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000461cc <rtems_object_get_classic_name>: rtems_status_code rtems_object_get_classic_name( rtems_id id, rtems_name *name ) {
   461cc:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   461d0:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   461d2:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
  Objects_Name_or_id_lookup_errors  status;                           
  Objects_Name                      name_u;                           
                                                                      
  if ( !name )                                                        
   461d6:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   461d8:	6720           	beqs 461fa <rtems_object_get_classic_name+0x2e><== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  status = _Objects_Id_to_name( id, &name_u );                        
   461da:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   461de:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   461e2:	4eb9 0004 7b94 	jsr 47b94 <_Objects_Id_to_name>             <== NOT EXECUTED
                                                                      
  *name = name_u.name_u32;                                            
   461e8:	24ae fffc      	movel %fp@(-4),%a2@                         <== NOT EXECUTED
  return _Status_Object_name_errors_to_status[ status ];              
   461ec:	41f9 0005 b5e0 	lea 5b5e0 <_Status_Object_name_errors_to_status>,%a0<== NOT EXECUTED
   461f2:	508f           	addql #8,%sp                                <== NOT EXECUTED
   461f4:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
   461f8:	6002           	bras 461fc <rtems_object_get_classic_name+0x30><== NOT EXECUTED
{                                                                     
  Objects_Name_or_id_lookup_errors  status;                           
  Objects_Name                      name_u;                           
                                                                      
  if ( !name )                                                        
    return RTEMS_INVALID_ADDRESS;                                     
   461fa:	7009           	moveq #9,%d0                                <== NOT EXECUTED
                                                                      
  status = _Objects_Id_to_name( id, &name_u );                        
                                                                      
  *name = name_u.name_u32;                                            
  return _Status_Object_name_errors_to_status[ status ];              
}                                                                     
   461fc:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   46200:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004640c <rtems_object_get_name>: char *rtems_object_get_name( Objects_Id id, size_t length, char *name ) {
   4640c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return _Objects_Get_name_as_string( id, length, name );             
}                                                                     
   46410:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  Objects_Id     id,                                                  
  size_t         length,                                              
  char          *name                                                 
)                                                                     
{                                                                     
  return _Objects_Get_name_as_string( id, length, name );             
   46412:	4ef9 0004 7fac 	jmp 47fac <_Objects_Get_name_as_string>     <== NOT EXECUTED
                                                                      

00046d1c <rtems_object_id_api_maximum>: #undef rtems_object_id_api_maximum int rtems_object_id_api_maximum(void) { return OBJECTS_APIS_LAST; }
   46d1c:	7003           	moveq #3,%d0                                <== NOT EXECUTED
#include <rtems/score/object.h>                                       
#include <rtems/rtems/types.h>                                        
                                                                      
#undef rtems_object_id_api_maximum                                    
int rtems_object_id_api_maximum(void)                                 
{                                                                     
   46d1e:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return OBJECTS_APIS_LAST;                                           
}                                                                     
   46d22:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00046d28 <rtems_object_id_api_minimum>: #undef rtems_object_id_api_minimum int rtems_object_id_api_minimum(void) { return OBJECTS_INTERNAL_API; }
   46d28:	7001           	moveq #1,%d0                                <== NOT EXECUTED
#include <rtems/score/object.h>                                       
#include <rtems/rtems/types.h>                                        
                                                                      
#undef rtems_object_id_api_minimum                                    
int rtems_object_id_api_minimum(void)                                 
{                                                                     
   46d2a:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return OBJECTS_INTERNAL_API;                                        
}                                                                     
   46d2e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00046d34 <rtems_object_id_get_api>: */ RTEMS_INLINE_ROUTINE Objects_APIs _Objects_Get_API( Objects_Id id ) { return (Objects_APIs) ((id >> OBJECTS_API_START_BIT) & OBJECTS_API_VALID_BITS);
   46d34:	4280           	clrl %d0                                    <== NOT EXECUTED
int rtems_object_id_get_api(                                          
  rtems_id id                                                         
)                                                                     
{                                                                     
  return _Objects_Get_API( id );                                      
}                                                                     
   46d36:	7207           	moveq #7,%d1                                <== NOT EXECUTED
                                                                      
#undef rtems_object_id_get_api                                        
int rtems_object_id_get_api(                                          
  rtems_id id                                                         
)                                                                     
{                                                                     
   46d38:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   46d3c:	102e 0008      	moveb %fp@(8),%d0                           <== NOT EXECUTED
  return _Objects_Get_API( id );                                      
}                                                                     
   46d40:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   46d42:	c081           	andl %d1,%d0                                <== NOT EXECUTED
	...                                                                  
                                                                      

00046d48 <rtems_object_id_get_class>: int rtems_object_id_get_class( rtems_id id ) { return _Objects_Get_class( id ); }
   46d48:	721b           	moveq #27,%d1                               <== NOT EXECUTED
                                                                      
#undef rtems_object_id_get_class                                      
int rtems_object_id_get_class(                                        
  rtems_id id                                                         
)                                                                     
{                                                                     
   46d4a:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return _Objects_Get_class( id );                                    
}                                                                     
   46d4e:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   46d52:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   46d54:	e2a8           	lsrl %d1,%d0                                <== NOT EXECUTED
                                                                      

00046d58 <rtems_object_id_get_index>: int rtems_object_id_get_index( rtems_id id ) { return _Objects_Get_index( id ); }
   46d58:	4280           	clrl %d0                                    <== NOT EXECUTED
                                                                      
#undef rtems_object_id_get_index                                      
int rtems_object_id_get_index(                                        
  rtems_id id                                                         
)                                                                     
{                                                                     
   46d5a:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return _Objects_Get_index( id );                                    
}                                                                     
   46d5e:	302e 000a      	movew %fp@(10),%d0                          <== NOT EXECUTED
   46d62:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00046d68 <rtems_object_id_get_node>: int rtems_object_id_get_node( rtems_id id ) { return _Objects_Get_node( id ); }
   46d68:	4280           	clrl %d0                                    <== NOT EXECUTED
                                                                      
#undef rtems_object_id_get_node                                       
int rtems_object_id_get_node(                                         
  rtems_id id                                                         
)                                                                     
{                                                                     
   46d6a:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return _Objects_Get_node( id );                                     
}                                                                     
   46d6e:	102e 0009      	moveb %fp@(9),%d0                           <== NOT EXECUTED
   46d72:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00046d78 <rtems_object_set_name>: */ rtems_status_code rtems_object_set_name( rtems_id id, const char *name ) {
   46d78:	4e56 fff0      	linkw %fp,#-16                              <== NOT EXECUTED
   46d7c:	48d7 001c      	moveml %d2-%d4,%sp@                         <== NOT EXECUTED
   46d80:	262e 0008      	movel %fp@(8),%d3                           <== NOT EXECUTED
   46d84:	282e 000c      	movel %fp@(12),%d4                          <== NOT EXECUTED
  Objects_Information *information;                                   
  Objects_Locations    location;                                      
  Objects_Control     *the_object;                                    
  Objects_Id           tmpId;                                         
                                                                      
  if ( !name )                                                        
   46d88:	674e           	beqs 46dd8 <rtems_object_set_name+0x60>     <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  tmpId = (id == OBJECTS_ID_OF_SELF) ? _Thread_Executing->Object.id : id;
   46d8a:	4a83           	tstl %d3                                    <== NOT EXECUTED
   46d8c:	660a           	bnes 46d98 <rtems_object_set_name+0x20>     <== NOT EXECUTED
   46d8e:	2079 0005 f3ac 	moveal 5f3ac <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
   46d94:	2628 0008      	movel %a0@(8),%d3                           <== NOT EXECUTED
                                                                      
  information  = _Objects_Get_information_id( tmpId );                
   46d98:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   46d9a:	4eb9 0004 8634 	jsr 48634 <_Objects_Get_information_id>     <== NOT EXECUTED
  if ( !information )                                                 
   46da0:	588f           	addql #4,%sp                                <== NOT EXECUTED
  if ( !name )                                                        
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  tmpId = (id == OBJECTS_ID_OF_SELF) ? _Thread_Executing->Object.id : id;
                                                                      
  information  = _Objects_Get_information_id( tmpId );                
   46da2:	2400           	movel %d0,%d2                               <== NOT EXECUTED
  if ( !information )                                                 
   46da4:	6736           	beqs 46ddc <rtems_object_set_name+0x64>     <== NOT EXECUTED
    return RTEMS_INVALID_ID;                                          
                                                                      
  the_object = _Objects_Get( information, tmpId, &location );         
   46da6:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   46daa:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   46dac:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   46dae:	4eb9 0004 87e0 	jsr 487e0 <_Objects_Get>                    <== NOT EXECUTED
  switch ( location ) {                                               
   46db4:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   46db8:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   46dbc:	661e           	bnes 46ddc <rtems_object_set_name+0x64>     <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      _Objects_Set_name( information, the_object, name );             
   46dbe:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   46dc0:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   46dc2:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   46dc4:	4eb9 0004 89cc 	jsr 489cc <_Objects_Set_name>               <== NOT EXECUTED
      _Thread_Enable_dispatch();                                      
   46dca:	4eb9 0004 9322 	jsr 49322 <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   46dd0:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   46dd4:	4280           	clrl %d0                                    <== NOT EXECUTED
   46dd6:	6006           	bras 46dde <rtems_object_set_name+0x66>     <== NOT EXECUTED
  Objects_Locations    location;                                      
  Objects_Control     *the_object;                                    
  Objects_Id           tmpId;                                         
                                                                      
  if ( !name )                                                        
    return RTEMS_INVALID_ADDRESS;                                     
   46dd8:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   46dda:	6002           	bras 46dde <rtems_object_set_name+0x66>     <== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   46ddc:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   46dde:	4cee 001c fff0 	moveml %fp@(-16),%d2-%d4                    <== NOT EXECUTED
   46de4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004fcb0 <rtems_partition_create>: uint32_t length, uint32_t buffer_size, rtems_attribute attribute_set, rtems_id *id ) {
   4fcb0:	4e56 ffe4      	linkw %fp,#-28                              <== NOT EXECUTED
   4fcb4:	48d7 1c3c      	moveml %d2-%d5/%a2-%a4,%sp@                 <== NOT EXECUTED
   4fcb8:	2a2e 0008      	movel %fp@(8),%d5                           <== NOT EXECUTED
   4fcbc:	282e 000c      	movel %fp@(12),%d4                          <== NOT EXECUTED
   4fcc0:	262e 0010      	movel %fp@(16),%d3                          <== NOT EXECUTED
   4fcc4:	242e 0014      	movel %fp@(20),%d2                          <== NOT EXECUTED
   4fcc8:	246e 001c      	moveal %fp@(28),%a2                         <== NOT EXECUTED
  register Partition_Control *the_partition;                          
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
   4fccc:	4a85           	tstl %d5                                    <== NOT EXECUTED
   4fcce:	6700 00ac      	beqw 4fd7c <rtems_partition_create+0xcc>    <== NOT EXECUTED
    return RTEMS_INVALID_NAME;                                        
                                                                      
  if ( !starting_address )                                            
   4fcd2:	4a84           	tstl %d4                                    <== NOT EXECUTED
   4fcd4:	6700 00ae      	beqw 4fd84 <rtems_partition_create+0xd4>    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !id )                                                          
   4fcd8:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4fcda:	6700 00a8      	beqw 4fd84 <rtems_partition_create+0xd4>    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( length == 0 || buffer_size == 0 || length < buffer_size ||     
   4fcde:	4a83           	tstl %d3                                    <== NOT EXECUTED
   4fce0:	6700 009e      	beqw 4fd80 <rtems_partition_create+0xd0>    <== NOT EXECUTED
   4fce4:	4a82           	tstl %d2                                    <== NOT EXECUTED
   4fce6:	6700 0098      	beqw 4fd80 <rtems_partition_create+0xd0>    <== NOT EXECUTED
   4fcea:	b483           	cmpl %d3,%d2                                <== NOT EXECUTED
   4fcec:	6200 0092      	bhiw 4fd80 <rtems_partition_create+0xd0>    <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Partition_Is_buffer_size_aligned (         
   uint32_t   buffer_size                                             
)                                                                     
{                                                                     
  return ((buffer_size % CPU_PARTITION_ALIGNMENT) == 0);              
   4fcf0:	7003           	moveq #3,%d0                                <== NOT EXECUTED
   4fcf2:	c082           	andl %d2,%d0                                <== NOT EXECUTED
   4fcf4:	6600 008a      	bnew 4fd80 <rtems_partition_create+0xd0>    <== NOT EXECUTED
)                                                                     
{                                                                     
#if (CPU_ALIGNMENT == 0)                                              
    return true;                                                      
#else                                                                 
    return (((uintptr_t)address % CPU_ALIGNMENT) == 0);               
   4fcf8:	103c 0003      	moveb #3,%d0                                <== NOT EXECUTED
   4fcfc:	c084           	andl %d4,%d0                                <== NOT EXECUTED
         !_Partition_Is_buffer_size_aligned( buffer_size ) )          
    return RTEMS_INVALID_SIZE;                                        
                                                                      
  if ( !_Addresses_Is_aligned( starting_address ) )                   
   4fcfe:	6600 0084      	bnew 4fd84 <rtems_partition_create+0xd4>    <== NOT EXECUTED
   4fd02:	2039 0007 5004 	movel 75004 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   4fd08:	5280           	addql #1,%d0                                <== NOT EXECUTED
   4fd0a:	23c0 0007 5004 	movel %d0,75004 <_Thread_Dispatch_disable_level><== NOT EXECUTED
 *  This function allocates a partition control block from            
 *  the inactive chain of free partition control blocks.              
 */                                                                   
RTEMS_INLINE_ROUTINE Partition_Control *_Partition_Allocate ( void )  
{                                                                     
  return (Partition_Control *) _Objects_Allocate( &_Partition_Information );
   4fd10:	4879 0007 4ea4 	pea 74ea4 <_Partition_Information>          <== NOT EXECUTED
   4fd16:	49f9 0005 4d7a 	lea 54d7a <_Thread_Enable_dispatch>,%a4     <== NOT EXECUTED
   4fd1c:	4eb9 0005 3e34 	jsr 53e34 <_Objects_Allocate>               <== NOT EXECUTED
                                                                      
  _Thread_Disable_dispatch();               /* prevents deletion */   
                                                                      
  the_partition = _Partition_Allocate();                              
                                                                      
  if ( !the_partition ) {                                             
   4fd22:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4fd24:	2640           	moveal %d0,%a3                              <== NOT EXECUTED
   4fd26:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4fd28:	6606           	bnes 4fd30 <rtems_partition_create+0x80>    <== NOT EXECUTED
    _Thread_Enable_dispatch();                                        
   4fd2a:	4e94           	jsr %a4@                                    <== NOT EXECUTED
    return RTEMS_TOO_MANY;                                            
   4fd2c:	7005           	moveq #5,%d0                                <== NOT EXECUTED
   4fd2e:	6056           	bras 4fd86 <rtems_partition_create+0xd6>    <== NOT EXECUTED
    return RTEMS_TOO_MANY;                                            
  }                                                                   
#endif                                                                
                                                                      
  the_partition->starting_address      = starting_address;            
  the_partition->length                = length;                      
   4fd30:	2743 0014      	movel %d3,%a3@(20)                          <== NOT EXECUTED
  the_partition->buffer_size           = buffer_size;                 
  the_partition->attribute_set         = attribute_set;               
   4fd34:	276e 0018 001c 	movel %fp@(24),%a3@(28)                     <== NOT EXECUTED
  the_partition->number_of_used_blocks = 0;                           
                                                                      
  _Chain_Initialize( &the_partition->Memory, starting_address,        
   4fd3a:	4c42 3003      	remul %d2,%d3,%d3                           <== NOT EXECUTED
    _Thread_Enable_dispatch();                                        
    return RTEMS_TOO_MANY;                                            
  }                                                                   
#endif                                                                
                                                                      
  the_partition->starting_address      = starting_address;            
   4fd3e:	2744 0010      	movel %d4,%a3@(16)                          <== NOT EXECUTED
  the_partition->length                = length;                      
  the_partition->buffer_size           = buffer_size;                 
   4fd42:	2742 0018      	movel %d2,%a3@(24)                          <== NOT EXECUTED
  the_partition->attribute_set         = attribute_set;               
  the_partition->number_of_used_blocks = 0;                           
   4fd46:	42ab 0020      	clrl %a3@(32)                               <== NOT EXECUTED
                                                                      
  _Chain_Initialize( &the_partition->Memory, starting_address,        
   4fd4a:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4fd4c:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4fd4e:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4fd50:	486b 0024      	pea %a3@(36)                                <== NOT EXECUTED
   4fd54:	4eb9 0005 2a80 	jsr 52a80 <_Chain_Initialize>               <== NOT EXECUTED
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
   4fd5a:	202b 0008      	movel %a3@(8),%d0                           <== NOT EXECUTED
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   4fd5e:	4281           	clrl %d1                                    <== NOT EXECUTED
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   4fd60:	2079 0007 4ebc 	moveal 74ebc <_Partition_Information+0x18>,%a0<== NOT EXECUTED
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   4fd66:	3200           	movew %d0,%d1                               <== NOT EXECUTED
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   4fd68:	218b 1c00      	movel %a3,%a0@(00000000,%d1:l:4)            <== NOT EXECUTED
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
    the_object                                                        
  );                                                                  
                                                                      
  the_object->name = name;                                            
   4fd6c:	2745 000c      	movel %d5,%a3@(12)                          <== NOT EXECUTED
    &_Partition_Information,                                          
    &the_partition->Object,                                           
    (Objects_Name) name                                               
  );                                                                  
                                                                      
  *id = the_partition->Object.id;                                     
   4fd70:	2480           	movel %d0,%a2@                              <== NOT EXECUTED
      name,                                                           
      0                  /* Not used */                               
    );                                                                
#endif                                                                
                                                                      
  _Thread_Enable_dispatch();                                          
   4fd72:	4e94           	jsr %a4@                                    <== NOT EXECUTED
  return RTEMS_SUCCESSFUL;                                            
   4fd74:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   4fd78:	4280           	clrl %d0                                    <== NOT EXECUTED
   4fd7a:	600a           	bras 4fd86 <rtems_partition_create+0xd6>    <== NOT EXECUTED
)                                                                     
{                                                                     
  register Partition_Control *the_partition;                          
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
    return RTEMS_INVALID_NAME;                                        
   4fd7c:	7003           	moveq #3,%d0                                <== NOT EXECUTED
   4fd7e:	6006           	bras 4fd86 <rtems_partition_create+0xd6>    <== NOT EXECUTED
  if ( !id )                                                          
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( length == 0 || buffer_size == 0 || length < buffer_size ||     
         !_Partition_Is_buffer_size_aligned( buffer_size ) )          
    return RTEMS_INVALID_SIZE;                                        
   4fd80:	7008           	moveq #8,%d0                                <== NOT EXECUTED
   4fd82:	6002           	bras 4fd86 <rtems_partition_create+0xd6>    <== NOT EXECUTED
                                                                      
  if ( !_Addresses_Is_aligned( starting_address ) )                   
     return RTEMS_INVALID_ADDRESS;                                    
   4fd84:	7009           	moveq #9,%d0                                <== NOT EXECUTED
    );                                                                
#endif                                                                
                                                                      
  _Thread_Enable_dispatch();                                          
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4fd86:	4cee 1c3c ffe4 	moveml %fp@(-28),%d2-%d5/%a2-%a4            <== NOT EXECUTED
   4fd8c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004fd90 <rtems_partition_delete>: */ rtems_status_code rtems_partition_delete( rtems_id id ) {
   4fd90:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   4fd94:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   4fd96:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Partition_Control *)                                        
    _Objects_Get( &_Partition_Information, id, location );            
   4fd98:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4fd9c:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4fda0:	4879 0007 4ea4 	pea 74ea4 <_Partition_Information>          <== NOT EXECUTED
   4fda6:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
  register Partition_Control *the_partition;                          
  Objects_Locations           location;                               
                                                                      
  the_partition = _Partition_Get( id, &location );                    
  switch ( location ) {                                               
   4fdac:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4fdb0:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   4fdb2:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4fdb6:	6638           	bnes 4fdf0 <rtems_partition_delete+0x60>    <== NOT EXECUTED
   4fdb8:	47f9 0005 4d7a 	lea 54d7a <_Thread_Enable_dispatch>,%a3     <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( the_partition->number_of_used_blocks == 0 ) {              
   4fdbe:	4aaa 0020      	tstl %a2@(32)                               <== NOT EXECUTED
   4fdc2:	6626           	bnes 4fdea <rtems_partition_delete+0x5a>    <== NOT EXECUTED
        _Objects_Close( &_Partition_Information, &the_partition->Object );
   4fdc4:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4fdc6:	4879 0007 4ea4 	pea 74ea4 <_Partition_Information>          <== NOT EXECUTED
   4fdcc:	4eb9 0005 3eb0 	jsr 53eb0 <_Objects_Close>                  <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _Partition_Free (                           
   Partition_Control *the_partition                                   
)                                                                     
{                                                                     
  _Objects_Free( &_Partition_Information, &the_partition->Object );   
   4fdd2:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4fdd4:	4879 0007 4ea4 	pea 74ea4 <_Partition_Information>          <== NOT EXECUTED
   4fdda:	4eb9 0005 4128 	jsr 54128 <_Objects_Free>                   <== NOT EXECUTED
            0                          /* Not used */                 
          );                                                          
        }                                                             
#endif                                                                
                                                                      
        _Thread_Enable_dispatch();                                    
   4fde0:	4e93           	jsr %a3@                                    <== NOT EXECUTED
        return RTEMS_SUCCESSFUL;                                      
   4fde2:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   4fde6:	4280           	clrl %d0                                    <== NOT EXECUTED
   4fde8:	6008           	bras 4fdf2 <rtems_partition_delete+0x62>    <== NOT EXECUTED
      }                                                               
      _Thread_Enable_dispatch();                                      
   4fdea:	4e93           	jsr %a3@                                    <== NOT EXECUTED
      return RTEMS_RESOURCE_IN_USE;                                   
   4fdec:	700c           	moveq #12,%d0                               <== NOT EXECUTED
   4fdee:	6002           	bras 4fdf2 <rtems_partition_delete+0x62>    <== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4fdf0:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4fdf2:	246e fff4      	moveal %fp@(-12),%a2                        <== NOT EXECUTED
   4fdf6:	266e fff8      	moveal %fp@(-8),%a3                         <== NOT EXECUTED
   4fdfa:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004fe00 <rtems_partition_get_buffer>: rtems_status_code rtems_partition_get_buffer( rtems_id id, void **buffer ) {
   4fe00:	4e56 fff0      	linkw %fp,#-16                              <== NOT EXECUTED
   4fe04:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     <== NOT EXECUTED
   4fe08:	266e 000c      	moveal %fp@(12),%a3                         <== NOT EXECUTED
  register Partition_Control *the_partition;                          
  Objects_Locations           location;                               
  void                       *the_buffer;                             
                                                                      
  if ( !buffer )                                                      
   4fe0c:	4a8b           	tstl %a3                                    <== NOT EXECUTED
   4fe0e:	6748           	beqs 4fe58 <rtems_partition_get_buffer+0x58><== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Partition_Control *)                                        
    _Objects_Get( &_Partition_Information, id, location );            
   4fe10:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4fe14:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4fe18:	4879 0007 4ea4 	pea 74ea4 <_Partition_Information>          <== NOT EXECUTED
   4fe1e:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_partition = _Partition_Get( id, &location );                    
  switch ( location ) {                                               
   4fe24:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4fe28:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   4fe2a:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4fe2e:	662c           	bnes 4fe5c <rtems_partition_get_buffer+0x5c><== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void *_Partition_Allocate_buffer (               
   Partition_Control *the_partition                                   
)                                                                     
{                                                                     
  return _Chain_Get( &the_partition->Memory );                        
   4fe30:	486a 0024      	pea %a2@(36)                                <== NOT EXECUTED
   4fe34:	4eb9 0005 2a4c 	jsr 52a4c <_Chain_Get>                      <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      the_buffer = _Partition_Allocate_buffer( the_partition );       
      if ( the_buffer ) {                                             
   4fe3a:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4fe3c:	41f9 0005 4d7a 	lea 54d7a <_Thread_Enable_dispatch>,%a0     <== NOT EXECUTED
   4fe42:	2400           	movel %d0,%d2                               <== NOT EXECUTED
   4fe44:	670c           	beqs 4fe52 <rtems_partition_get_buffer+0x52><== NOT EXECUTED
        the_partition->number_of_used_blocks += 1;                    
   4fe46:	52aa 0020      	addql #1,%a2@(32)                           <== NOT EXECUTED
        _Thread_Enable_dispatch();                                    
   4fe4a:	4e90           	jsr %a0@                                    <== NOT EXECUTED
        *buffer = the_buffer;                                         
        return RTEMS_SUCCESSFUL;                                      
   4fe4c:	4280           	clrl %d0                                    <== NOT EXECUTED
    case OBJECTS_LOCAL:                                               
      the_buffer = _Partition_Allocate_buffer( the_partition );       
      if ( the_buffer ) {                                             
        the_partition->number_of_used_blocks += 1;                    
        _Thread_Enable_dispatch();                                    
        *buffer = the_buffer;                                         
   4fe4e:	2682           	movel %d2,%a3@                              <== NOT EXECUTED
        return RTEMS_SUCCESSFUL;                                      
   4fe50:	600c           	bras 4fe5e <rtems_partition_get_buffer+0x5e><== NOT EXECUTED
      }                                                               
      _Thread_Enable_dispatch();                                      
   4fe52:	4e90           	jsr %a0@                                    <== NOT EXECUTED
      return RTEMS_UNSATISFIED;                                       
   4fe54:	700d           	moveq #13,%d0                               <== NOT EXECUTED
   4fe56:	6006           	bras 4fe5e <rtems_partition_get_buffer+0x5e><== NOT EXECUTED
  register Partition_Control *the_partition;                          
  Objects_Locations           location;                               
  void                       *the_buffer;                             
                                                                      
  if ( !buffer )                                                      
    return RTEMS_INVALID_ADDRESS;                                     
   4fe58:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4fe5a:	6002           	bras 4fe5e <rtems_partition_get_buffer+0x5e><== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4fe5c:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4fe5e:	4cee 0c04 fff0 	moveml %fp@(-16),%d2/%a2-%a3                <== NOT EXECUTED
   4fe64:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004fe68 <rtems_partition_ident>: rtems_status_code rtems_partition_ident( rtems_name name, uint32_t node, rtems_id *id ) {
   4fe68:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  Objects_Name_or_id_lookup_errors  status;                           
                                                                      
  status = _Objects_Name_to_id_u32( &_Partition_Information, name, node, id );
   4fe6c:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   4fe70:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   4fe74:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4fe78:	4879 0007 4ea4 	pea 74ea4 <_Partition_Information>          <== NOT EXECUTED
   4fe7e:	4eb9 0005 442c 	jsr 5442c <_Objects_Name_to_id_u32>         <== NOT EXECUTED
                                                                      
  return _Status_Object_name_errors_to_status[ status ];              
}                                                                     
   4fe84:	41f9 0006 e620 	lea 6e620 <_Status_Object_name_errors_to_status>,%a0<== NOT EXECUTED
   4fe8a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4fe8c:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
	...                                                                  
                                                                      

0004fe94 <rtems_partition_return_buffer>: rtems_status_code rtems_partition_return_buffer( rtems_id id, void *buffer ) {
   4fe94:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   4fe98:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4fe9a:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Partition_Control *)                                        
    _Objects_Get( &_Partition_Information, id, location );            
   4fe9c:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4fea0:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4fea4:	4879 0007 4ea4 	pea 74ea4 <_Partition_Information>          <== NOT EXECUTED
   4feaa:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
   4feae:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
  register Partition_Control *the_partition;                          
  Objects_Locations           location;                               
                                                                      
  the_partition = _Partition_Get( id, &location );                    
  switch ( location ) {                                               
   4feb4:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4feb8:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   4feba:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4febe:	663e           	bnes 4fefe <rtems_partition_return_buffer+0x6a><== NOT EXECUTED
)                                                                     
{                                                                     
  void *starting;                                                     
  void *ending;                                                       
                                                                      
  starting = the_partition->starting_address;                         
   4fec0:	202a 0010      	movel %a2@(16),%d0                          <== NOT EXECUTED
  ending   = _Addresses_Add_offset( starting, the_partition->length );
   4fec4:	222a 0014      	movel %a2@(20),%d1                          <== NOT EXECUTED
  const void *address,                                                
  const void *base,                                                   
  const void *limit                                                   
)                                                                     
{                                                                     
  return (address >= base && address <= limit);                       
   4fec8:	b082           	cmpl %d2,%d0                                <== NOT EXECUTED
   4feca:	6240           	bhis 4ff0c <rtems_partition_return_buffer+0x78><== NOT EXECUTED
RTEMS_INLINE_ROUTINE void *_Addresses_Add_offset (                    
  const void *base,                                                   
  uintptr_t   offset                                                  
)                                                                     
{                                                                     
  return (void *)((uintptr_t)base + offset);                          
   4fecc:	d280           	addl %d0,%d1                                <== NOT EXECUTED
  const void *address,                                                
  const void *base,                                                   
  const void *limit                                                   
)                                                                     
{                                                                     
  return (address >= base && address <= limit);                       
   4fece:	b282           	cmpl %d2,%d1                                <== NOT EXECUTED
   4fed0:	653a           	bcss 4ff0c <rtems_partition_return_buffer+0x78><== NOT EXECUTED
RTEMS_INLINE_ROUTINE int32_t _Addresses_Subtract (                    
  const void *left,                                                   
  const void *right                                                   
)                                                                     
{                                                                     
  return (int32_t) ((const char *) left - (const char *) right);      
   4fed2:	2202           	movel %d2,%d1                               <== NOT EXECUTED
   4fed4:	9280           	subl %d0,%d1                                <== NOT EXECUTED
   4fed6:	2001           	movel %d1,%d0                               <== NOT EXECUTED
  offset = (uint32_t) _Addresses_Subtract(                            
    the_buffer,                                                       
    the_partition->starting_address                                   
  );                                                                  
                                                                      
  return ((offset % the_partition->buffer_size) == 0);                
   4fed8:	4c6a 0001 0018 	remul %a2@(24),%d1,%d0                      <== NOT EXECUTED
                                                                      
  starting = the_partition->starting_address;                         
  ending   = _Addresses_Add_offset( starting, the_partition->length );
                                                                      
  return (                                                            
    _Addresses_Is_in_range( the_buffer, starting, ending ) &&         
   4fede:	4a81           	tstl %d1                                    <== NOT EXECUTED
   4fee0:	662a           	bnes 4ff0c <rtems_partition_return_buffer+0x78><== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _Partition_Free_buffer (                    
  Partition_Control *the_partition,                                   
  Chain_Node        *the_buffer                                       
)                                                                     
{                                                                     
  _Chain_Append( &the_partition->Memory, the_buffer );                
   4fee2:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4fee4:	486a 0024      	pea %a2@(36)                                <== NOT EXECUTED
   4fee8:	4eb9 0005 29ec 	jsr 529ec <_Chain_Append>                   <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( _Partition_Is_buffer_valid( buffer, the_partition ) ) {    
        _Partition_Free_buffer( the_partition, buffer );              
        the_partition->number_of_used_blocks -= 1;                    
   4feee:	53aa 0020      	subql #1,%a2@(32)                           <== NOT EXECUTED
        _Thread_Enable_dispatch();                                    
   4fef2:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
        return RTEMS_SUCCESSFUL;                                      
   4fef8:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4fefa:	4280           	clrl %d0                                    <== NOT EXECUTED
   4fefc:	6002           	bras 4ff00 <rtems_partition_return_buffer+0x6c><== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4fefe:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4ff00:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   4ff04:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   4ff08:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4ff0a:	4e75           	rts                                         <== NOT EXECUTED
        _Partition_Free_buffer( the_partition, buffer );              
        the_partition->number_of_used_blocks -= 1;                    
        _Thread_Enable_dispatch();                                    
        return RTEMS_SUCCESSFUL;                                      
      }                                                               
      _Thread_Enable_dispatch();                                      
   4ff0c:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_INVALID_ADDRESS;                                   
   4ff12:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4ff14:	60ea           	bras 4ff00 <rtems_partition_return_buffer+0x6c><== NOT EXECUTED
	...                                                                  
                                                                      

0004f334 <rtems_port_create>: void *internal_start, void *external_start, uint32_t length, rtems_id *id ) {
   4f334:	4e56 ffec      	linkw %fp,#-20                              <== NOT EXECUTED
   4f338:	48d7 0c1c      	moveml %d2-%d4/%a2-%a3,%sp@                 <== NOT EXECUTED
   4f33c:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
   4f340:	282e 000c      	movel %fp@(12),%d4                          <== NOT EXECUTED
   4f344:	262e 0010      	movel %fp@(16),%d3                          <== NOT EXECUTED
   4f348:	246e 0018      	moveal %fp@(24),%a2                         <== NOT EXECUTED
  register Dual_ported_memory_Control *the_port;                      
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
   4f34c:	4a82           	tstl %d2                                    <== NOT EXECUTED
   4f34e:	676c           	beqs 4f3bc <rtems_port_create+0x88>         <== NOT EXECUTED
    return RTEMS_INVALID_NAME;                                        
                                                                      
  if ( !id )                                                          
   4f350:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4f352:	676c           	beqs 4f3c0 <rtems_port_create+0x8c>         <== NOT EXECUTED
 *    id       - port id                                              
 *    RTEMS_SUCCESSFUL - if successful                                
 *    error code - if unsuccessful                                    
 */                                                                   
                                                                      
rtems_status_code rtems_port_create(                                  
   4f354:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   4f356:	7203           	moveq #3,%d1                                <== NOT EXECUTED
   4f358:	8084           	orl %d4,%d0                                 <== NOT EXECUTED
   4f35a:	c081           	andl %d1,%d0                                <== NOT EXECUTED
    return RTEMS_INVALID_NAME;                                        
                                                                      
  if ( !id )                                                          
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !_Addresses_Is_aligned( internal_start ) ||                    
   4f35c:	6662           	bnes 4f3c0 <rtems_port_create+0x8c>         <== NOT EXECUTED
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   4f35e:	2039 0007 5004 	movel 75004 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   4f364:	5280           	addql #1,%d0                                <== NOT EXECUTED
   4f366:	23c0 0007 5004 	movel %d0,75004 <_Thread_Dispatch_disable_level><== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE Dual_ported_memory_Control                       
   *_Dual_ported_memory_Allocate ( void )                             
{                                                                     
  return (Dual_ported_memory_Control *)                               
     _Objects_Allocate( &_Dual_ported_memory_Information );           
   4f36c:	4879 0007 4e6c 	pea 74e6c <_Dual_ported_memory_Information> <== NOT EXECUTED
   4f372:	4eb9 0005 3e34 	jsr 53e34 <_Objects_Allocate>               <== NOT EXECUTED
                                                                      
  _Thread_Disable_dispatch();             /* to prevent deletion */   
                                                                      
  the_port = _Dual_ported_memory_Allocate();                          
                                                                      
  if ( !the_port ) {                                                  
   4f378:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4f37a:	43f9 0005 4d7a 	lea 54d7a <_Thread_Enable_dispatch>,%a1     <== NOT EXECUTED
   4f380:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4f382:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4f384:	6606           	bnes 4f38c <rtems_port_create+0x58>         <== NOT EXECUTED
    _Thread_Enable_dispatch();                                        
   4f386:	4e91           	jsr %a1@                                    <== NOT EXECUTED
    return RTEMS_TOO_MANY;                                            
   4f388:	7005           	moveq #5,%d0                                <== NOT EXECUTED
   4f38a:	6036           	bras 4f3c2 <rtems_port_create+0x8e>         <== NOT EXECUTED
  }                                                                   
                                                                      
  the_port->internal_base = internal_start;                           
  the_port->external_base = external_start;                           
  the_port->length        = length - 1;                               
   4f38c:	202e 0014      	movel %fp@(20),%d0                          <== NOT EXECUTED
   4f390:	5380           	subql #1,%d0                                <== NOT EXECUTED
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   4f392:	4281           	clrl %d1                                    <== NOT EXECUTED
   4f394:	2140 0018      	movel %d0,%a0@(24)                          <== NOT EXECUTED
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
   4f398:	2028 0008      	movel %a0@(8),%d0                           <== NOT EXECUTED
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   4f39c:	2679 0007 4e84 	moveal 74e84 <_Dual_ported_memory_Information+0x18>,%a3<== NOT EXECUTED
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   4f3a2:	3200           	movew %d0,%d1                               <== NOT EXECUTED
  if ( !the_port ) {                                                  
    _Thread_Enable_dispatch();                                        
    return RTEMS_TOO_MANY;                                            
  }                                                                   
                                                                      
  the_port->internal_base = internal_start;                           
   4f3a4:	2144 0010      	movel %d4,%a0@(16)                          <== NOT EXECUTED
  the_port->external_base = external_start;                           
   4f3a8:	2143 0014      	movel %d3,%a0@(20)                          <== NOT EXECUTED
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   4f3ac:	2788 1c00      	movel %a0,%a3@(00000000,%d1:l:4)            <== NOT EXECUTED
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
    the_object                                                        
  );                                                                  
                                                                      
  the_object->name = name;                                            
   4f3b0:	2142 000c      	movel %d2,%a0@(12)                          <== NOT EXECUTED
    &_Dual_ported_memory_Information,                                 
    &the_port->Object,                                                
    (Objects_Name) name                                               
  );                                                                  
                                                                      
  *id = the_port->Object.id;                                          
   4f3b4:	2480           	movel %d0,%a2@                              <== NOT EXECUTED
  _Thread_Enable_dispatch();                                          
   4f3b6:	4e91           	jsr %a1@                                    <== NOT EXECUTED
  return RTEMS_SUCCESSFUL;                                            
   4f3b8:	4280           	clrl %d0                                    <== NOT EXECUTED
   4f3ba:	6006           	bras 4f3c2 <rtems_port_create+0x8e>         <== NOT EXECUTED
)                                                                     
{                                                                     
  register Dual_ported_memory_Control *the_port;                      
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
    return RTEMS_INVALID_NAME;                                        
   4f3bc:	7003           	moveq #3,%d0                                <== NOT EXECUTED
   4f3be:	6002           	bras 4f3c2 <rtems_port_create+0x8e>         <== NOT EXECUTED
  if ( !id )                                                          
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !_Addresses_Is_aligned( internal_start ) ||                    
       !_Addresses_Is_aligned( external_start ) )                     
    return RTEMS_INVALID_ADDRESS;                                     
   4f3c0:	7009           	moveq #9,%d0                                <== NOT EXECUTED
  );                                                                  
                                                                      
  *id = the_port->Object.id;                                          
  _Thread_Enable_dispatch();                                          
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4f3c2:	4cee 0c1c ffec 	moveml %fp@(-20),%d2-%d4/%a2-%a3            <== NOT EXECUTED
   4f3c8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004f3cc <rtems_port_delete>: */ rtems_status_code rtems_port_delete( rtems_id id ) {
   4f3cc:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   4f3d0:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Dual_ported_memory_Control *)                               
     _Objects_Get( &_Dual_ported_memory_Information, id, location );  
   4f3d2:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4f3d6:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4f3da:	4879 0007 4e6c 	pea 74e6c <_Dual_ported_memory_Information> <== NOT EXECUTED
   4f3e0:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
  register Dual_ported_memory_Control *the_port;                      
  Objects_Locations                    location;                      
                                                                      
  the_port = _Dual_ported_memory_Get( id, &location );                
  switch ( location ) {                                               
   4f3e6:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4f3ea:	2400           	movel %d0,%d2                               <== NOT EXECUTED
   4f3ec:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4f3f0:	662a           	bnes 4f41c <rtems_port_delete+0x50>         <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      _Objects_Close( &_Dual_ported_memory_Information, &the_port->Object );
   4f3f2:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4f3f4:	4879 0007 4e6c 	pea 74e6c <_Dual_ported_memory_Information> <== NOT EXECUTED
   4f3fa:	4eb9 0005 3eb0 	jsr 53eb0 <_Objects_Close>                  <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _Dual_ported_memory_Free (                  
   Dual_ported_memory_Control *the_port                               
)                                                                     
{                                                                     
  _Objects_Free( &_Dual_ported_memory_Information, &the_port->Object );
   4f400:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4f402:	4879 0007 4e6c 	pea 74e6c <_Dual_ported_memory_Information> <== NOT EXECUTED
   4f408:	4eb9 0005 4128 	jsr 54128 <_Objects_Free>                   <== NOT EXECUTED
      _Dual_ported_memory_Free( the_port );                           
      _Thread_Enable_dispatch();                                      
   4f40e:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   4f414:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   4f418:	4280           	clrl %d0                                    <== NOT EXECUTED
   4f41a:	6002           	bras 4f41e <rtems_port_delete+0x52>         <== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4f41c:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4f41e:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   4f422:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004f428 <rtems_port_external_to_internal>: rtems_status_code rtems_port_external_to_internal( rtems_id id, void *external, void **internal ) {
   4f428:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   4f42c:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4f42e:	246e 0010      	moveal %fp@(16),%a2                         <== NOT EXECUTED
   4f432:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4f434:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
  register Dual_ported_memory_Control *the_port;                      
  Objects_Locations                    location;                      
  uint32_t                             ending;                        
                                                                      
  if ( !internal )                                                    
   4f438:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4f43a:	6740           	beqs 4f47c <rtems_port_external_to_internal+0x54><== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Dual_ported_memory_Control *)                               
     _Objects_Get( &_Dual_ported_memory_Information, id, location );  
   4f43c:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4f440:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4f444:	4879 0007 4e6c 	pea 74e6c <_Dual_ported_memory_Information> <== NOT EXECUTED
   4f44a:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_port = _Dual_ported_memory_Get( id, &location );                
  switch ( location ) {                                               
   4f450:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4f454:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4f456:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4f45a:	6624           	bnes 4f480 <rtems_port_external_to_internal+0x58><== NOT EXECUTED
RTEMS_INLINE_ROUTINE int32_t _Addresses_Subtract (                    
  const void *left,                                                   
  const void *right                                                   
)                                                                     
{                                                                     
  return (int32_t) ((const char *) left - (const char *) right);      
   4f45c:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   4f45e:	90a8 0014      	subl %a0@(20),%d0                           <== NOT EXECUTED
    case OBJECTS_LOCAL:                                               
      ending = _Addresses_Subtract( external, the_port->external_base );
      if ( ending > the_port->length )                                
   4f462:	b0a8 0018      	cmpl %a0@(24),%d0                           <== NOT EXECUTED
   4f466:	6304           	blss 4f46c <rtems_port_external_to_internal+0x44><== NOT EXECUTED
        *internal = external;                                         
   4f468:	2482           	movel %d2,%a2@                              <== NOT EXECUTED
   4f46a:	6006           	bras 4f472 <rtems_port_external_to_internal+0x4a><== NOT EXECUTED
RTEMS_INLINE_ROUTINE void *_Addresses_Add_offset (                    
  const void *base,                                                   
  uintptr_t   offset                                                  
)                                                                     
{                                                                     
  return (void *)((uintptr_t)base + offset);                          
   4f46c:	d0a8 0010      	addl %a0@(16),%d0                           <== NOT EXECUTED
   4f470:	2480           	movel %d0,%a2@                              <== NOT EXECUTED
      else                                                            
        *internal = _Addresses_Add_offset( the_port->internal_base,   
                                           ending );                  
      _Thread_Enable_dispatch();                                      
   4f472:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   4f478:	4280           	clrl %d0                                    <== NOT EXECUTED
   4f47a:	6006           	bras 4f482 <rtems_port_external_to_internal+0x5a><== NOT EXECUTED
  register Dual_ported_memory_Control *the_port;                      
  Objects_Locations                    location;                      
  uint32_t                             ending;                        
                                                                      
  if ( !internal )                                                    
    return RTEMS_INVALID_ADDRESS;                                     
   4f47c:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4f47e:	6002           	bras 4f482 <rtems_port_external_to_internal+0x5a><== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4f480:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4f482:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   4f486:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   4f48a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004f490 <rtems_port_ident>: rtems_status_code rtems_port_ident( rtems_name name, rtems_id *id ) {
   4f490:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  Objects_Name_or_id_lookup_errors  status;                           
                                                                      
  status = _Objects_Name_to_id_u32(                                   
   4f494:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   4f498:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4f49a:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4f49e:	4879 0007 4e6c 	pea 74e6c <_Dual_ported_memory_Information> <== NOT EXECUTED
   4f4a4:	4eb9 0005 442c 	jsr 5442c <_Objects_Name_to_id_u32>         <== NOT EXECUTED
    OBJECTS_SEARCH_ALL_NODES,                                         
    id                                                                
  );                                                                  
                                                                      
  return _Status_Object_name_errors_to_status[ status ];              
}                                                                     
   4f4aa:	41f9 0006 e620 	lea 6e620 <_Status_Object_name_errors_to_status>,%a0<== NOT EXECUTED
   4f4b0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4f4b2:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
                                                                      

0004f4b8 <rtems_port_internal_to_external>: rtems_status_code rtems_port_internal_to_external( rtems_id id, void *internal, void **external ) {
   4f4b8:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   4f4bc:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4f4be:	246e 0010      	moveal %fp@(16),%a2                         <== NOT EXECUTED
   4f4c2:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4f4c4:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
  register Dual_ported_memory_Control *the_port;                      
  Objects_Locations                    location;                      
  uint32_t                             ending;                        
                                                                      
  if ( !external )                                                    
   4f4c8:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4f4ca:	6740           	beqs 4f50c <rtems_port_internal_to_external+0x54><== NOT EXECUTED
   4f4cc:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4f4d0:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4f4d4:	4879 0007 4e6c 	pea 74e6c <_Dual_ported_memory_Information> <== NOT EXECUTED
   4f4da:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_port = _Dual_ported_memory_Get( id, &location );                
  switch ( location ) {                                               
   4f4e0:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4f4e4:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4f4e6:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4f4ea:	6624           	bnes 4f510 <rtems_port_internal_to_external+0x58><== NOT EXECUTED
RTEMS_INLINE_ROUTINE int32_t _Addresses_Subtract (                    
  const void *left,                                                   
  const void *right                                                   
)                                                                     
{                                                                     
  return (int32_t) ((const char *) left - (const char *) right);      
   4f4ec:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   4f4ee:	90a8 0010      	subl %a0@(16),%d0                           <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      ending = _Addresses_Subtract( internal, the_port->internal_base );
      if ( ending > the_port->length )                                
   4f4f2:	b0a8 0018      	cmpl %a0@(24),%d0                           <== NOT EXECUTED
   4f4f6:	6304           	blss 4f4fc <rtems_port_internal_to_external+0x44><== NOT EXECUTED
        *external = internal;                                         
   4f4f8:	2482           	movel %d2,%a2@                              <== NOT EXECUTED
   4f4fa:	6006           	bras 4f502 <rtems_port_internal_to_external+0x4a><== NOT EXECUTED
RTEMS_INLINE_ROUTINE void *_Addresses_Add_offset (                    
  const void *base,                                                   
  uintptr_t   offset                                                  
)                                                                     
{                                                                     
  return (void *)((uintptr_t)base + offset);                          
   4f4fc:	d0a8 0014      	addl %a0@(20),%d0                           <== NOT EXECUTED
   4f500:	2480           	movel %d0,%a2@                              <== NOT EXECUTED
      else                                                            
        *external = _Addresses_Add_offset( the_port->external_base,   
                                           ending );                  
      _Thread_Enable_dispatch();                                      
   4f502:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   4f508:	4280           	clrl %d0                                    <== NOT EXECUTED
   4f50a:	6006           	bras 4f512 <rtems_port_internal_to_external+0x5a><== NOT EXECUTED
  register Dual_ported_memory_Control *the_port;                      
  Objects_Locations                    location;                      
  uint32_t                             ending;                        
                                                                      
  if ( !external )                                                    
    return RTEMS_INVALID_ADDRESS;                                     
   4f50c:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4f50e:	6002           	bras 4f512 <rtems_port_internal_to_external+0x5a><== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4f510:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4f512:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   4f516:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   4f51a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004ff18 <rtems_rate_monotonic_cancel>: */ rtems_status_code rtems_rate_monotonic_cancel( rtems_id id ) {
   4ff18:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   4ff1c:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   4ff1e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Rate_monotonic_Control *)                                   
    _Objects_Get( &_Rate_monotonic_Information, id, location );       
   4ff20:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4ff24:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4ff28:	4879 0007 4edc 	pea 74edc <_Rate_monotonic_Information>     <== NOT EXECUTED
   4ff2e:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
  Rate_monotonic_Control *the_period;                                 
  Objects_Locations       location;                                   
                                                                      
  the_period = _Rate_monotonic_Get( id, &location );                  
  switch ( location ) {                                               
   4ff34:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4ff38:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   4ff3a:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4ff3e:	662e           	bnes 4ff6e <rtems_rate_monotonic_cancel+0x56><== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( !_Thread_Is_executing( the_period->owner ) ) {             
   4ff40:	2039 0007 51c8 	movel 751c8 <_Per_CPU_Information+0xc>,%d0  <== NOT EXECUTED
   4ff46:	47f9 0005 4d7a 	lea 54d7a <_Thread_Enable_dispatch>,%a3     <== NOT EXECUTED
   4ff4c:	b0aa 0040      	cmpl %a2@(64),%d0                           <== NOT EXECUTED
   4ff50:	6706           	beqs 4ff58 <rtems_rate_monotonic_cancel+0x40><== NOT EXECUTED
        _Thread_Enable_dispatch();                                    
   4ff52:	4e93           	jsr %a3@                                    <== NOT EXECUTED
        return RTEMS_NOT_OWNER_OF_RESOURCE;                           
   4ff54:	7017           	moveq #23,%d0                               <== NOT EXECUTED
   4ff56:	6018           	bras 4ff70 <rtems_rate_monotonic_cancel+0x58><== NOT EXECUTED
      }                                                               
      (void) _Watchdog_Remove( &the_period->Timer );                  
   4ff58:	486a 0010      	pea %a2@(16)                                <== NOT EXECUTED
   4ff5c:	4eb9 0005 5e40 	jsr 55e40 <_Watchdog_Remove>                <== NOT EXECUTED
      the_period->state = RATE_MONOTONIC_INACTIVE;                    
   4ff62:	42aa 0038      	clrl %a2@(56)                               <== NOT EXECUTED
      _Thread_Enable_dispatch();                                      
   4ff66:	4e93           	jsr %a3@                                    <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   4ff68:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4ff6a:	4280           	clrl %d0                                    <== NOT EXECUTED
   4ff6c:	6002           	bras 4ff70 <rtems_rate_monotonic_cancel+0x58><== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4ff6e:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4ff70:	246e fff4      	moveal %fp@(-12),%a2                        <== NOT EXECUTED
   4ff74:	266e fff8      	moveal %fp@(-8),%a3                         <== NOT EXECUTED
   4ff78:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046030 <rtems_rate_monotonic_create>: rtems_status_code rtems_rate_monotonic_create( rtems_name name, rtems_id *id ) {
   46030:	4e56 fff0      	linkw %fp,#-16                              <== NOT EXECUTED
   46034:	48d7 1c04      	moveml %d2/%a2-%a4,%sp@                     <== NOT EXECUTED
   46038:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
   4603c:	286e 000c      	moveal %fp@(12),%a4                         <== NOT EXECUTED
  Rate_monotonic_Control *the_period;                                 
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
   46040:	6700 009c      	beqw 460de <rtems_rate_monotonic_create+0xae><== NOT EXECUTED
    return RTEMS_INVALID_NAME;                                        
                                                                      
  if ( !id )                                                          
   46044:	4a8c           	tstl %a4                                    <== NOT EXECUTED
   46046:	6700 009a      	beqw 460e2 <rtems_rate_monotonic_create+0xb2><== NOT EXECUTED
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   4604a:	2039 0005 e320 	movel 5e320 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   46050:	5280           	addql #1,%d0                                <== NOT EXECUTED
   46052:	23c0 0005 e320 	movel %d0,5e320 <_Thread_Dispatch_disable_level><== NOT EXECUTED
 *  the inactive chain of free period control blocks.                 
 */                                                                   
RTEMS_INLINE_ROUTINE Rate_monotonic_Control *_Rate_monotonic_Allocate( void )
{                                                                     
  return (Rate_monotonic_Control *)                                   
    _Objects_Allocate( &_Rate_monotonic_Information );                
   46058:	4879 0005 e230 	pea 5e230 <_Rate_monotonic_Information>     <== NOT EXECUTED
   4605e:	47f9 0004 8d2a 	lea 48d2a <_Thread_Enable_dispatch>,%a3     <== NOT EXECUTED
   46064:	4eb9 0004 7d50 	jsr 47d50 <_Objects_Allocate>               <== NOT EXECUTED
                                                                      
  _Thread_Disable_dispatch();            /* to prevent deletion */    
                                                                      
  the_period = _Rate_monotonic_Allocate();                            
                                                                      
  if ( !the_period ) {                                                
   4606a:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4606c:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   4606e:	4a80           	tstl %d0                                    <== NOT EXECUTED
   46070:	6606           	bnes 46078 <rtems_rate_monotonic_create+0x48><== NOT EXECUTED
    _Thread_Enable_dispatch();                                        
   46072:	4e93           	jsr %a3@                                    <== NOT EXECUTED
    return RTEMS_TOO_MANY;                                            
   46074:	7005           	moveq #5,%d0                                <== NOT EXECUTED
   46076:	606c           	bras 460e4 <rtems_rate_monotonic_create+0xb4><== NOT EXECUTED
  }                                                                   
                                                                      
  the_period->owner = _Thread_Executing;                              
   46078:	41f9 0005 e4dc 	lea 5e4dc <_Per_CPU_Information+0xc>,%a0    <== NOT EXECUTED
   4607e:	2550 0040      	movel %a0@,%a2@(64)                         <== NOT EXECUTED
  the_period->state = RATE_MONOTONIC_INACTIVE;                        
   46082:	42aa 0038      	clrl %a2@(56)                               <== NOT EXECUTED
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   46086:	42aa 0018      	clrl %a2@(24)                               <== NOT EXECUTED
  the_watchdog->routine   = routine;                                  
   4608a:	42aa 002c      	clrl %a2@(44)                               <== NOT EXECUTED
  the_watchdog->id        = id;                                       
   4608e:	42aa 0030      	clrl %a2@(48)                               <== NOT EXECUTED
  the_watchdog->user_data = user_data;                                
   46092:	42aa 0034      	clrl %a2@(52)                               <== NOT EXECUTED
                                                                      
  _Watchdog_Initialize( &the_period->Timer, NULL, 0, NULL );          
                                                                      
  _Rate_monotonic_Reset_statistics( the_period );                     
   46096:	4878 0038      	pea 38 <DBL_MANT_DIG+0x3>                   <== NOT EXECUTED
   4609a:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4609c:	486a 0054      	pea %a2@(84)                                <== NOT EXECUTED
   460a0:	4eb9 0004 db4c 	jsr 4db4c <memset>                          <== NOT EXECUTED
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   460a6:	2079 0005 e248 	moveal 5e248 <_Rate_monotonic_Information+0x18>,%a0<== NOT EXECUTED
   460ac:	203c 7fff ffff 	movel #2147483647,%d0                       <== NOT EXECUTED
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   460b2:	4281           	clrl %d1                                    <== NOT EXECUTED
   460b4:	2540 005c      	movel %d0,%a2@(92)                          <== NOT EXECUTED
   460b8:	2540 0060      	movel %d0,%a2@(96)                          <== NOT EXECUTED
   460bc:	2540 0074      	movel %d0,%a2@(116)                         <== NOT EXECUTED
   460c0:	2540 0078      	movel %d0,%a2@(120)                         <== NOT EXECUTED
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
   460c4:	202a 0008      	movel %a2@(8),%d0                           <== NOT EXECUTED
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   460c8:	3200           	movew %d0,%d1                               <== NOT EXECUTED
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   460ca:	218a 1c00      	movel %a2,%a0@(00000000,%d1:l:4)            <== NOT EXECUTED
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
    the_object                                                        
  );                                                                  
                                                                      
  the_object->name = name;                                            
   460ce:	2542 000c      	movel %d2,%a2@(12)                          <== NOT EXECUTED
    &_Rate_monotonic_Information,                                     
    &the_period->Object,                                              
    (Objects_Name) name                                               
  );                                                                  
                                                                      
  *id = the_period->Object.id;                                        
   460d2:	2880           	movel %d0,%a4@                              <== NOT EXECUTED
  _Thread_Enable_dispatch();                                          
   460d4:	4e93           	jsr %a3@                                    <== NOT EXECUTED
  return RTEMS_SUCCESSFUL;                                            
   460d6:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   460da:	4280           	clrl %d0                                    <== NOT EXECUTED
   460dc:	6006           	bras 460e4 <rtems_rate_monotonic_create+0xb4><== NOT EXECUTED
)                                                                     
{                                                                     
  Rate_monotonic_Control *the_period;                                 
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
    return RTEMS_INVALID_NAME;                                        
   460de:	7003           	moveq #3,%d0                                <== NOT EXECUTED
   460e0:	6002           	bras 460e4 <rtems_rate_monotonic_create+0xb4><== NOT EXECUTED
                                                                      
  if ( !id )                                                          
    return RTEMS_INVALID_ADDRESS;                                     
   460e2:	7009           	moveq #9,%d0                                <== NOT EXECUTED
  );                                                                  
                                                                      
  *id = the_period->Object.id;                                        
  _Thread_Enable_dispatch();                                          
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   460e4:	4cee 1c04 fff0 	moveml %fp@(-16),%d2/%a2-%a4                <== NOT EXECUTED
   460ea:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0005003c <rtems_rate_monotonic_delete>: */ rtems_status_code rtems_rate_monotonic_delete( rtems_id id ) {
   5003c:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   50040:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Rate_monotonic_Control *)                                   
    _Objects_Get( &_Rate_monotonic_Information, id, location );       
   50042:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   50046:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   5004a:	4879 0007 4edc 	pea 74edc <_Rate_monotonic_Information>     <== NOT EXECUTED
   50050:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
  Rate_monotonic_Control *the_period;                                 
  Objects_Locations       location;                                   
                                                                      
  the_period = _Rate_monotonic_Get( id, &location );                  
  switch ( location ) {                                               
   50056:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   5005a:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   5005c:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   50060:	6638           	bnes 5009a <rtems_rate_monotonic_delete+0x5e><== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      _Objects_Close( &_Rate_monotonic_Information, &the_period->Object );
   50062:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   50064:	4879 0007 4edc 	pea 74edc <_Rate_monotonic_Information>     <== NOT EXECUTED
   5006a:	4eb9 0005 3eb0 	jsr 53eb0 <_Objects_Close>                  <== NOT EXECUTED
      (void) _Watchdog_Remove( &the_period->Timer );                  
   50070:	486a 0010      	pea %a2@(16)                                <== NOT EXECUTED
   50074:	4eb9 0005 5e40 	jsr 55e40 <_Watchdog_Remove>                <== NOT EXECUTED
      the_period->state = RATE_MONOTONIC_INACTIVE;                    
   5007a:	42aa 0038      	clrl %a2@(56)                               <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _Rate_monotonic_Free (                      
  Rate_monotonic_Control *the_period                                  
)                                                                     
{                                                                     
  _Objects_Free( &_Rate_monotonic_Information, &the_period->Object ); 
   5007e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   50080:	4879 0007 4edc 	pea 74edc <_Rate_monotonic_Information>     <== NOT EXECUTED
   50086:	4eb9 0005 4128 	jsr 54128 <_Objects_Free>                   <== NOT EXECUTED
      _Rate_monotonic_Free( the_period );                             
      _Thread_Enable_dispatch();                                      
   5008c:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   50092:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   50096:	4280           	clrl %d0                                    <== NOT EXECUTED
   50098:	6002           	bras 5009c <rtems_rate_monotonic_delete+0x60><== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   5009a:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   5009c:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   500a0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004b38c <rtems_rate_monotonic_get_statistics>: rtems_status_code rtems_rate_monotonic_get_statistics( rtems_id id, rtems_rate_monotonic_period_statistics *statistics ) {
   4b38c:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   4b390:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4b392:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
  Objects_Locations                        location;                  
  Rate_monotonic_Control                  *the_period;                
  rtems_rate_monotonic_period_statistics  *dst;                       
  Rate_monotonic_Statistics               *src;                       
                                                                      
  if ( !statistics )                                                  
   4b396:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4b398:	6700 0096      	beqw 4b430 <rtems_rate_monotonic_get_statistics+0xa4><== NOT EXECUTED
   4b39c:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4b3a0:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4b3a4:	4879 0005 e230 	pea 5e230 <_Rate_monotonic_Information>     <== NOT EXECUTED
   4b3aa:	4eb9 0004 8274 	jsr 48274 <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_period = _Rate_monotonic_Get( id, &location );                  
  switch ( location ) {                                               
   4b3b0:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4b3b4:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4b3b6:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4b3ba:	6678           	bnes 4b434 <rtems_rate_monotonic_get_statistics+0xa8><== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      dst = statistics;                                               
      src = &the_period->Statistics;                                  
      dst->count        = src->count;                                 
   4b3bc:	24a8 0054      	movel %a0@(84),%a2@                         <== NOT EXECUTED
      dst->missed_count = src->missed_count;                          
   4b3c0:	2568 0058 0004 	movel %a0@(88),%a2@(4)                      <== NOT EXECUTED
      #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                      
        _Timestamp_To_timespec( &src->min_cpu_time,   &dst->min_cpu_time );
   4b3c6:	2028 005c      	movel %a0@(92),%d0                          <== NOT EXECUTED
   4b3ca:	2228 0060      	movel %a0@(96),%d1                          <== NOT EXECUTED
   4b3ce:	2540 0008      	movel %d0,%a2@(8)                           <== NOT EXECUTED
   4b3d2:	2541 000c      	movel %d1,%a2@(12)                          <== NOT EXECUTED
        _Timestamp_To_timespec( &src->max_cpu_time,   &dst->max_cpu_time );
   4b3d6:	2028 0064      	movel %a0@(100),%d0                         <== NOT EXECUTED
   4b3da:	2228 0068      	movel %a0@(104),%d1                         <== NOT EXECUTED
   4b3de:	2540 0010      	movel %d0,%a2@(16)                          <== NOT EXECUTED
   4b3e2:	2541 0014      	movel %d1,%a2@(20)                          <== NOT EXECUTED
        _Timestamp_To_timespec( &src->total_cpu_time, &dst->total_cpu_time );
   4b3e6:	2028 006c      	movel %a0@(108),%d0                         <== NOT EXECUTED
   4b3ea:	2228 0070      	movel %a0@(112),%d1                         <== NOT EXECUTED
   4b3ee:	2540 0018      	movel %d0,%a2@(24)                          <== NOT EXECUTED
   4b3f2:	2541 001c      	movel %d1,%a2@(28)                          <== NOT EXECUTED
        _Timestamp_To_timespec( &src->min_wall_time,   &dst->min_wall_time );
   4b3f6:	2028 0074      	movel %a0@(116),%d0                         <== NOT EXECUTED
   4b3fa:	2228 0078      	movel %a0@(120),%d1                         <== NOT EXECUTED
   4b3fe:	2540 0020      	movel %d0,%a2@(32)                          <== NOT EXECUTED
   4b402:	2541 0024      	movel %d1,%a2@(36)                          <== NOT EXECUTED
        _Timestamp_To_timespec( &src->max_wall_time,   &dst->max_wall_time );
   4b406:	2028 007c      	movel %a0@(124),%d0                         <== NOT EXECUTED
   4b40a:	2228 0080      	movel %a0@(128),%d1                         <== NOT EXECUTED
   4b40e:	2540 0028      	movel %d0,%a2@(40)                          <== NOT EXECUTED
   4b412:	2541 002c      	movel %d1,%a2@(44)                          <== NOT EXECUTED
        _Timestamp_To_timespec( &src->total_wall_time, &dst->total_wall_time );
   4b416:	2028 0084      	movel %a0@(132),%d0                         <== NOT EXECUTED
   4b41a:	2228 0088      	movel %a0@(136),%d1                         <== NOT EXECUTED
   4b41e:	2540 0030      	movel %d0,%a2@(48)                          <== NOT EXECUTED
   4b422:	2541 0034      	movel %d1,%a2@(52)                          <== NOT EXECUTED
        dst->min_wall_time   = src->min_wall_time;                    
        dst->max_wall_time   = src->max_wall_time;                    
        dst->total_wall_time = src->total_wall_time;                  
      #endif                                                          
                                                                      
      _Thread_Enable_dispatch();                                      
   4b426:	4eb9 0004 8d2a 	jsr 48d2a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   4b42c:	4280           	clrl %d0                                    <== NOT EXECUTED
   4b42e:	6006           	bras 4b436 <rtems_rate_monotonic_get_statistics+0xaa><== NOT EXECUTED
  Rate_monotonic_Control                  *the_period;                
  rtems_rate_monotonic_period_statistics  *dst;                       
  Rate_monotonic_Statistics               *src;                       
                                                                      
  if ( !statistics )                                                  
    return RTEMS_INVALID_ADDRESS;                                     
   4b430:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4b432:	6002           	bras 4b436 <rtems_rate_monotonic_get_statistics+0xaa><== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4b434:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4b436:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   4b43a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004b440 <rtems_rate_monotonic_get_status>: rtems_status_code rtems_rate_monotonic_get_status( rtems_id id, rtems_rate_monotonic_period_status *status ) {
   4b440:	4e56 ffec      	linkw %fp,#-20                              <== NOT EXECUTED
   4b444:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4b446:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
  Objects_Locations              location;                            
  Rate_monotonic_Period_time_t   since_last_period;                   
  Rate_monotonic_Control        *the_period;                          
  bool                           valid_status;                        
                                                                      
  if ( !status )                                                      
   4b44a:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4b44c:	6700 0092      	beqw 4b4e0 <rtems_rate_monotonic_get_status+0xa0><== NOT EXECUTED
   4b450:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4b454:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4b458:	4879 0005 e230 	pea 5e230 <_Rate_monotonic_Information>     <== NOT EXECUTED
   4b45e:	4eb9 0004 8274 	jsr 48274 <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_period = _Rate_monotonic_Get( id, &location );                  
  switch ( location ) {                                               
   4b464:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4b468:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4b46a:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4b46e:	6674           	bnes 4b4e4 <rtems_rate_monotonic_get_status+0xa4><== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      status->owner = the_period->owner->Object.id;                   
   4b470:	2268 0040      	moveal %a0@(64),%a1                         <== NOT EXECUTED
   4b474:	24a9 0008      	movel %a1@(8),%a2@                          <== NOT EXECUTED
      status->state = the_period->state;                              
   4b478:	2028 0038      	movel %a0@(56),%d0                          <== NOT EXECUTED
   4b47c:	2540 0004      	movel %d0,%a2@(4)                           <== NOT EXECUTED
                                                                      
      /*                                                              
       *  If the period is inactive, there is no information.         
       */                                                             
      if ( status->state == RATE_MONOTONIC_INACTIVE ) {               
   4b480:	6612           	bnes 4b494 <rtems_rate_monotonic_get_status+0x54><== NOT EXECUTED
        #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                    
          _Timespec_Set_to_zero( &status->since_last_period );        
   4b482:	42aa 0008      	clrl %a2@(8)                                <== NOT EXECUTED
   4b486:	42aa 000c      	clrl %a2@(12)                               <== NOT EXECUTED
          _Timespec_Set_to_zero( &status->executed_since_last_period );
   4b48a:	42aa 0010      	clrl %a2@(16)                               <== NOT EXECUTED
   4b48e:	42aa 0014      	clrl %a2@(20)                               <== NOT EXECUTED
   4b492:	6042           	bras 4b4d6 <rtems_rate_monotonic_get_status+0x96><== NOT EXECUTED
      } else {                                                        
                                                                      
        /*                                                            
         *  Grab the current status.                                  
         */                                                           
        valid_status =                                                
   4b494:	486e fff4      	pea %fp@(-12)                               <== NOT EXECUTED
   4b498:	486e ffec      	pea %fp@(-20)                               <== NOT EXECUTED
   4b49c:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   4b49e:	4eb9 0004 611c 	jsr 4611c <_Rate_monotonic_Get_status>      <== NOT EXECUTED
          _Rate_monotonic_Get_status(                                 
            the_period, &since_last_period, &executed                 
          );                                                          
        if (!valid_status) {                                          
   4b4a4:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4b4a8:	4a00           	tstb %d0                                    <== NOT EXECUTED
   4b4aa:	660a           	bnes 4b4b6 <rtems_rate_monotonic_get_status+0x76><== NOT EXECUTED
          _Thread_Enable_dispatch();                                  
   4b4ac:	4eb9 0004 8d2a 	jsr 48d2a <_Thread_Enable_dispatch>         <== NOT EXECUTED
          return RTEMS_NOT_DEFINED;                                   
   4b4b2:	700b           	moveq #11,%d0                               <== NOT EXECUTED
   4b4b4:	6030           	bras 4b4e6 <rtems_rate_monotonic_get_status+0xa6><== NOT EXECUTED
        }                                                             
                                                                      
        #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                    
          _Timestamp_To_timespec(                                     
   4b4b6:	202e ffec      	movel %fp@(-20),%d0                         <== NOT EXECUTED
   4b4ba:	222e fff0      	movel %fp@(-16),%d1                         <== NOT EXECUTED
   4b4be:	2540 0008      	movel %d0,%a2@(8)                           <== NOT EXECUTED
   4b4c2:	2541 000c      	movel %d1,%a2@(12)                          <== NOT EXECUTED
            &since_last_period, &status->since_last_period            
          );                                                          
          _Timestamp_To_timespec(                                     
   4b4c6:	202e fff4      	movel %fp@(-12),%d0                         <== NOT EXECUTED
   4b4ca:	222e fff8      	movel %fp@(-8),%d1                          <== NOT EXECUTED
   4b4ce:	2540 0010      	movel %d0,%a2@(16)                          <== NOT EXECUTED
   4b4d2:	2541 0014      	movel %d1,%a2@(20)                          <== NOT EXECUTED
          status->since_last_period = since_last_period;              
          status->executed_since_last_period = executed;              
        #endif                                                        
      }                                                               
                                                                      
      _Thread_Enable_dispatch();                                      
   4b4d6:	4eb9 0004 8d2a 	jsr 48d2a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   4b4dc:	4280           	clrl %d0                                    <== NOT EXECUTED
   4b4de:	6006           	bras 4b4e6 <rtems_rate_monotonic_get_status+0xa6><== NOT EXECUTED
  Rate_monotonic_Period_time_t   since_last_period;                   
  Rate_monotonic_Control        *the_period;                          
  bool                           valid_status;                        
                                                                      
  if ( !status )                                                      
    return RTEMS_INVALID_ADDRESS;                                     
   4b4e0:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4b4e2:	6002           	bras 4b4e6 <rtems_rate_monotonic_get_status+0xa6><== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4b4e4:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4b4e6:	246e ffe8      	moveal %fp@(-24),%a2                        <== NOT EXECUTED
   4b4ea:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

000460f0 <rtems_rate_monotonic_ident>: rtems_status_code rtems_rate_monotonic_ident( rtems_name name, rtems_id *id ) {
   460f0:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  Objects_Name_or_id_lookup_errors  status;                           
                                                                      
  status = _Objects_Name_to_id_u32(                                   
   460f4:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   460f8:	2f3c 7fff ffff 	movel #2147483647,%sp@-                     <== NOT EXECUTED
   460fe:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   46102:	4879 0005 e230 	pea 5e230 <_Rate_monotonic_Information>     <== NOT EXECUTED
   46108:	4eb9 0004 83dc 	jsr 483dc <_Objects_Name_to_id_u32>         <== NOT EXECUTED
    OBJECTS_SEARCH_LOCAL_NODE,                                        
    id                                                                
  );                                                                  
                                                                      
  return _Status_Object_name_errors_to_status[ status ];              
}                                                                     
   4610e:	41f9 0005 bcd6 	lea 5bcd6 <_Status_Object_name_errors_to_status>,%a0<== NOT EXECUTED
   46114:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   46116:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
                                                                      

00046326 <rtems_rate_monotonic_period>: rtems_status_code rtems_rate_monotonic_period( rtems_id id, rtems_interval length ) {
   46326:	4e56 ffec      	linkw %fp,#-20                              <== NOT EXECUTED
   4632a:	48d7 041c      	moveml %d2-%d4/%a2,%sp@                     <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Rate_monotonic_Control *)                                   
    _Objects_Get( &_Rate_monotonic_Information, id, location );       
   4632e:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   46332:	262e 0008      	movel %fp@(8),%d3                           <== NOT EXECUTED
   46336:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   46338:	4879 0005 e230 	pea 5e230 <_Rate_monotonic_Information>     <== NOT EXECUTED
   4633e:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
   46342:	4eb9 0004 8274 	jsr 48274 <_Objects_Get>                    <== NOT EXECUTED
  rtems_rate_monotonic_period_states   local_state;                   
  ISR_Level                            level;                         
                                                                      
  the_period = _Rate_monotonic_Get( id, &location );                  
                                                                      
  switch ( location ) {                                               
   46348:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4634c:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   4634e:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   46352:	6600 0148      	bnew 4649c <rtems_rate_monotonic_period+0x176><== NOT EXECUTED
    case OBJECTS_LOCAL:                                               
      if ( !_Thread_Is_executing( the_period->owner ) ) {             
   46356:	2039 0005 e4dc 	movel 5e4dc <_Per_CPU_Information+0xc>,%d0  <== NOT EXECUTED
   4635c:	b0aa 0040      	cmpl %a2@(64),%d0                           <== NOT EXECUTED
   46360:	670c           	beqs 4636e <rtems_rate_monotonic_period+0x48><== NOT EXECUTED
        _Thread_Enable_dispatch();                                    
   46362:	4eb9 0004 8d2a 	jsr 48d2a <_Thread_Enable_dispatch>         <== NOT EXECUTED
        return RTEMS_NOT_OWNER_OF_RESOURCE;                           
   46368:	7417           	moveq #23,%d2                               <== NOT EXECUTED
   4636a:	6000 0132      	braw 4649e <rtems_rate_monotonic_period+0x178><== NOT EXECUTED
      }                                                               
                                                                      
      if ( length == RTEMS_PERIOD_STATUS ) {                          
   4636e:	4a82           	tstl %d2                                    <== NOT EXECUTED
   46370:	6622           	bnes 46394 <rtems_rate_monotonic_period+0x6e><== NOT EXECUTED
        switch ( the_period->state ) {                                
   46372:	202a 0038      	movel %a2@(56),%d0                          <== NOT EXECUTED
   46376:	7204           	moveq #4,%d1                                <== NOT EXECUTED
   46378:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   4637a:	650c           	bcss 46388 <rtems_rate_monotonic_period+0x62><== NOT EXECUTED
   4637c:	41f9 0005 baf6 	lea 5baf6 <CSWTCH.2>,%a0                    <== NOT EXECUTED
   46382:	2430 0c00      	movel %a0@(00000000,%d0:l:4),%d2            <== NOT EXECUTED
   46386:	6002           	bras 4638a <rtems_rate_monotonic_period+0x64><== NOT EXECUTED
   46388:	4282           	clrl %d2                                    <== NOT EXECUTED
          case RATE_MONOTONIC_ACTIVE:                                 
          default:              /* unreached -- only to remove warnings */
            return_value = RTEMS_SUCCESSFUL;                          
            break;                                                    
        }                                                             
        _Thread_Enable_dispatch();                                    
   4638a:	4eb9 0004 8d2a 	jsr 48d2a <_Thread_Enable_dispatch>         <== NOT EXECUTED
        return( return_value );                                       
   46390:	6000 010c      	braw 4649e <rtems_rate_monotonic_period+0x178><== NOT EXECUTED
      }                                                               
                                                                      
      _ISR_Disable( level );                                          
   46394:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   4639a:	40c4           	movew %sr,%d4                               <== NOT EXECUTED
   4639c:	8084           	orl %d4,%d0                                 <== NOT EXECUTED
   4639e:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
      if ( the_period->state == RATE_MONOTONIC_INACTIVE ) {           
   463a0:	202a 0038      	movel %a2@(56),%d0                          <== NOT EXECUTED
   463a4:	664a           	bnes 463f0 <rtems_rate_monotonic_period+0xca><== NOT EXECUTED
        _ISR_Enable( level );                                         
   463a6:	46c4           	movew %d4,%sr                               <== NOT EXECUTED
                                                                      
        /*                                                            
         *  Baseline statistics information for the beginning of a period.
         */                                                           
        _Rate_monotonic_Initiate_statistics( the_period );            
   463a8:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   463aa:	4eb9 0004 61ba 	jsr 461ba <_Rate_monotonic_Initiate_statistics><== NOT EXECUTED
                                                                      
        the_period->state = RATE_MONOTONIC_ACTIVE;                    
   463b0:	7002           	moveq #2,%d0                                <== NOT EXECUTED
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
  the_watchdog->routine   = routine;                                  
   463b2:	223c 0004 66e8 	movel #288488,%d1                           <== NOT EXECUTED
   463b8:	2540 0038      	movel %d0,%a2@(56)                          <== NOT EXECUTED
   463bc:	2541 002c      	movel %d1,%a2@(44)                          <== NOT EXECUTED
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   463c0:	42aa 0018      	clrl %a2@(24)                               <== NOT EXECUTED
  the_watchdog->routine   = routine;                                  
  the_watchdog->id        = id;                                       
   463c4:	2543 0030      	movel %d3,%a2@(48)                          <== NOT EXECUTED
  the_watchdog->user_data = user_data;                                
   463c8:	42aa 0034      	clrl %a2@(52)                               <== NOT EXECUTED
          _Rate_monotonic_Timeout,                                    
          id,                                                         
          NULL                                                        
        );                                                            
                                                                      
        the_period->next_length = length;                             
   463cc:	2542 003c      	movel %d2,%a2@(60)                          <== NOT EXECUTED
  Watchdog_Control      *the_watchdog,                                
  Watchdog_Interval      units                                        
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
   463d0:	2542 001c      	movel %d2,%a2@(28)                          <== NOT EXECUTED
                                                                      
  _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );           
   463d4:	486a 0010      	pea %a2@(16)                                <== NOT EXECUTED
   463d8:	4879 0005 e400 	pea 5e400 <_Watchdog_Ticks_chain>           <== NOT EXECUTED
   463de:	4eb9 0004 9b3c 	jsr 49b3c <_Watchdog_Insert>                <== NOT EXECUTED
                                                                      
        _Watchdog_Insert_ticks( &the_period->Timer, length );         
        _Thread_Enable_dispatch();                                    
   463e4:	4eb9 0004 8d2a 	jsr 48d2a <_Thread_Enable_dispatch>         <== NOT EXECUTED
        return RTEMS_SUCCESSFUL;                                      
   463ea:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   463ee:	606c           	bras 4645c <rtems_rate_monotonic_period+0x136><== NOT EXECUTED
      }                                                               
                                                                      
      if ( the_period->state == RATE_MONOTONIC_ACTIVE ) {             
   463f0:	7202           	moveq #2,%d1                                <== NOT EXECUTED
   463f2:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   463f4:	666a           	bnes 46460 <rtems_rate_monotonic_period+0x13a><== NOT EXECUTED
        /*                                                            
         *  Update statistics from the concluding period.             
         */                                                           
        _Rate_monotonic_Update_statistics( the_period );              
   463f6:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   463f8:	4eb9 0004 6232 	jsr 46232 <_Rate_monotonic_Update_statistics><== NOT EXECUTED
        /*                                                            
         *  This tells the _Rate_monotonic_Timeout that this task is  
         *  in the process of blocking on the period and that we      
         *  may be changing the length of the next period.            
         */                                                           
        the_period->state = RATE_MONOTONIC_OWNER_IS_BLOCKING;         
   463fe:	7001           	moveq #1,%d0                                <== NOT EXECUTED
        the_period->next_length = length;                             
   46400:	2542 003c      	movel %d2,%a2@(60)                          <== NOT EXECUTED
        /*                                                            
         *  This tells the _Rate_monotonic_Timeout that this task is  
         *  in the process of blocking on the period and that we      
         *  may be changing the length of the next period.            
         */                                                           
        the_period->state = RATE_MONOTONIC_OWNER_IS_BLOCKING;         
   46404:	2540 0038      	movel %d0,%a2@(56)                          <== NOT EXECUTED
        the_period->next_length = length;                             
                                                                      
        _ISR_Enable( level );                                         
   46408:	46c4           	movew %d4,%sr                               <== NOT EXECUTED
                                                                      
        _Thread_Executing->Wait.id = the_period->Object.id;           
   4640a:	2079 0005 e4dc 	moveal 5e4dc <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
   46410:	216a 0008 0020 	movel %a2@(8),%a0@(32)                      <== NOT EXECUTED
        _Thread_Set_state( _Thread_Executing, STATES_WAITING_FOR_PERIOD );
   46416:	4878 4000      	pea 4000 <D_MAX_EXP+0x3801>                 <== NOT EXECUTED
   4641a:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   4641c:	4eb9 0004 94d8 	jsr 494d8 <_Thread_Set_state>               <== NOT EXECUTED
                                                                      
        /*                                                            
         *  Did the watchdog timer expire while we were actually blocking
         *  on it?                                                    
         */                                                           
        _ISR_Disable( level );                                        
   46422:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   46428:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   4642a:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   4642c:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
          local_state = the_period->state;                            
          the_period->state = RATE_MONOTONIC_ACTIVE;                  
   4642e:	7402           	moveq #2,%d2                                <== NOT EXECUTED
        /*                                                            
         *  Did the watchdog timer expire while we were actually blocking
         *  on it?                                                    
         */                                                           
        _ISR_Disable( level );                                        
          local_state = the_period->state;                            
   46430:	202a 0038      	movel %a2@(56),%d0                          <== NOT EXECUTED
          the_period->state = RATE_MONOTONIC_ACTIVE;                  
   46434:	2542 0038      	movel %d2,%a2@(56)                          <== NOT EXECUTED
        _ISR_Enable( level );                                         
   46438:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
                                                                      
        /*                                                            
         *  If it did, then we want to unblock ourself and continue as
         *  if nothing happen.  The period was reset in the timeout routine.
         */                                                           
        if ( local_state == RATE_MONOTONIC_EXPIRED_WHILE_BLOCKING )   
   4643a:	7203           	moveq #3,%d1                                <== NOT EXECUTED
   4643c:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   46440:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   46442:	6612           	bnes 46456 <rtems_rate_monotonic_period+0x130><== NOT EXECUTED
          _Thread_Clear_state( _Thread_Executing, STATES_WAITING_FOR_PERIOD );
   46444:	4878 4000      	pea 4000 <D_MAX_EXP+0x3801>                 <== NOT EXECUTED
   46448:	2f39 0005 e4dc 	movel 5e4dc <_Per_CPU_Information+0xc>,%sp@-<== NOT EXECUTED
   4644e:	4eb9 0004 89cc 	jsr 489cc <_Thread_Clear_state>             <== NOT EXECUTED
   46454:	508f           	addql #8,%sp                                <== NOT EXECUTED
                                                                      
        _Thread_Enable_dispatch();                                    
   46456:	4eb9 0004 8d2a 	jsr 48d2a <_Thread_Enable_dispatch>         <== NOT EXECUTED
        return RTEMS_SUCCESSFUL;                                      
   4645c:	4282           	clrl %d2                                    <== NOT EXECUTED
   4645e:	603e           	bras 4649e <rtems_rate_monotonic_period+0x178><== NOT EXECUTED
      }                                                               
                                                                      
      if ( the_period->state == RATE_MONOTONIC_EXPIRED ) {            
   46460:	7204           	moveq #4,%d1                                <== NOT EXECUTED
   46462:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   46464:	6636           	bnes 4649c <rtems_rate_monotonic_period+0x176><== NOT EXECUTED
        /*                                                            
         *  Update statistics from the concluding period              
         */                                                           
        _Rate_monotonic_Update_statistics( the_period );              
   46466:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   46468:	4eb9 0004 6232 	jsr 46232 <_Rate_monotonic_Update_statistics><== NOT EXECUTED
                                                                      
        _ISR_Enable( level );                                         
   4646e:	46c4           	movew %d4,%sr                               <== NOT EXECUTED
                                                                      
        the_period->state = RATE_MONOTONIC_ACTIVE;                    
   46470:	7002           	moveq #2,%d0                                <== NOT EXECUTED
        the_period->next_length = length;                             
   46472:	2542 003c      	movel %d2,%a2@(60)                          <== NOT EXECUTED
         */                                                           
        _Rate_monotonic_Update_statistics( the_period );              
                                                                      
        _ISR_Enable( level );                                         
                                                                      
        the_period->state = RATE_MONOTONIC_ACTIVE;                    
   46476:	2540 0038      	movel %d0,%a2@(56)                          <== NOT EXECUTED
  Watchdog_Control      *the_watchdog,                                
  Watchdog_Interval      units                                        
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
   4647a:	2542 001c      	movel %d2,%a2@(28)                          <== NOT EXECUTED
                                                                      
  _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );           
   4647e:	486a 0010      	pea %a2@(16)                                <== NOT EXECUTED
        the_period->next_length = length;                             
                                                                      
        _Watchdog_Insert_ticks( &the_period->Timer, length );         
        _Thread_Enable_dispatch();                                    
        return RTEMS_TIMEOUT;                                         
   46482:	7406           	moveq #6,%d2                                <== NOT EXECUTED
   46484:	4879 0005 e400 	pea 5e400 <_Watchdog_Ticks_chain>           <== NOT EXECUTED
   4648a:	4eb9 0004 9b3c 	jsr 49b3c <_Watchdog_Insert>                <== NOT EXECUTED
                                                                      
        the_period->state = RATE_MONOTONIC_ACTIVE;                    
        the_period->next_length = length;                             
                                                                      
        _Watchdog_Insert_ticks( &the_period->Timer, length );         
        _Thread_Enable_dispatch();                                    
   46490:	4eb9 0004 8d2a 	jsr 48d2a <_Thread_Enable_dispatch>         <== NOT EXECUTED
        return RTEMS_TIMEOUT;                                         
   46496:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4649a:	6002           	bras 4649e <rtems_rate_monotonic_period+0x178><== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4649c:	7404           	moveq #4,%d2                                <== NOT EXECUTED
}                                                                     
   4649e:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   464a0:	4cee 041c ffec 	moveml %fp@(-20),%d2-%d4/%a2                <== NOT EXECUTED
   464a6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00046628 <rtems_rate_monotonic_report_statistics>: void rtems_rate_monotonic_report_statistics( void ) {
   46628:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  rtems_rate_monotonic_report_statistics_with_plugin( NULL, printk_plugin );
   4662c:	4879 0004 b254 	pea 4b254 <printk_plugin>                   <== NOT EXECUTED
   46632:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   46634:	4eb9 0004 64ac 	jsr 464ac <rtems_rate_monotonic_report_statistics_with_plugin><== NOT EXECUTED
   4663a:	508f           	addql #8,%sp                                <== NOT EXECUTED
}                                                                     
   4663c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000464ac <rtems_rate_monotonic_report_statistics_with_plugin>: */ void rtems_rate_monotonic_report_statistics_with_plugin( void *context, rtems_printk_plugin_t print ) {
   464ac:	4e56 ff78      	linkw %fp,#-136                             <== NOT EXECUTED
   464b0:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 <== NOT EXECUTED
   464b4:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
   464b8:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
  rtems_id                               id;                          
  rtems_rate_monotonic_period_statistics the_stats;                   
  rtems_rate_monotonic_period_status     the_status;                  
  char                                   name[5];                     
                                                                      
  if ( !print )                                                       
   464bc:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   464be:	6700 015e      	beqw 4661e <rtems_rate_monotonic_report_statistics_with_plugin+0x172><== NOT EXECUTED
    return;                                                           
                                                                      
  (*print)( context, "Period information by period\n" );              
   464c2:	4879 0005 bb0a 	pea 5bb0a <CSWTCH.2+0x14>                   <== NOT EXECUTED
    #if defined(RTEMS_DEBUG)                                          
      status = rtems_rate_monotonic_get_status( id, &the_status );    
      if ( status != RTEMS_SUCCESSFUL )                               
        continue;                                                     
    #else                                                             
      (void) rtems_rate_monotonic_get_status( id, &the_status );      
   464c8:	2e0e           	movel %fp,%d7                               <== NOT EXECUTED
    #endif                                                            
                                                                      
    rtems_object_get_name( the_status.owner, sizeof(name), name );    
   464ca:	2a0e           	movel %fp,%d5                               <== NOT EXECUTED
      struct timespec  cpu_average;                                   
      struct timespec *min_cpu = &the_stats.min_cpu_time;             
      struct timespec *max_cpu = &the_stats.max_cpu_time;             
      struct timespec *total_cpu = &the_stats.total_cpu_time;         
                                                                      
      _Timespec_Divide_by_integer( total_cpu, the_stats.count, &cpu_average );
   464cc:	280e           	movel %fp,%d4                               <== NOT EXECUTED
    #if defined(RTEMS_DEBUG)                                          
      status = rtems_rate_monotonic_get_status( id, &the_status );    
      if ( status != RTEMS_SUCCESSFUL )                               
        continue;                                                     
    #else                                                             
      (void) rtems_rate_monotonic_get_status( id, &the_status );      
   464ce:	0687 ffff ffda 	addil #-38,%d7                              <== NOT EXECUTED
   464d4:	4bf9 0004 b440 	lea 4b440 <rtems_rate_monotonic_get_status>,%a5<== NOT EXECUTED
    #endif                                                            
                                                                      
    rtems_object_get_name( the_status.owner, sizeof(name), name );    
   464da:	5b85           	subql #5,%d5                                <== NOT EXECUTED
   464dc:	49f9 0004 67ac 	lea 467ac <rtems_object_get_name>,%a4       <== NOT EXECUTED
      struct timespec  cpu_average;                                   
      struct timespec *min_cpu = &the_stats.min_cpu_time;             
      struct timespec *max_cpu = &the_stats.max_cpu_time;             
      struct timespec *total_cpu = &the_stats.total_cpu_time;         
                                                                      
      _Timespec_Divide_by_integer( total_cpu, the_stats.count, &cpu_average );
   464e2:	0684 ffff fff2 	addil #-14,%d4                              <== NOT EXECUTED
   464e8:	47f9 0004 9798 	lea 49798 <_Timespec_Divide_by_integer>,%a3 <== NOT EXECUTED
  char                                   name[5];                     
                                                                      
  if ( !print )                                                       
    return;                                                           
                                                                      
  (*print)( context, "Period information by period\n" );              
   464ee:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   464f0:	4e92           	jsr %a2@                                    <== NOT EXECUTED
  #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                          
    (*print)( context, "--- CPU times are in seconds ---\n" );        
   464f2:	4879 0005 bb28 	pea 5bb28 <CSWTCH.2+0x32>                   <== NOT EXECUTED
   464f8:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   464fa:	4e92           	jsr %a2@                                    <== NOT EXECUTED
    (*print)( context, "--- Wall times are in seconds ---\n" );       
   464fc:	4879 0005 bb4a 	pea 5bb4a <CSWTCH.2+0x54>                   <== NOT EXECUTED
   46502:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   46504:	4e92           	jsr %a2@                                    <== NOT EXECUTED
  Be sure to test the various cases.                                  
  (*print)( context,"\                                                
1234567890123456789012345678901234567890123456789012345678901234567890123456789\
\n");                                                                 
*/                                                                    
  (*print)( context, "   ID     OWNER COUNT MISSED     "              
   46506:	4879 0005 bb6d 	pea 5bb6d <CSWTCH.2+0x77>                   <== NOT EXECUTED
   4650c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4650e:	4e92           	jsr %a2@                                    <== NOT EXECUTED
       #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                     
          "          "                                                
       #endif                                                         
          "   WALL TIME\n"                                            
  );                                                                  
  (*print)( context, "                               "                
   46510:	4fef 001c      	lea %sp@(28),%sp                            <== NOT EXECUTED
   46514:	2ebc 0005 bbb8 	movel #375736,%sp@                          <== NOT EXECUTED
   4651a:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4651c:	4e92           	jsr %a2@                                    <== NOT EXECUTED
                                                                      
  /*                                                                  
   * Cycle through all possible ids and try to report on each one.  If it
   * is a period that is inactive, we just get an error back.  No big deal.
   */                                                                 
  for ( id=_Rate_monotonic_Information.minimum_id ;                   
   4651e:	2639 0005 e236 	movel 5e236 <_Rate_monotonic_Information+0x6>,%d3<== NOT EXECUTED
   46524:	508f           	addql #8,%sp                                <== NOT EXECUTED
   46526:	6000 00ec      	braw 46614 <rtems_rate_monotonic_report_statistics_with_plugin+0x168><== NOT EXECUTED
        id <= _Rate_monotonic_Information.maximum_id ;                
        id++ ) {                                                      
    status = rtems_rate_monotonic_get_statistics( id, &the_stats );   
   4652a:	486e ffa2      	pea %fp@(-94)                               <== NOT EXECUTED
   4652e:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   46530:	4eb9 0004 b38c 	jsr 4b38c <rtems_rate_monotonic_get_statistics><== NOT EXECUTED
    if ( status != RTEMS_SUCCESSFUL )                                 
   46536:	508f           	addql #8,%sp                                <== NOT EXECUTED
   46538:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4653a:	6600 00d6      	bnew 46612 <rtems_rate_monotonic_report_statistics_with_plugin+0x166><== NOT EXECUTED
    #if defined(RTEMS_DEBUG)                                          
      status = rtems_rate_monotonic_get_status( id, &the_status );    
      if ( status != RTEMS_SUCCESSFUL )                               
        continue;                                                     
    #else                                                             
      (void) rtems_rate_monotonic_get_status( id, &the_status );      
   4653e:	2f07           	movel %d7,%sp@-                             <== NOT EXECUTED
   46540:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   46542:	4e95           	jsr %a5@                                    <== NOT EXECUTED
    #endif                                                            
                                                                      
    rtems_object_get_name( the_status.owner, sizeof(name), name );    
   46544:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   46546:	4878 0005      	pea 5 <COMPARE>                             <== NOT EXECUTED
   4654a:	2f2e ffda      	movel %fp@(-38),%sp@-                       <== NOT EXECUTED
   4654e:	4e94           	jsr %a4@                                    <== NOT EXECUTED
                                                                      
    /*                                                                
     *  Print part of report line that is not dependent on granularity
     */                                                               
    (*print)( context,                                                
   46550:	2f2e ffa6      	movel %fp@(-90),%sp@-                       <== NOT EXECUTED
   46554:	2f2e ffa2      	movel %fp@(-94),%sp@-                       <== NOT EXECUTED
   46558:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   4655a:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4655c:	4879 0005 bc04 	pea 5bc04 <CSWTCH.2+0x10e>                  <== NOT EXECUTED
   46562:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   46564:	4e92           	jsr %a2@                                    <== NOT EXECUTED
    );                                                                
                                                                      
    /*                                                                
     *  If the count is zero, don't print statistics                  
     */                                                               
    if (the_stats.count == 0) {                                       
   46566:	202e ffa2      	movel %fp@(-94),%d0                         <== NOT EXECUTED
   4656a:	4fef 002c      	lea %sp@(44),%sp                            <== NOT EXECUTED
   4656e:	6610           	bnes 46580 <rtems_rate_monotonic_report_statistics_with_plugin+0xd4><== NOT EXECUTED
      (*print)( context, "\n" );                                      
   46570:	4879 0005 ba2e 	pea 5ba2e <rtems_status_assoc+0x19e>        <== NOT EXECUTED
   46576:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   46578:	4e92           	jsr %a2@                                    <== NOT EXECUTED
      continue;                                                       
   4657a:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4657c:	6000 0094      	braw 46612 <rtems_rate_monotonic_report_statistics_with_plugin+0x166><== NOT EXECUTED
      struct timespec  cpu_average;                                   
      struct timespec *min_cpu = &the_stats.min_cpu_time;             
      struct timespec *max_cpu = &the_stats.max_cpu_time;             
      struct timespec *total_cpu = &the_stats.total_cpu_time;         
                                                                      
      _Timespec_Divide_by_integer( total_cpu, the_stats.count, &cpu_average );
   46580:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   46582:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   46584:	486e ffba      	pea %fp@(-70)                               <== NOT EXECUTED
   46588:	4e93           	jsr %a3@                                    <== NOT EXECUTED
      (*print)( context,                                              
   4658a:	202e fff6      	movel %fp@(-10),%d0                         <== NOT EXECUTED
   4658e:	223c 0000 03e8 	movel #1000,%d1                             <== NOT EXECUTED
   46594:	4c41 0800      	remsl %d1,%d0,%d0                           <== NOT EXECUTED
   46598:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4659a:	202e ffb6      	movel %fp@(-74),%d0                         <== NOT EXECUTED
   4659e:	2f2e fff2      	movel %fp@(-14),%sp@-                       <== NOT EXECUTED
   465a2:	4c41 0800      	remsl %d1,%d0,%d0                           <== NOT EXECUTED
   465a6:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   465a8:	202e ffae      	movel %fp@(-82),%d0                         <== NOT EXECUTED
   465ac:	2f2e ffb2      	movel %fp@(-78),%sp@-                       <== NOT EXECUTED
   465b0:	4c41 0800      	remsl %d1,%d0,%d0                           <== NOT EXECUTED
   465b4:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   465b6:	2f2e ffaa      	movel %fp@(-86),%sp@-                       <== NOT EXECUTED
   465ba:	4879 0005 bc1b 	pea 5bc1b <CSWTCH.2+0x125>                  <== NOT EXECUTED
   465c0:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   465c2:	4e92           	jsr %a2@                                    <== NOT EXECUTED
      struct timespec  wall_average;                                  
      struct timespec *min_wall = &the_stats.min_wall_time;           
      struct timespec *max_wall = &the_stats.max_wall_time;           
      struct timespec *total_wall = &the_stats.total_wall_time;       
                                                                      
      _Timespec_Divide_by_integer(total_wall, the_stats.count, &wall_average);
   465c4:	4fef 0028      	lea %sp@(40),%sp                            <== NOT EXECUTED
   465c8:	2e84           	movel %d4,%sp@                              <== NOT EXECUTED
   465ca:	2f2e ffa2      	movel %fp@(-94),%sp@-                       <== NOT EXECUTED
   465ce:	486e ffd2      	pea %fp@(-46)                               <== NOT EXECUTED
   465d2:	4e93           	jsr %a3@                                    <== NOT EXECUTED
      (*print)( context,                                              
   465d4:	202e fff6      	movel %fp@(-10),%d0                         <== NOT EXECUTED
   465d8:	223c 0000 03e8 	movel #1000,%d1                             <== NOT EXECUTED
   465de:	4c41 0800      	remsl %d1,%d0,%d0                           <== NOT EXECUTED
   465e2:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   465e4:	202e ffce      	movel %fp@(-50),%d0                         <== NOT EXECUTED
   465e8:	2f2e fff2      	movel %fp@(-14),%sp@-                       <== NOT EXECUTED
   465ec:	4c41 0800      	remsl %d1,%d0,%d0                           <== NOT EXECUTED
   465f0:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   465f2:	202e ffc6      	movel %fp@(-58),%d0                         <== NOT EXECUTED
   465f6:	2f2e ffca      	movel %fp@(-54),%sp@-                       <== NOT EXECUTED
   465fa:	4c41 0800      	remsl %d1,%d0,%d0                           <== NOT EXECUTED
   465fe:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   46600:	2f2e ffc2      	movel %fp@(-62),%sp@-                       <== NOT EXECUTED
   46604:	4879 0005 bc3a 	pea 5bc3a <CSWTCH.2+0x144>                  <== NOT EXECUTED
   4660a:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4660c:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   4660e:	4fef 002c      	lea %sp@(44),%sp                            <== NOT EXECUTED
   * Cycle through all possible ids and try to report on each one.  If it
   * is a period that is inactive, we just get an error back.  No big deal.
   */                                                                 
  for ( id=_Rate_monotonic_Information.minimum_id ;                   
        id <= _Rate_monotonic_Information.maximum_id ;                
        id++ ) {                                                      
   46612:	5283           	addql #1,%d3                                <== NOT EXECUTED
                                                                      
  /*                                                                  
   * Cycle through all possible ids and try to report on each one.  If it
   * is a period that is inactive, we just get an error back.  No big deal.
   */                                                                 
  for ( id=_Rate_monotonic_Information.minimum_id ;                   
   46614:	b6b9 0005 e23a 	cmpl 5e23a <_Rate_monotonic_Information+0xa>,%d3<== NOT EXECUTED
   4661a:	6300 ff0e      	blsw 4652a <rtems_rate_monotonic_report_statistics_with_plugin+0x7e><== NOT EXECUTED
        the_stats.min_wall_time, the_stats.max_wall_time, ival_wall, fval_wall
      );                                                              
    #endif                                                            
    }                                                                 
  }                                                                   
}                                                                     
   4661e:	4cee 3cfc ff78 	moveml %fp@(-136),%d2-%d7/%a2-%a5           <== NOT EXECUTED
   46624:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046640 <rtems_rate_monotonic_reset_all_statistics>: /* * rtems_rate_monotonic_reset_all_statistics */ void rtems_rate_monotonic_reset_all_statistics( void ) {
   46640:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   46644:	2039 0005 e320 	movel 5e320 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   4664a:	5280           	addql #1,%d0                                <== NOT EXECUTED
   4664c:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4664e:	23c0 0005 e320 	movel %d0,5e320 <_Thread_Dispatch_disable_level><== NOT EXECUTED
   46654:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
                                                                      
    /*                                                                
     * Cycle through all possible ids and try to reset each one.  If it
     * is a period that is inactive, we just get an error back.  No big deal.
     */                                                               
    for ( id=_Rate_monotonic_Information.minimum_id ;                 
   46656:	2439 0005 e236 	movel 5e236 <_Rate_monotonic_Information+0x6>,%d2<== NOT EXECUTED
          id <= _Rate_monotonic_Information.maximum_id ;              
          id++ ) {                                                    
      (void) rtems_rate_monotonic_reset_statistics( id );             
   4665c:	45f9 0004 6684 	lea 46684 <rtems_rate_monotonic_reset_statistics>,%a2<== NOT EXECUTED
                                                                      
    /*                                                                
     * Cycle through all possible ids and try to reset each one.  If it
     * is a period that is inactive, we just get an error back.  No big deal.
     */                                                               
    for ( id=_Rate_monotonic_Information.minimum_id ;                 
   46662:	6008           	bras 4666c <rtems_rate_monotonic_reset_all_statistics+0x2c><== NOT EXECUTED
          id <= _Rate_monotonic_Information.maximum_id ;              
          id++ ) {                                                    
      (void) rtems_rate_monotonic_reset_statistics( id );             
   46664:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
     * Cycle through all possible ids and try to reset each one.  If it
     * is a period that is inactive, we just get an error back.  No big deal.
     */                                                               
    for ( id=_Rate_monotonic_Information.minimum_id ;                 
          id <= _Rate_monotonic_Information.maximum_id ;              
          id++ ) {                                                    
   46666:	5282           	addql #1,%d2                                <== NOT EXECUTED
      (void) rtems_rate_monotonic_reset_statistics( id );             
   46668:	4e92           	jsr %a2@                                    <== NOT EXECUTED
     * Cycle through all possible ids and try to reset each one.  If it
     * is a period that is inactive, we just get an error back.  No big deal.
     */                                                               
    for ( id=_Rate_monotonic_Information.minimum_id ;                 
          id <= _Rate_monotonic_Information.maximum_id ;              
          id++ ) {                                                    
   4666a:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
    /*                                                                
     * Cycle through all possible ids and try to reset each one.  If it
     * is a period that is inactive, we just get an error back.  No big deal.
     */                                                               
    for ( id=_Rate_monotonic_Information.minimum_id ;                 
   4666c:	b4b9 0005 e23a 	cmpl 5e23a <_Rate_monotonic_Information+0xa>,%d2<== NOT EXECUTED
   46672:	63f0           	blss 46664 <rtems_rate_monotonic_reset_all_statistics+0x24><== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Done so exit thread dispatching disabled critical section.      
   */                                                                 
  _Thread_Enable_dispatch();                                          
}                                                                     
   46674:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   46678:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   4667c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
    }                                                                 
                                                                      
  /*                                                                  
   *  Done so exit thread dispatching disabled critical section.      
   */                                                                 
  _Thread_Enable_dispatch();                                          
   4667e:	4ef9 0004 8d2a 	jmp 48d2a <_Thread_Enable_dispatch>         <== NOT EXECUTED
                                                                      

00046684 <rtems_rate_monotonic_reset_statistics>: */ rtems_status_code rtems_rate_monotonic_reset_statistics( rtems_id id ) {
   46684:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   46688:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4668a:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4668e:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   46692:	4879 0005 e230 	pea 5e230 <_Rate_monotonic_Information>     <== NOT EXECUTED
   46698:	4eb9 0004 8274 	jsr 48274 <_Objects_Get>                    <== NOT EXECUTED
  Objects_Locations              location;                            
  Rate_monotonic_Control        *the_period;                          
                                                                      
  the_period = _Rate_monotonic_Get( id, &location );                  
  switch ( location ) {                                               
   4669e:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   466a2:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   466a4:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   466a8:	6634           	bnes 466de <rtems_rate_monotonic_reset_statistics+0x5a><== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      _Rate_monotonic_Reset_statistics( the_period );                 
   466aa:	4878 0038      	pea 38 <DBL_MANT_DIG+0x3>                   <== NOT EXECUTED
   466ae:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   466b0:	486a 0054      	pea %a2@(84)                                <== NOT EXECUTED
   466b4:	4eb9 0004 db4c 	jsr 4db4c <memset>                          <== NOT EXECUTED
   466ba:	203c 7fff ffff 	movel #2147483647,%d0                       <== NOT EXECUTED
   466c0:	2540 005c      	movel %d0,%a2@(92)                          <== NOT EXECUTED
   466c4:	2540 0060      	movel %d0,%a2@(96)                          <== NOT EXECUTED
   466c8:	2540 0074      	movel %d0,%a2@(116)                         <== NOT EXECUTED
   466cc:	2540 0078      	movel %d0,%a2@(120)                         <== NOT EXECUTED
      _Thread_Enable_dispatch();                                      
   466d0:	4eb9 0004 8d2a 	jsr 48d2a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   466d6:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   466da:	4280           	clrl %d0                                    <== NOT EXECUTED
   466dc:	6002           	bras 466e0 <rtems_rate_monotonic_reset_statistics+0x5c><== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   466de:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   466e0:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   466e4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00050688 <rtems_region_create>: uintptr_t length, uintptr_t page_size, rtems_attribute attribute_set, rtems_id *id ) {
   50688:	4e56 ffe4      	linkw %fp,#-28                              <== NOT EXECUTED
   5068c:	48d7 0c7c      	moveml %d2-%d6/%a2-%a3,%sp@                 <== NOT EXECUTED
   50690:	262e 0008      	movel %fp@(8),%d3                           <== NOT EXECUTED
   50694:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
   50698:	2c2e 0010      	movel %fp@(16),%d6                          <== NOT EXECUTED
   5069c:	2a2e 0014      	movel %fp@(20),%d5                          <== NOT EXECUTED
   506a0:	282e 0018      	movel %fp@(24),%d4                          <== NOT EXECUTED
   506a4:	266e 001c      	moveal %fp@(28),%a3                         <== NOT EXECUTED
  rtems_status_code  return_status;                                   
  Region_Control    *the_region;                                      
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
   506a8:	4a83           	tstl %d3                                    <== NOT EXECUTED
   506aa:	6700 00be      	beqw 5076a <rtems_region_create+0xe2>       <== NOT EXECUTED
    return RTEMS_INVALID_NAME;                                        
                                                                      
  if ( !starting_address )                                            
   506ae:	4a82           	tstl %d2                                    <== NOT EXECUTED
   506b0:	6700 00bc      	beqw 5076e <rtems_region_create+0xe6>       <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !id )                                                          
   506b4:	4a8b           	tstl %a3                                    <== NOT EXECUTED
   506b6:	6700 00b6      	beqw 5076e <rtems_region_create+0xe6>       <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  _RTEMS_Lock_allocator();                      /* to prevent deletion */
   506ba:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   506c0:	4eb9 0005 2958 	jsr 52958 <_API_Mutex_Lock>                 <== NOT EXECUTED
 *  This function allocates a region control block from               
 *  the inactive chain of free region control blocks.                 
 */                                                                   
RTEMS_INLINE_ROUTINE Region_Control *_Region_Allocate( void )         
{                                                                     
  return (Region_Control *) _Objects_Allocate( &_Region_Information );
   506c6:	4879 0007 4f14 	pea 74f14 <_Region_Information>             <== NOT EXECUTED
   506cc:	4eb9 0005 3e34 	jsr 53e34 <_Objects_Allocate>               <== NOT EXECUTED
                                                                      
    the_region = _Region_Allocate();                                  
                                                                      
    if ( !the_region )                                                
   506d2:	508f           	addql #8,%sp                                <== NOT EXECUTED
   506d4:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   506d6:	4a80           	tstl %d0                                    <== NOT EXECUTED
   506d8:	677e           	beqs 50758 <rtems_region_create+0xd0>       <== NOT EXECUTED
      return_status = RTEMS_TOO_MANY;                                 
                                                                      
    else {                                                            
                                                                      
      the_region->maximum_segment_size = _Heap_Initialize(            
   506da:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   506dc:	2f06           	movel %d6,%sp@-                             <== NOT EXECUTED
   506de:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   506e0:	486a 0068      	pea %a2@(104)                               <== NOT EXECUTED
   506e4:	4eb9 0005 3a40 	jsr 53a40 <_Heap_Initialize>                <== NOT EXECUTED
        &the_region->Memory, starting_address, length, page_size      
      );                                                              
                                                                      
      if ( !the_region->maximum_segment_size ) {                      
   506ea:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
    if ( !the_region )                                                
      return_status = RTEMS_TOO_MANY;                                 
                                                                      
    else {                                                            
                                                                      
      the_region->maximum_segment_size = _Heap_Initialize(            
   506ee:	2540 005c      	movel %d0,%a2@(92)                          <== NOT EXECUTED
        &the_region->Memory, starting_address, length, page_size      
      );                                                              
                                                                      
      if ( !the_region->maximum_segment_size ) {                      
   506f2:	6614           	bnes 50708 <rtems_region_create+0x80>       <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _Region_Free (                              
  Region_Control *the_region                                          
)                                                                     
{                                                                     
  _Objects_Free( &_Region_Information, &the_region->Object );         
   506f4:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   506f6:	4879 0007 4f14 	pea 74f14 <_Region_Information>             <== NOT EXECUTED
        _Region_Free( the_region );                                   
        return_status = RTEMS_INVALID_SIZE;                           
   506fc:	7408           	moveq #8,%d2                                <== NOT EXECUTED
   506fe:	4eb9 0005 4128 	jsr 54128 <_Objects_Free>                   <== NOT EXECUTED
   50704:	508f           	addql #8,%sp                                <== NOT EXECUTED
   50706:	6052           	bras 5075a <rtems_region_create+0xd2>       <== NOT EXECUTED
      }                                                               
                                                                      
      else {                                                          
                                                                      
        the_region->starting_address      = starting_address;         
   50708:	2542 0050      	movel %d2,%a2@(80)                          <== NOT EXECUTED
          &the_region->Object,                                        
          (Objects_Name) name                                         
        );                                                            
                                                                      
        *id = the_region->Object.id;                                  
        return_status = RTEMS_SUCCESSFUL;                             
   5070c:	4282           	clrl %d2                                    <== NOT EXECUTED
      }                                                               
                                                                      
      else {                                                          
                                                                      
        the_region->starting_address      = starting_address;         
        the_region->length                = length;                   
   5070e:	2546 0054      	movel %d6,%a2@(84)                          <== NOT EXECUTED
        the_region->page_size             = page_size;                
        the_region->attribute_set         = attribute_set;            
        the_region->number_of_used_blocks = 0;                        
                                                                      
        _Thread_queue_Initialize(                                     
   50712:	44c4           	movew %d4,%ccr                              <== NOT EXECUTED
   50714:	57c0           	seq %d0                                     <== NOT EXECUTED
                                                                      
      else {                                                          
                                                                      
        the_region->starting_address      = starting_address;         
        the_region->length                = length;                   
        the_region->page_size             = page_size;                
   50716:	2545 0058      	movel %d5,%a2@(88)                          <== NOT EXECUTED
        the_region->attribute_set         = attribute_set;            
        the_region->number_of_used_blocks = 0;                        
                                                                      
        _Thread_queue_Initialize(                                     
   5071a:	49c0           	extbl %d0                                   <== NOT EXECUTED
   5071c:	4480           	negl %d0                                    <== NOT EXECUTED
      else {                                                          
                                                                      
        the_region->starting_address      = starting_address;         
        the_region->length                = length;                   
        the_region->page_size             = page_size;                
        the_region->attribute_set         = attribute_set;            
   5071e:	2544 0060      	movel %d4,%a2@(96)                          <== NOT EXECUTED
        the_region->number_of_used_blocks = 0;                        
   50722:	42aa 0064      	clrl %a2@(100)                              <== NOT EXECUTED
                                                                      
        _Thread_queue_Initialize(                                     
   50726:	4878 0006      	pea 6 <EXTENDSFDF>                          <== NOT EXECUTED
   5072a:	4878 0040      	pea 40 <DBL_MANT_DIG+0xb>                   <== NOT EXECUTED
   5072e:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   50730:	486a 0010      	pea %a2@(16)                                <== NOT EXECUTED
   50734:	4eb9 0005 53f8 	jsr 553f8 <_Thread_queue_Initialize>        <== NOT EXECUTED
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
   5073a:	202a 0008      	movel %a2@(8),%d0                           <== NOT EXECUTED
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   5073e:	4281           	clrl %d1                                    <== NOT EXECUTED
          &_Region_Information,                                       
          &the_region->Object,                                        
          (Objects_Name) name                                         
        );                                                            
                                                                      
        *id = the_region->Object.id;                                  
   50740:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   50744:	2079 0007 4f2c 	moveal 74f2c <_Region_Information+0x18>,%a0 <== NOT EXECUTED
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   5074a:	3200           	movew %d0,%d1                               <== NOT EXECUTED
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   5074c:	218a 1c00      	movel %a2,%a0@(00000000,%d1:l:4)            <== NOT EXECUTED
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
    the_object                                                        
  );                                                                  
                                                                      
  the_object->name = name;                                            
   50750:	2543 000c      	movel %d3,%a2@(12)                          <== NOT EXECUTED
   50754:	2680           	movel %d0,%a3@                              <== NOT EXECUTED
   50756:	6002           	bras 5075a <rtems_region_create+0xd2>       <== NOT EXECUTED
  _RTEMS_Lock_allocator();                      /* to prevent deletion */
                                                                      
    the_region = _Region_Allocate();                                  
                                                                      
    if ( !the_region )                                                
      return_status = RTEMS_TOO_MANY;                                 
   50758:	7405           	moveq #5,%d2                                <== NOT EXECUTED
        *id = the_region->Object.id;                                  
        return_status = RTEMS_SUCCESSFUL;                             
      }                                                               
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   5075a:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   50760:	4eb9 0005 29b8 	jsr 529b8 <_API_Mutex_Unlock>               <== NOT EXECUTED
  return return_status;                                               
   50766:	588f           	addql #4,%sp                                <== NOT EXECUTED
   50768:	6006           	bras 50770 <rtems_region_create+0xe8>       <== NOT EXECUTED
{                                                                     
  rtems_status_code  return_status;                                   
  Region_Control    *the_region;                                      
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
    return RTEMS_INVALID_NAME;                                        
   5076a:	7403           	moveq #3,%d2                                <== NOT EXECUTED
   5076c:	6002           	bras 50770 <rtems_region_create+0xe8>       <== NOT EXECUTED
                                                                      
  if ( !starting_address )                                            
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !id )                                                          
    return RTEMS_INVALID_ADDRESS;                                     
   5076e:	7409           	moveq #9,%d2                                <== NOT EXECUTED
      }                                                               
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
  return return_status;                                               
}                                                                     
   50770:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   50772:	4cee 0c7c ffe4 	moveml %fp@(-28),%d2-%d6/%a2-%a3            <== NOT EXECUTED
   50778:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0005077c <rtems_region_delete>: */ rtems_status_code rtems_region_delete( rtems_id id ) {
   5077c:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   50780:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   50782:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  Objects_Locations   location;                                       
  rtems_status_code   return_status;                                  
  Region_Control     *the_region;                                     
                                                                      
  _RTEMS_Lock_allocator();                                            
   50784:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   5078a:	4eb9 0005 2958 	jsr 52958 <_API_Mutex_Lock>                 <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Region_Control *)                                           
    _Objects_Get_no_protection( &_Region_Information, id, location ); 
   50790:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   50794:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   50798:	4879 0007 4f14 	pea 74f14 <_Region_Information>             <== NOT EXECUTED
   5079e:	4eb9 0005 428c 	jsr 5428c <_Objects_Get_no_protection>      <== NOT EXECUTED
                                                                      
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
   507a4:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   507a8:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   507aa:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   507ae:	662a           	bnes 507da <rtems_region_delete+0x5e>       <== NOT EXECUTED
                                                                      
      case OBJECTS_LOCAL:                                             
        _Region_Debug_Walk( the_region, 5 );                          
        if ( the_region->number_of_used_blocks != 0 )                 
   507b0:	4aaa 0064      	tstl %a2@(100)                              <== NOT EXECUTED
   507b4:	6628           	bnes 507de <rtems_region_delete+0x62>       <== NOT EXECUTED
          return_status = RTEMS_RESOURCE_IN_USE;                      
        else {                                                        
          _Objects_Close( &_Region_Information, &the_region->Object );
   507b6:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   507b8:	4879 0007 4f14 	pea 74f14 <_Region_Information>             <== NOT EXECUTED
          _Region_Free( the_region );                                 
          return_status = RTEMS_SUCCESSFUL;                           
   507be:	4282           	clrl %d2                                    <== NOT EXECUTED
      case OBJECTS_LOCAL:                                             
        _Region_Debug_Walk( the_region, 5 );                          
        if ( the_region->number_of_used_blocks != 0 )                 
          return_status = RTEMS_RESOURCE_IN_USE;                      
        else {                                                        
          _Objects_Close( &_Region_Information, &the_region->Object );
   507c0:	4eb9 0005 3eb0 	jsr 53eb0 <_Objects_Close>                  <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _Region_Free (                              
  Region_Control *the_region                                          
)                                                                     
{                                                                     
  _Objects_Free( &_Region_Information, &the_region->Object );         
   507c6:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   507c8:	4879 0007 4f14 	pea 74f14 <_Region_Information>             <== NOT EXECUTED
   507ce:	4eb9 0005 4128 	jsr 54128 <_Objects_Free>                   <== NOT EXECUTED
   507d4:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   507d8:	6006           	bras 507e0 <rtems_region_delete+0x64>       <== NOT EXECUTED
        break;                                                        
#endif                                                                
                                                                      
      case OBJECTS_ERROR:                                             
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
   507da:	7404           	moveq #4,%d2                                <== NOT EXECUTED
   507dc:	6002           	bras 507e0 <rtems_region_delete+0x64>       <== NOT EXECUTED
    switch ( location ) {                                             
                                                                      
      case OBJECTS_LOCAL:                                             
        _Region_Debug_Walk( the_region, 5 );                          
        if ( the_region->number_of_used_blocks != 0 )                 
          return_status = RTEMS_RESOURCE_IN_USE;                      
   507de:	740c           	moveq #12,%d2                               <== NOT EXECUTED
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   507e0:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   507e6:	4eb9 0005 29b8 	jsr 529b8 <_API_Mutex_Unlock>               <== NOT EXECUTED
  return return_status;                                               
}                                                                     
   507ec:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   507f0:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   507f2:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   507f6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

000507fc <rtems_region_extend>: rtems_status_code rtems_region_extend( rtems_id id, void *starting_address, uintptr_t length ) {
   507fc:	4e56 fff8      	linkw %fp,#-8                               <== NOT EXECUTED
   50800:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   50802:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   50804:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
  bool                extend_ok;                                      
  Objects_Locations   location;                                       
  rtems_status_code   return_status;                                  
  Region_Control     *the_region;                                     
                                                                      
  if ( !starting_address )                                            
   50808:	676e           	beqs 50878 <rtems_region_extend+0x7c>       <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  _RTEMS_Lock_allocator();                      /* to prevent deletion */
   5080a:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   50810:	4eb9 0005 2958 	jsr 52958 <_API_Mutex_Lock>                 <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Region_Control *)                                           
    _Objects_Get_no_protection( &_Region_Information, id, location ); 
   50816:	486e fff8      	pea %fp@(-8)                                <== NOT EXECUTED
   5081a:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   5081e:	4879 0007 4f14 	pea 74f14 <_Region_Information>             <== NOT EXECUTED
   50824:	4eb9 0005 428c 	jsr 5428c <_Objects_Get_no_protection>      <== NOT EXECUTED
                                                                      
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
   5082a:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   5082e:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   50830:	4aae fff8      	tstl %fp@(-8)                               <== NOT EXECUTED
   50834:	662c           	bnes 50862 <rtems_region_extend+0x66>       <== NOT EXECUTED
                                                                      
      case OBJECTS_LOCAL:                                             
                                                                      
        extend_ok = _Heap_Extend(                                     
   50836:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   5083a:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   5083e:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   50840:	486a 0068      	pea %a2@(104)                               <== NOT EXECUTED
   50844:	4eb9 0005 3500 	jsr 53500 <_Heap_Extend>                    <== NOT EXECUTED
          starting_address,                                           
          length,                                                     
          &amount_extended                                            
        );                                                            
                                                                      
        if ( extend_ok ) {                                            
   5084a:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   5084e:	4a00           	tstb %d0                                    <== NOT EXECUTED
   50850:	6714           	beqs 50866 <rtems_region_extend+0x6a>       <== NOT EXECUTED
          the_region->length                += amount_extended;       
   50852:	202e fffc      	movel %fp@(-4),%d0                          <== NOT EXECUTED
   50856:	d1aa 0054      	addl %d0,%a2@(84)                           <== NOT EXECUTED
          the_region->maximum_segment_size  += amount_extended;       
          return_status = RTEMS_SUCCESSFUL;                           
   5085a:	4282           	clrl %d2                                    <== NOT EXECUTED
          &amount_extended                                            
        );                                                            
                                                                      
        if ( extend_ok ) {                                            
          the_region->length                += amount_extended;       
          the_region->maximum_segment_size  += amount_extended;       
   5085c:	d1aa 005c      	addl %d0,%a2@(92)                           <== NOT EXECUTED
   50860:	6006           	bras 50868 <rtems_region_extend+0x6c>       <== NOT EXECUTED
        break;                                                        
#endif                                                                
                                                                      
      case OBJECTS_ERROR:                                             
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
   50862:	7404           	moveq #4,%d2                                <== NOT EXECUTED
   50864:	6002           	bras 50868 <rtems_region_extend+0x6c>       <== NOT EXECUTED
        if ( extend_ok ) {                                            
          the_region->length                += amount_extended;       
          the_region->maximum_segment_size  += amount_extended;       
          return_status = RTEMS_SUCCESSFUL;                           
        } else {                                                      
          return_status = RTEMS_INVALID_ADDRESS;                      
   50866:	7409           	moveq #9,%d2                                <== NOT EXECUTED
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   50868:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   5086e:	4eb9 0005 29b8 	jsr 529b8 <_API_Mutex_Unlock>               <== NOT EXECUTED
  return return_status;                                               
   50874:	588f           	addql #4,%sp                                <== NOT EXECUTED
   50876:	6002           	bras 5087a <rtems_region_extend+0x7e>       <== NOT EXECUTED
  Objects_Locations   location;                                       
  rtems_status_code   return_status;                                  
  Region_Control     *the_region;                                     
                                                                      
  if ( !starting_address )                                            
    return RTEMS_INVALID_ADDRESS;                                     
   50878:	7409           	moveq #9,%d2                                <== NOT EXECUTED
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
  return return_status;                                               
}                                                                     
   5087a:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   5087c:	242e fff0      	movel %fp@(-16),%d2                         <== NOT EXECUTED
   50880:	246e fff4      	moveal %fp@(-12),%a2                        <== NOT EXECUTED
   50884:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00050888 <rtems_region_get_free_information>: rtems_status_code rtems_region_get_free_information( rtems_id id, Heap_Information_block *the_info ) {
   50888:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   5088c:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   5088e:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
  Objects_Locations        location;                                  
  rtems_status_code        return_status;                             
  register Region_Control *the_region;                                
                                                                      
  if ( !the_info )                                                    
   50892:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   50894:	675e           	beqs 508f4 <rtems_region_get_free_information+0x6c><== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  _RTEMS_Lock_allocator();                                            
   50896:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   5089c:	4eb9 0005 2958 	jsr 52958 <_API_Mutex_Lock>                 <== NOT EXECUTED
   508a2:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   508a6:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   508aa:	4879 0007 4f14 	pea 74f14 <_Region_Information>             <== NOT EXECUTED
   508b0:	4eb9 0005 428c 	jsr 5428c <_Objects_Get_no_protection>      <== NOT EXECUTED
                                                                      
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
   508b6:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   508ba:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   508be:	6620           	bnes 508e0 <rtems_region_get_free_information+0x58><== NOT EXECUTED
                                                                      
      case OBJECTS_LOCAL:                                             
                                                                      
        the_info->Used.number   = 0;                                  
   508c0:	42aa 000c      	clrl %a2@(12)                               <== NOT EXECUTED
        the_info->Used.total    = 0;                                  
        the_info->Used.largest  = 0;                                  
                                                                      
        _Heap_Get_free_information( &the_region->Memory, &the_info->Free );
   508c4:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
    switch ( location ) {                                             
                                                                      
      case OBJECTS_LOCAL:                                             
                                                                      
        the_info->Used.number   = 0;                                  
        the_info->Used.total    = 0;                                  
   508c6:	42aa 0014      	clrl %a2@(20)                               <== NOT EXECUTED
        the_info->Used.largest  = 0;                                  
   508ca:	42aa 0010      	clrl %a2@(16)                               <== NOT EXECUTED
                                                                      
        _Heap_Get_free_information( &the_region->Memory, &the_info->Free );
   508ce:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   508d0:	4868 0068      	pea %a0@(104)                               <== NOT EXECUTED
                                                                      
        return_status = RTEMS_SUCCESSFUL;                             
   508d4:	95ca           	subal %a2,%a2                               <== NOT EXECUTED
                                                                      
        the_info->Used.number   = 0;                                  
        the_info->Used.total    = 0;                                  
        the_info->Used.largest  = 0;                                  
                                                                      
        _Heap_Get_free_information( &the_region->Memory, &the_info->Free );
   508d6:	4eb9 0005 3860 	jsr 53860 <_Heap_Get_free_information>      <== NOT EXECUTED
                                                                      
        return_status = RTEMS_SUCCESSFUL;                             
        break;                                                        
   508dc:	508f           	addql #8,%sp                                <== NOT EXECUTED
   508de:	6004           	bras 508e4 <rtems_region_get_free_information+0x5c><== NOT EXECUTED
        break;                                                        
#endif                                                                
                                                                      
      case OBJECTS_ERROR:                                             
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
   508e0:	347c 0004      	moveaw #4,%a2                               <== NOT EXECUTED
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   508e4:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   508ea:	4eb9 0005 29b8 	jsr 529b8 <_API_Mutex_Unlock>               <== NOT EXECUTED
  return return_status;                                               
   508f0:	588f           	addql #4,%sp                                <== NOT EXECUTED
   508f2:	6004           	bras 508f8 <rtems_region_get_free_information+0x70><== NOT EXECUTED
  Objects_Locations        location;                                  
  rtems_status_code        return_status;                             
  register Region_Control *the_region;                                
                                                                      
  if ( !the_info )                                                    
    return RTEMS_INVALID_ADDRESS;                                     
   508f4:	347c 0009      	moveaw #9,%a2                               <== NOT EXECUTED
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
  return return_status;                                               
}                                                                     
   508f8:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   508fa:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   508fe:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00050904 <rtems_region_get_information>: rtems_status_code rtems_region_get_information( rtems_id id, Heap_Information_block *the_info ) {
   50904:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   50908:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   5090a:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
  Objects_Locations        location;                                  
  rtems_status_code        return_status;                             
  register Region_Control *the_region;                                
                                                                      
  if ( !the_info )                                                    
   5090e:	6750           	beqs 50960 <rtems_region_get_information+0x5c><== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  _RTEMS_Lock_allocator();                                            
   50910:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   50916:	4eb9 0005 2958 	jsr 52958 <_API_Mutex_Lock>                 <== NOT EXECUTED
   5091c:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   50920:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   50924:	4879 0007 4f14 	pea 74f14 <_Region_Information>             <== NOT EXECUTED
   5092a:	4eb9 0005 428c 	jsr 5428c <_Objects_Get_no_protection>      <== NOT EXECUTED
                                                                      
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
   50930:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   50934:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   50938:	6614           	bnes 5094e <rtems_region_get_information+0x4a><== NOT EXECUTED
                                                                      
      case OBJECTS_LOCAL:                                             
        _Heap_Get_information( &the_region->Memory, the_info );       
   5093a:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   5093c:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   5093e:	4868 0068      	pea %a0@(104)                               <== NOT EXECUTED
        return_status = RTEMS_SUCCESSFUL;                             
   50942:	4282           	clrl %d2                                    <== NOT EXECUTED
                                                                      
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
                                                                      
      case OBJECTS_LOCAL:                                             
        _Heap_Get_information( &the_region->Memory, the_info );       
   50944:	4eb9 0005 38a4 	jsr 538a4 <_Heap_Get_information>           <== NOT EXECUTED
        return_status = RTEMS_SUCCESSFUL;                             
        break;                                                        
   5094a:	508f           	addql #8,%sp                                <== NOT EXECUTED
   5094c:	6002           	bras 50950 <rtems_region_get_information+0x4c><== NOT EXECUTED
        break;                                                        
#endif                                                                
                                                                      
      case OBJECTS_ERROR:                                             
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
   5094e:	7404           	moveq #4,%d2                                <== NOT EXECUTED
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   50950:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   50956:	4eb9 0005 29b8 	jsr 529b8 <_API_Mutex_Unlock>               <== NOT EXECUTED
  return return_status;                                               
   5095c:	588f           	addql #4,%sp                                <== NOT EXECUTED
   5095e:	6002           	bras 50962 <rtems_region_get_information+0x5e><== NOT EXECUTED
  Objects_Locations        location;                                  
  rtems_status_code        return_status;                             
  register Region_Control *the_region;                                
                                                                      
  if ( !the_info )                                                    
    return RTEMS_INVALID_ADDRESS;                                     
   50960:	7409           	moveq #9,%d2                                <== NOT EXECUTED
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
  return return_status;                                               
}                                                                     
   50962:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   50964:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   50968:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0005096c <rtems_region_get_segment>: uintptr_t size, rtems_option option_set, rtems_interval timeout, void **segment ) {
   5096c:	4e56 ffe8      	linkw %fp,#-24                              <== NOT EXECUTED
   50970:	48d7 1c0c      	moveml %d2-%d3/%a2-%a4,%sp@                 <== NOT EXECUTED
   50974:	262e 0008      	movel %fp@(8),%d3                           <== NOT EXECUTED
   50978:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
   5097c:	286e 0018      	moveal %fp@(24),%a4                         <== NOT EXECUTED
  Objects_Locations   location;                                       
  rtems_status_code   return_status;                                  
  Region_Control     *the_region;                                     
  void               *the_segment;                                    
                                                                      
  if ( !segment )                                                     
   50980:	4a8c           	tstl %a4                                    <== NOT EXECUTED
   50982:	6700 00e4      	beqw 50a68 <rtems_region_get_segment+0xfc>  <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  *segment = NULL;                                                    
   50986:	4294           	clrl %a4@                                   <== NOT EXECUTED
                                                                      
  if ( size == 0 )                                                    
   50988:	4a82           	tstl %d2                                    <== NOT EXECUTED
   5098a:	6700 00e0      	beqw 50a6c <rtems_region_get_segment+0x100> <== NOT EXECUTED
    return RTEMS_INVALID_SIZE;                                        
                                                                      
  _RTEMS_Lock_allocator();                                            
   5098e:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   50994:	4eb9 0005 2958 	jsr 52958 <_API_Mutex_Lock>                 <== NOT EXECUTED
   5099a:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   5099e:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   509a0:	4879 0007 4f14 	pea 74f14 <_Region_Information>             <== NOT EXECUTED
                                                                      
    executing  = _Thread_Executing;                                   
   509a6:	2679 0007 51c8 	moveal 751c8 <_Per_CPU_Information+0xc>,%a3 <== NOT EXECUTED
   509ac:	4eb9 0005 428c 	jsr 5428c <_Objects_Get_no_protection>      <== NOT EXECUTED
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
   509b2:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   509b6:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   509b8:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   509bc:	6600 0090      	bnew 50a4e <rtems_region_get_segment+0xe2>  <== NOT EXECUTED
                                                                      
      case OBJECTS_LOCAL:                                             
        if ( size > the_region->maximum_segment_size )                
   509c0:	b4aa 005c      	cmpl %a2@(92),%d2                           <== NOT EXECUTED
   509c4:	6200 008c      	bhiw 50a52 <rtems_region_get_segment+0xe6>  <== NOT EXECUTED
 * @brief See _Heap_Allocate_aligned_with_boundary() with alignment and
 * boundary equals zero.                                              
 */                                                                   
RTEMS_INLINE_ROUTINE void *_Heap_Allocate( Heap_Control *heap, uintptr_t size )
{                                                                     
  return _Heap_Allocate_aligned_with_boundary( heap, size, 0, 0 );    
   509c8:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   509ca:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   509cc:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   509ce:	486a 0068      	pea %a2@(104)                               <== NOT EXECUTED
   509d2:	4eb9 0005 3364 	jsr 53364 <_Heap_Allocate_aligned_with_boundary><== NOT EXECUTED
                                                                      
          the_segment = _Region_Allocate_segment( the_region, size ); 
                                                                      
          _Region_Debug_Walk( the_region, 2 );                        
                                                                      
          if ( the_segment ) {                                        
   509d8:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   509dc:	4a80           	tstl %d0                                    <== NOT EXECUTED
   509de:	670a           	beqs 509ea <rtems_region_get_segment+0x7e>  <== NOT EXECUTED
            the_region->number_of_used_blocks += 1;                   
   509e0:	52aa 0064      	addql #1,%a2@(100)                          <== NOT EXECUTED
            *segment = the_segment;                                   
            return_status = RTEMS_SUCCESSFUL;                         
   509e4:	4282           	clrl %d2                                    <== NOT EXECUTED
                                                                      
          _Region_Debug_Walk( the_region, 2 );                        
                                                                      
          if ( the_segment ) {                                        
            the_region->number_of_used_blocks += 1;                   
            *segment = the_segment;                                   
   509e6:	2880           	movel %d0,%a4@                              <== NOT EXECUTED
   509e8:	606e           	bras 50a58 <rtems_region_get_segment+0xec>  <== NOT EXECUTED
            return_status = RTEMS_SUCCESSFUL;                         
          } else if ( _Options_Is_no_wait( option_set ) ) {           
   509ea:	202e 0010      	movel %fp@(16),%d0                          <== NOT EXECUTED
   509ee:	0800 0000      	btst #0,%d0                                 <== NOT EXECUTED
   509f2:	6662           	bnes 50a56 <rtems_region_get_segment+0xea>  <== NOT EXECUTED
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   509f4:	2039 0007 5004 	movel 75004 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   509fa:	5280           	addql #1,%d0                                <== NOT EXECUTED
   509fc:	23c0 0007 5004 	movel %d0,75004 <_Thread_Dispatch_disable_level><== NOT EXECUTED
             *  Switch from using the memory allocation mutex to using a
             *  dispatching disabled critical section.  We have to do this
             *  because this thread is going to block.                
             */                                                       
            _Thread_Disable_dispatch();                               
            _RTEMS_Unlock_allocator();                                
   50a02:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   50a08:	4eb9 0005 29b8 	jsr 529b8 <_API_Mutex_Unlock>               <== NOT EXECUTED
                                                                      
            executing->Wait.queue           = &the_region->Wait_queue;
   50a0e:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   50a10:	0680 0000 0010 	addil #16,%d0                               <== NOT EXECUTED
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_queue_Enter_critical_section (      
  Thread_queue_Control *the_thread_queue                              
)                                                                     
{                                                                     
  the_thread_queue->sync_state = THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;
   50a16:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   50a18:	2740 0044      	movel %d0,%a3@(68)                          <== NOT EXECUTED
            executing->Wait.id              = id;                     
            executing->Wait.count           = size;                   
   50a1c:	2742 0024      	movel %d2,%a3@(36)                          <== NOT EXECUTED
             */                                                       
            _Thread_Disable_dispatch();                               
            _RTEMS_Unlock_allocator();                                
                                                                      
            executing->Wait.queue           = &the_region->Wait_queue;
            executing->Wait.id              = id;                     
   50a20:	2743 0020      	movel %d3,%a3@(32)                          <== NOT EXECUTED
            executing->Wait.count           = size;                   
            executing->Wait.return_argument = segment;                
   50a24:	274c 0028      	movel %a4,%a3@(40)                          <== NOT EXECUTED
   50a28:	2541 0040      	movel %d1,%a2@(64)                          <== NOT EXECUTED
                                                                      
            _Thread_queue_Enter_critical_section( &the_region->Wait_queue );
                                                                      
            _Thread_queue_Enqueue( &the_region->Wait_queue, timeout );
   50a2c:	4879 0005 54c8 	pea 554c8 <_Thread_queue_Timeout>           <== NOT EXECUTED
   50a32:	2f2e 0014      	movel %fp@(20),%sp@-                        <== NOT EXECUTED
   50a36:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   50a38:	4eb9 0005 51b4 	jsr 551b4 <_Thread_queue_Enqueue_with_handler><== NOT EXECUTED
                                                                      
            _Thread_Enable_dispatch();                                
   50a3e:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
                                                                      
            return (rtems_status_code) executing->Wait.return_code;   
   50a44:	242b 0034      	movel %a3@(52),%d2                          <== NOT EXECUTED
   50a48:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   50a4c:	6020           	bras 50a6e <rtems_region_get_segment+0x102> <== NOT EXECUTED
        break;                                                        
#endif                                                                
                                                                      
      case OBJECTS_ERROR:                                             
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
   50a4e:	7404           	moveq #4,%d2                                <== NOT EXECUTED
   50a50:	6006           	bras 50a58 <rtems_region_get_segment+0xec>  <== NOT EXECUTED
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
                                                                      
      case OBJECTS_LOCAL:                                             
        if ( size > the_region->maximum_segment_size )                
          return_status = RTEMS_INVALID_SIZE;                         
   50a52:	7408           	moveq #8,%d2                                <== NOT EXECUTED
   50a54:	6002           	bras 50a58 <rtems_region_get_segment+0xec>  <== NOT EXECUTED
          if ( the_segment ) {                                        
            the_region->number_of_used_blocks += 1;                   
            *segment = the_segment;                                   
            return_status = RTEMS_SUCCESSFUL;                         
          } else if ( _Options_Is_no_wait( option_set ) ) {           
            return_status = RTEMS_UNSATISFIED;                        
   50a56:	740d           	moveq #13,%d2                               <== NOT EXECUTED
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   50a58:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   50a5e:	4eb9 0005 29b8 	jsr 529b8 <_API_Mutex_Unlock>               <== NOT EXECUTED
  return return_status;                                               
   50a64:	588f           	addql #4,%sp                                <== NOT EXECUTED
   50a66:	6006           	bras 50a6e <rtems_region_get_segment+0x102> <== NOT EXECUTED
  rtems_status_code   return_status;                                  
  Region_Control     *the_region;                                     
  void               *the_segment;                                    
                                                                      
  if ( !segment )                                                     
    return RTEMS_INVALID_ADDRESS;                                     
   50a68:	7409           	moveq #9,%d2                                <== NOT EXECUTED
   50a6a:	6002           	bras 50a6e <rtems_region_get_segment+0x102> <== NOT EXECUTED
                                                                      
  *segment = NULL;                                                    
                                                                      
  if ( size == 0 )                                                    
    return RTEMS_INVALID_SIZE;                                        
   50a6c:	7408           	moveq #8,%d2                                <== NOT EXECUTED
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
  return return_status;                                               
}                                                                     
   50a6e:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   50a70:	4cee 1c0c ffe8 	moveml %fp@(-24),%d2-%d3/%a2-%a4            <== NOT EXECUTED
   50a76:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00050a7c <rtems_region_get_segment_size>: rtems_status_code rtems_region_get_segment_size( rtems_id id, void *segment, uintptr_t *size ) {
   50a7c:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   50a80:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   50a82:	262e 0010      	movel %fp@(16),%d3                          <== NOT EXECUTED
   50a86:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   50a88:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
  Objects_Locations        location;                                  
  rtems_status_code        return_status = RTEMS_SUCCESSFUL;          
  register Region_Control *the_region;                                
                                                                      
  if ( !segment )                                                     
   50a8c:	6768           	beqs 50af6 <rtems_region_get_segment_size+0x7a><== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !size )                                                        
   50a8e:	4a83           	tstl %d3                                    <== NOT EXECUTED
   50a90:	6764           	beqs 50af6 <rtems_region_get_segment_size+0x7a><== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  _RTEMS_Lock_allocator();                                            
   50a92:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   50a98:	4eb9 0005 2958 	jsr 52958 <_API_Mutex_Lock>                 <== NOT EXECUTED
   50a9e:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   50aa2:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   50aa6:	4879 0007 4f14 	pea 74f14 <_Region_Information>             <== NOT EXECUTED
   50aac:	4eb9 0005 428c 	jsr 5428c <_Objects_Get_no_protection>      <== NOT EXECUTED
                                                                      
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
   50ab2:	222e fffc      	movel %fp@(-4),%d1                          <== NOT EXECUTED
   50ab6:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   50aba:	6708           	beqs 50ac4 <rtems_region_get_segment_size+0x48><== NOT EXECUTED
   50abc:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   50abe:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   50ac0:	661a           	bnes 50adc <rtems_region_get_segment_size+0x60><== NOT EXECUTED
   50ac2:	601c           	bras 50ae0 <rtems_region_get_segment_size+0x64><== NOT EXECUTED
                                                                      
      case OBJECTS_LOCAL:                                             
        if ( !_Heap_Size_of_alloc_area( &the_region->Memory, segment, size ) )
   50ac4:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   50ac6:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   50ac8:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   50aca:	4868 0068      	pea %a0@(104)                               <== NOT EXECUTED
   50ace:	4eb9 0005 3d08 	jsr 53d08 <_Heap_Size_of_alloc_area>        <== NOT EXECUTED
   50ad4:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   50ad8:	4a00           	tstb %d0                                    <== NOT EXECUTED
   50ada:	6708           	beqs 50ae4 <rtems_region_get_segment_size+0x68><== NOT EXECUTED
  void      *segment,                                                 
  uintptr_t *size                                                     
)                                                                     
{                                                                     
  Objects_Locations        location;                                  
  rtems_status_code        return_status = RTEMS_SUCCESSFUL;          
   50adc:	4282           	clrl %d2                                    <== NOT EXECUTED
   50ade:	6006           	bras 50ae6 <rtems_region_get_segment_size+0x6a><== NOT EXECUTED
      case OBJECTS_REMOTE:        /* this error cannot be returned */ 
        break;                                                        
#endif                                                                
                                                                      
      case OBJECTS_ERROR:                                             
        return_status = RTEMS_INVALID_ID;                             
   50ae0:	7404           	moveq #4,%d2                                <== NOT EXECUTED
   50ae2:	6002           	bras 50ae6 <rtems_region_get_segment_size+0x6a><== NOT EXECUTED
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
                                                                      
      case OBJECTS_LOCAL:                                             
        if ( !_Heap_Size_of_alloc_area( &the_region->Memory, segment, size ) )
          return_status = RTEMS_INVALID_ADDRESS;                      
   50ae4:	7409           	moveq #9,%d2                                <== NOT EXECUTED
      case OBJECTS_ERROR:                                             
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   50ae6:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   50aec:	4eb9 0005 29b8 	jsr 529b8 <_API_Mutex_Unlock>               <== NOT EXECUTED
  return return_status;                                               
   50af2:	588f           	addql #4,%sp                                <== NOT EXECUTED
   50af4:	6002           	bras 50af8 <rtems_region_get_segment_size+0x7c><== NOT EXECUTED
                                                                      
  if ( !segment )                                                     
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !size )                                                        
    return RTEMS_INVALID_ADDRESS;                                     
   50af6:	7409           	moveq #9,%d2                                <== NOT EXECUTED
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
  return return_status;                                               
}                                                                     
   50af8:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   50afa:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   50afe:	262e fff8      	movel %fp@(-8),%d3                          <== NOT EXECUTED
   50b02:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00050b08 <rtems_region_ident>: rtems_status_code rtems_region_ident( rtems_name name, rtems_id *id ) {
   50b08:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  Objects_Name_or_id_lookup_errors  status;                           
                                                                      
  status = _Objects_Name_to_id_u32(                                   
   50b0c:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   50b10:	2f3c 7fff ffff 	movel #2147483647,%sp@-                     <== NOT EXECUTED
   50b16:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   50b1a:	4879 0007 4f14 	pea 74f14 <_Region_Information>             <== NOT EXECUTED
   50b20:	4eb9 0005 442c 	jsr 5442c <_Objects_Name_to_id_u32>         <== NOT EXECUTED
    OBJECTS_SEARCH_LOCAL_NODE,                                        
    id                                                                
  );                                                                  
                                                                      
  return _Status_Object_name_errors_to_status[ status ];              
}                                                                     
   50b26:	41f9 0006 e620 	lea 6e620 <_Status_Object_name_errors_to_status>,%a0<== NOT EXECUTED
   50b2c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   50b2e:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
                                                                      

00050b34 <rtems_region_resize_segment>: rtems_id id, void *segment, uintptr_t size, uintptr_t *old_size ) {
   50b34:	4e56 ffe8      	linkw %fp,#-24                              <== NOT EXECUTED
   50b38:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     <== NOT EXECUTED
   50b3c:	266e 0014      	moveal %fp@(20),%a3                         <== NOT EXECUTED
  uintptr_t                osize;                                     
  rtems_status_code        return_status;                             
  Heap_Resize_status       status;                                    
  register Region_Control *the_region;                                
                                                                      
  if ( !old_size )                                                    
   50b40:	4a8b           	tstl %a3                                    <== NOT EXECUTED
   50b42:	6700 008e      	beqw 50bd2 <rtems_region_resize_segment+0x9e><== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  _RTEMS_Lock_allocator();                                            
   50b46:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   50b4c:	4eb9 0005 2958 	jsr 52958 <_API_Mutex_Lock>                 <== NOT EXECUTED
   50b52:	486e fff8      	pea %fp@(-8)                                <== NOT EXECUTED
   50b56:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   50b5a:	4879 0007 4f14 	pea 74f14 <_Region_Information>             <== NOT EXECUTED
   50b60:	4eb9 0005 428c 	jsr 5428c <_Objects_Get_no_protection>      <== NOT EXECUTED
                                                                      
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
   50b66:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   50b6a:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   50b6c:	4aae fff8      	tstl %fp@(-8)                               <== NOT EXECUTED
   50b70:	664e           	bnes 50bc0 <rtems_region_resize_segment+0x8c><== NOT EXECUTED
                                                                      
      case OBJECTS_LOCAL:                                             
                                                                      
        _Region_Debug_Walk( the_region, 7 );                          
                                                                      
        status = _Heap_Resize_block(                                  
   50b72:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   50b76:	486e fff4      	pea %fp@(-12)                               <== NOT EXECUTED
   50b7a:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   50b7e:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   50b82:	486a 0068      	pea %a2@(104)                               <== NOT EXECUTED
   50b86:	4eb9 0005 3c30 	jsr 53c30 <_Heap_Resize_block>              <== NOT EXECUTED
          segment,                                                    
          (uint32_t) size,                                            
          &osize,                                                     
          &avail_size                                                 
        );                                                            
        *old_size = (uint32_t) osize;                                 
   50b8c:	26ae fff4      	movel %fp@(-12),%a3@                        <== NOT EXECUTED
                                                                      
      case OBJECTS_LOCAL:                                             
                                                                      
        _Region_Debug_Walk( the_region, 7 );                          
                                                                      
        status = _Heap_Resize_block(                                  
   50b90:	2400           	movel %d0,%d2                               <== NOT EXECUTED
        );                                                            
        *old_size = (uint32_t) osize;                                 
                                                                      
        _Region_Debug_Walk( the_region, 8 );                          
                                                                      
        if ( status == HEAP_RESIZE_SUCCESSFUL )                       
   50b92:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   50b96:	660e           	bnes 50ba6 <rtems_region_resize_segment+0x72><== NOT EXECUTED
          _Region_Process_queue( the_region );    /* unlocks allocator */
   50b98:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   50b9a:	4eb9 0005 75c4 	jsr 575c4 <_Region_Process_queue>           <== NOT EXECUTED
   50ba0:	588f           	addql #4,%sp                                <== NOT EXECUTED
        else                                                          
          _RTEMS_Unlock_allocator();                                  
                                                                      
                                                                      
        if (status == HEAP_RESIZE_SUCCESSFUL)                         
          return RTEMS_SUCCESSFUL;                                    
   50ba2:	4280           	clrl %d0                                    <== NOT EXECUTED
   50ba4:	602e           	bras 50bd4 <rtems_region_resize_segment+0xa0><== NOT EXECUTED
        _Region_Debug_Walk( the_region, 8 );                          
                                                                      
        if ( status == HEAP_RESIZE_SUCCESSFUL )                       
          _Region_Process_queue( the_region );    /* unlocks allocator */
        else                                                          
          _RTEMS_Unlock_allocator();                                  
   50ba6:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   50bac:	4eb9 0005 29b8 	jsr 529b8 <_API_Mutex_Unlock>               <== NOT EXECUTED
                                                                      
                                                                      
        if (status == HEAP_RESIZE_SUCCESSFUL)                         
          return RTEMS_SUCCESSFUL;                                    
        if (status == HEAP_RESIZE_UNSATISFIED)                        
   50bb2:	588f           	addql #4,%sp                                <== NOT EXECUTED
   50bb4:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   50bb6:	b082           	cmpl %d2,%d0                                <== NOT EXECUTED
   50bb8:	6618           	bnes 50bd2 <rtems_region_resize_segment+0x9e><== NOT EXECUTED
          return RTEMS_UNSATISFIED;                                   
   50bba:	103c 000d      	moveb #13,%d0                               <== NOT EXECUTED
   50bbe:	6014           	bras 50bd4 <rtems_region_resize_segment+0xa0><== NOT EXECUTED
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   50bc0:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   50bc6:	4eb9 0005 29b8 	jsr 529b8 <_API_Mutex_Unlock>               <== NOT EXECUTED
  return return_status;                                               
   50bcc:	588f           	addql #4,%sp                                <== NOT EXECUTED
   50bce:	7004           	moveq #4,%d0                                <== NOT EXECUTED
   50bd0:	6002           	bras 50bd4 <rtems_region_resize_segment+0xa0><== NOT EXECUTED
                                                                      
        if (status == HEAP_RESIZE_SUCCESSFUL)                         
          return RTEMS_SUCCESSFUL;                                    
        if (status == HEAP_RESIZE_UNSATISFIED)                        
          return RTEMS_UNSATISFIED;                                   
        return RTEMS_INVALID_ADDRESS;                                 
   50bd2:	7009           	moveq #9,%d0                                <== NOT EXECUTED
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
  return return_status;                                               
}                                                                     
   50bd4:	4cee 0c04 ffe8 	moveml %fp@(-24),%d2/%a2-%a3                <== NOT EXECUTED
   50bda:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00050be0 <rtems_region_return_segment>: rtems_status_code rtems_region_return_segment( rtems_id id, void *segment ) {
   50be0:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   50be4:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
  uint32_t                 size;                                      
#endif                                                                
  int                      status;                                    
  register Region_Control *the_region;                                
                                                                      
  _RTEMS_Lock_allocator();                                            
   50be6:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   50bec:	4eb9 0005 2958 	jsr 52958 <_API_Mutex_Lock>                 <== NOT EXECUTED
   50bf2:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   50bf6:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   50bfa:	4879 0007 4f14 	pea 74f14 <_Region_Information>             <== NOT EXECUTED
   50c00:	4eb9 0005 428c 	jsr 5428c <_Objects_Get_no_protection>      <== NOT EXECUTED
                                                                      
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
   50c06:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   50c0a:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   50c0c:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   50c10:	6626           	bnes 50c38 <rtems_region_return_segment+0x58><== NOT EXECUTED
RTEMS_INLINE_ROUTINE bool _Region_Free_segment (                      
  Region_Control *the_region,                                         
  void           *the_segment                                         
)                                                                     
{                                                                     
  return _Heap_Free( &the_region->Memory, the_segment );              
   50c12:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   50c16:	486a 0068      	pea %a2@(104)                               <== NOT EXECUTED
   50c1a:	4eb9 0005 36f4 	jsr 536f4 <_Heap_Free>                      <== NOT EXECUTED
#endif                                                                
          status = _Region_Free_segment( the_region, segment );       
                                                                      
          _Region_Debug_Walk( the_region, 4 );                        
                                                                      
          if ( !status )                                              
   50c20:	508f           	addql #8,%sp                                <== NOT EXECUTED
   50c22:	4a00           	tstb %d0                                    <== NOT EXECUTED
   50c24:	6718           	beqs 50c3e <rtems_region_return_segment+0x5e><== NOT EXECUTED
            return_status = RTEMS_INVALID_ADDRESS;                    
          else {                                                      
            the_region->number_of_used_blocks -= 1;                   
   50c26:	53aa 0064      	subql #1,%a2@(100)                          <== NOT EXECUTED
                                                                      
            _Region_Process_queue(the_region); /* unlocks allocator */
   50c2a:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
                                                                      
            return RTEMS_SUCCESSFUL;                                  
   50c2c:	95ca           	subal %a2,%a2                               <== NOT EXECUTED
          if ( !status )                                              
            return_status = RTEMS_INVALID_ADDRESS;                    
          else {                                                      
            the_region->number_of_used_blocks -= 1;                   
                                                                      
            _Region_Process_queue(the_region); /* unlocks allocator */
   50c2e:	4eb9 0005 75c4 	jsr 575c4 <_Region_Process_queue>           <== NOT EXECUTED
                                                                      
            return RTEMS_SUCCESSFUL;                                  
   50c34:	588f           	addql #4,%sp                                <== NOT EXECUTED
   50c36:	6018           	bras 50c50 <rtems_region_return_segment+0x70><== NOT EXECUTED
        break;                                                        
#endif                                                                
                                                                      
      case OBJECTS_ERROR:                                             
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
   50c38:	347c 0004      	moveaw #4,%a2                               <== NOT EXECUTED
   50c3c:	6004           	bras 50c42 <rtems_region_return_segment+0x62><== NOT EXECUTED
          status = _Region_Free_segment( the_region, segment );       
                                                                      
          _Region_Debug_Walk( the_region, 4 );                        
                                                                      
          if ( !status )                                              
            return_status = RTEMS_INVALID_ADDRESS;                    
   50c3e:	347c 0009      	moveaw #9,%a2                               <== NOT EXECUTED
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   50c42:	2f39 0007 50c4 	movel 750c4 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   50c48:	4eb9 0005 29b8 	jsr 529b8 <_API_Mutex_Unlock>               <== NOT EXECUTED
  return return_status;                                               
   50c4e:	588f           	addql #4,%sp                                <== NOT EXECUTED
}                                                                     
   50c50:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   50c52:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   50c56:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

000453bc <rtems_semaphore_create>: uint32_t count, rtems_attribute attribute_set, rtems_task_priority priority_ceiling, rtems_id *id ) {
   453bc:	4e56 ffd0      	linkw %fp,#-48                              
   453c0:	48d7 0c3c      	moveml %d2-%d5/%a2-%a3,%sp@                 
   453c4:	2a2e 0008      	movel %fp@(8),%d5                           
   453c8:	262e 000c      	movel %fp@(12),%d3                          
   453cc:	242e 0010      	movel %fp@(16),%d2                          
   453d0:	266e 0018      	moveal %fp@(24),%a3                         
  register Semaphore_Control *the_semaphore;                          
  CORE_mutex_Attributes       the_mutex_attr;                         
  CORE_semaphore_Attributes   the_semaphore_attr;                     
  CORE_mutex_Status           mutex_status;                           
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
   453d4:	4a85           	tstl %d5                                    
   453d6:	6700 0166      	beqw 4553e <rtems_semaphore_create+0x182>   
    return RTEMS_INVALID_NAME;                                        
                                                                      
  if ( !id )                                                          
   453da:	4a8b           	tstl %a3                                    
   453dc:	6700 0164      	beqw 45542 <rtems_semaphore_create+0x186>   
 *    id       - semaphore id                                         
 *    RTEMS_SUCCESSFUL - if successful                                
 *    error code - if unsuccessful                                    
 */                                                                   
                                                                      
rtems_status_code rtems_semaphore_create(                             
   453e0:	2002           	movel %d2,%d0                               
   453e2:	0280 0000 00c0 	andil #192,%d0                              
      return RTEMS_NOT_DEFINED;                                       
                                                                      
  } else                                                              
#endif                                                                
                                                                      
  if ( _Attributes_Is_inherit_priority( attribute_set ) ||            
   453e8:	671c           	beqs 45406 <rtems_semaphore_create+0x4a>    
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Attributes_Is_binary_semaphore(            
  rtems_attribute attribute_set                                       
)                                                                     
{                                                                     
  return ((attribute_set & RTEMS_SEMAPHORE_CLASS) == RTEMS_BINARY_SEMAPHORE);
   453ea:	7230           	moveq #48,%d1                               
              _Attributes_Is_priority_ceiling( attribute_set ) ) {    
                                                                      
    if ( ! (_Attributes_Is_binary_semaphore( attribute_set ) &&       
   453ec:	7810           	moveq #16,%d4                               
   453ee:	c282           	andl %d2,%d1                                
   453f0:	b881           	cmpl %d1,%d4                                
   453f2:	6600 0152      	bnew 45546 <rtems_semaphore_create+0x18a>   
   453f6:	44c2           	movew %d2,%ccr                              
   453f8:	6600 014c      	bnew 45546 <rtems_semaphore_create+0x18a>   
            _Attributes_Is_priority( attribute_set ) ) )              
      return RTEMS_NOT_DEFINED;                                       
                                                                      
  }                                                                   
                                                                      
  if ( _Attributes_Is_inherit_priority( attribute_set ) &&            
   453fc:	0c80 0000 00c0 	cmpil #192,%d0                              
   45402:	6700 0142      	beqw 45546 <rtems_semaphore_create+0x18a>   
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Attributes_Is_counting_semaphore(          
  rtems_attribute attribute_set                                       
)                                                                     
{                                                                     
  return ((attribute_set & RTEMS_SEMAPHORE_CLASS) == RTEMS_COUNTING_SEMAPHORE);
   45406:	7830           	moveq #48,%d4                               
   45408:	c882           	andl %d2,%d4                                
       _Attributes_Is_priority_ceiling( attribute_set ) )             
    return RTEMS_NOT_DEFINED;                                         
                                                                      
  if ( !_Attributes_Is_counting_semaphore( attribute_set ) && ( count > 1 ) )
   4540a:	6708           	beqs 45414 <rtems_semaphore_create+0x58>    
   4540c:	7001           	moveq #1,%d0                                
   4540e:	b083           	cmpl %d3,%d0                                
   45410:	6500 0138      	bcsw 4554a <rtems_semaphore_create+0x18e>   
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   45414:	2039 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d0
   4541a:	5280           	addql #1,%d0                                
   4541c:	23c0 0005 c6c8 	movel %d0,5c6c8 <_Thread_Dispatch_disable_level>
 *  This function allocates a semaphore control block from            
 *  the inactive chain of free semaphore control blocks.              
 */                                                                   
RTEMS_INLINE_ROUTINE Semaphore_Control *_Semaphore_Allocate( void )   
{                                                                     
  return (Semaphore_Control *) _Objects_Allocate( &_Semaphore_Information );
   45422:	4879 0005 c610 	pea 5c610 <_Semaphore_Information>          
   45428:	4eb9 0004 6810 	jsr 46810 <_Objects_Allocate>               
                                                                      
  _Thread_Disable_dispatch();             /* prevents deletion */     
                                                                      
  the_semaphore = _Semaphore_Allocate();                              
                                                                      
  if ( !the_semaphore ) {                                             
   4542e:	588f           	addql #4,%sp                                
   45430:	2440           	moveal %d0,%a2                              
   45432:	4a80           	tstl %d0                                    
   45434:	660c           	bnes 45442 <rtems_semaphore_create+0x86>    
    _Thread_Enable_dispatch();                                        
   45436:	4eb9 0004 771e 	jsr 4771e <_Thread_Enable_dispatch>         
    return RTEMS_TOO_MANY;                                            
   4543c:	7005           	moveq #5,%d0                                
   4543e:	6000 010c      	braw 4554c <rtems_semaphore_create+0x190>   
   45442:	7004           	moveq #4,%d0                                
    _Thread_Enable_dispatch();                                        
    return RTEMS_TOO_MANY;                                            
  }                                                                   
#endif                                                                
                                                                      
  the_semaphore->attribute_set = attribute_set;                       
   45444:	2542 0010      	movel %d2,%a2@(16)                          
   45448:	c082           	andl %d2,%d0                                
                                                                      
  /*                                                                  
   *  Initialize it as a counting semaphore.                          
   */                                                                 
  if ( _Attributes_Is_counting_semaphore( attribute_set ) ) {         
   4544a:	4a84           	tstl %d4                                    
   4544c:	6632           	bnes 45480 <rtems_semaphore_create+0xc4>    
     *  This effectively disables limit checking.                     
     */                                                               
    the_semaphore_attr.maximum_count = 0xFFFFFFFF;                    
                                                                      
    if ( _Attributes_Is_priority( attribute_set ) )                   
      the_semaphore_attr.discipline = CORE_SEMAPHORE_DISCIPLINES_PRIORITY;
   4544e:	4a80           	tstl %d0                                    
   45450:	57c0           	seq %d0                                     
     *  The following are just to make Purify happy.                  
     */                                                               
    the_mutex_attr.lock_nesting_behavior = CORE_MUTEX_NESTING_ACQUIRES;
    the_mutex_attr.priority_ceiling = PRIORITY_MINIMUM;               
                                                                      
    _CORE_semaphore_Initialize(                                       
   45452:	2f03           	movel %d3,%sp@-                             
   45454:	486e fff8      	pea %fp@(-8)                                
     *  This effectively disables limit checking.                     
     */                                                               
    the_semaphore_attr.maximum_count = 0xFFFFFFFF;                    
                                                                      
    if ( _Attributes_Is_priority( attribute_set ) )                   
      the_semaphore_attr.discipline = CORE_SEMAPHORE_DISCIPLINES_PRIORITY;
   45458:	49c0           	extbl %d0                                   
   */                                                                 
  if ( _Attributes_Is_counting_semaphore( attribute_set ) ) {         
    /*                                                                
     *  This effectively disables limit checking.                     
     */                                                               
    the_semaphore_attr.maximum_count = 0xFFFFFFFF;                    
   4545a:	72ff           	moveq #-1,%d1                               
                                                                      
    if ( _Attributes_Is_priority( attribute_set ) )                   
      the_semaphore_attr.discipline = CORE_SEMAPHORE_DISCIPLINES_PRIORITY;
   4545c:	5280           	addql #1,%d0                                
     *  The following are just to make Purify happy.                  
     */                                                               
    the_mutex_attr.lock_nesting_behavior = CORE_MUTEX_NESTING_ACQUIRES;
    the_mutex_attr.priority_ceiling = PRIORITY_MINIMUM;               
                                                                      
    _CORE_semaphore_Initialize(                                       
   4545e:	486a 0014      	pea %a2@(20)                                
   */                                                                 
  if ( _Attributes_Is_counting_semaphore( attribute_set ) ) {         
    /*                                                                
     *  This effectively disables limit checking.                     
     */                                                               
    the_semaphore_attr.maximum_count = 0xFFFFFFFF;                    
   45462:	2d41 fff8      	movel %d1,%fp@(-8)                          
                                                                      
    if ( _Attributes_Is_priority( attribute_set ) )                   
      the_semaphore_attr.discipline = CORE_SEMAPHORE_DISCIPLINES_PRIORITY;
   45466:	2d40 fffc      	movel %d0,%fp@(-4)                          
      the_semaphore_attr.discipline = CORE_SEMAPHORE_DISCIPLINES_FIFO;
                                                                      
    /*                                                                
     *  The following are just to make Purify happy.                  
     */                                                               
    the_mutex_attr.lock_nesting_behavior = CORE_MUTEX_NESTING_ACQUIRES;
   4546a:	42ae ffea      	clrl %fp@(-22)                              
    the_mutex_attr.priority_ceiling = PRIORITY_MINIMUM;               
   4546e:	42ae fff4      	clrl %fp@(-12)                              
                                                                      
    _CORE_semaphore_Initialize(                                       
   45472:	4eb9 0004 629c 	jsr 4629c <_CORE_semaphore_Initialize>      
   45478:	4fef 000c      	lea %sp@(12),%sp                            
   4547c:	6000 009e      	braw 4551c <rtems_semaphore_create+0x160>   
    /*                                                                
     *  It is either simple binary semaphore or a more powerful mutex 
     *  style binary semaphore.  This is the mutex style.             
     */                                                               
    if ( _Attributes_Is_priority( attribute_set ) )                   
      the_mutex_attr.discipline = CORE_MUTEX_DISCIPLINES_PRIORITY;    
   45480:	4a80           	tstl %d0                                    
   45482:	57c0           	seq %d0                                     
   45484:	49c0           	extbl %d0                                   
   45486:	5280           	addql #1,%d0                                
   45488:	2d40 fff0      	movel %d0,%fp@(-16)                         
    else                                                              
      the_mutex_attr.discipline = CORE_MUTEX_DISCIPLINES_FIFO;        
                                                                      
    if ( _Attributes_Is_binary_semaphore( attribute_set ) ) {         
   4548c:	7010           	moveq #16,%d0                               
   4548e:	b084           	cmpl %d4,%d0                                
   45490:	6640           	bnes 454d2 <rtems_semaphore_create+0x116>   
      the_mutex_attr.priority_ceiling      = priority_ceiling;        
      the_mutex_attr.lock_nesting_behavior = CORE_MUTEX_NESTING_ACQUIRES;
   45492:	42ae ffea      	clrl %fp@(-22)                              
      the_mutex_attr.only_owner_release    = false;                   
                                                                      
      if ( the_mutex_attr.discipline == CORE_MUTEX_DISCIPLINES_PRIORITY ) {
   45496:	7801           	moveq #1,%d4                                
      the_mutex_attr.discipline = CORE_MUTEX_DISCIPLINES_FIFO;        
                                                                      
    if ( _Attributes_Is_binary_semaphore( attribute_set ) ) {         
      the_mutex_attr.priority_ceiling      = priority_ceiling;        
      the_mutex_attr.lock_nesting_behavior = CORE_MUTEX_NESTING_ACQUIRES;
      the_mutex_attr.only_owner_release    = false;                   
   45498:	4201           	clrb %d1                                    
      the_mutex_attr.discipline = CORE_MUTEX_DISCIPLINES_PRIORITY;    
    else                                                              
      the_mutex_attr.discipline = CORE_MUTEX_DISCIPLINES_FIFO;        
                                                                      
    if ( _Attributes_Is_binary_semaphore( attribute_set ) ) {         
      the_mutex_attr.priority_ceiling      = priority_ceiling;        
   4549a:	2d6e 0014 fff4 	movel %fp@(20),%fp@(-12)                    
      the_mutex_attr.lock_nesting_behavior = CORE_MUTEX_NESTING_ACQUIRES;
      the_mutex_attr.only_owner_release    = false;                   
   454a0:	1d41 ffee      	moveb %d1,%fp@(-18)                         
                                                                      
      if ( the_mutex_attr.discipline == CORE_MUTEX_DISCIPLINES_PRIORITY ) {
   454a4:	b8ae fff0      	cmpl %fp@(-16),%d4                          
   454a8:	6634           	bnes 454de <rtems_semaphore_create+0x122>   
        if ( _Attributes_Is_inherit_priority( attribute_set ) ) {     
   454aa:	0802 0006      	btst #6,%d2                                 
   454ae:	6710           	beqs 454c0 <rtems_semaphore_create+0x104>   <== NEVER TAKEN
          the_mutex_attr.discipline = CORE_MUTEX_DISCIPLINES_PRIORITY_INHERIT;
   454b0:	103c 0002      	moveb #2,%d0                                
          the_mutex_attr.only_owner_release = true;                   
   454b4:	7201           	moveq #1,%d1                                
      the_mutex_attr.lock_nesting_behavior = CORE_MUTEX_NESTING_ACQUIRES;
      the_mutex_attr.only_owner_release    = false;                   
                                                                      
      if ( the_mutex_attr.discipline == CORE_MUTEX_DISCIPLINES_PRIORITY ) {
        if ( _Attributes_Is_inherit_priority( attribute_set ) ) {     
          the_mutex_attr.discipline = CORE_MUTEX_DISCIPLINES_PRIORITY_INHERIT;
   454b6:	2d40 fff0      	movel %d0,%fp@(-16)                         
          the_mutex_attr.only_owner_release = true;                   
   454ba:	1d41 ffee      	moveb %d1,%fp@(-18)                         
   454be:	601e           	bras 454de <rtems_semaphore_create+0x122>   
        } else if ( _Attributes_Is_priority_ceiling( attribute_set ) ) {
   454c0:	4a02           	tstb %d2                                    <== NOT EXECUTED
   454c2:	6c1a           	bges 454de <rtems_semaphore_create+0x122>   <== NOT EXECUTED
          the_mutex_attr.discipline = CORE_MUTEX_DISCIPLINES_PRIORITY_CEILING;
   454c4:	7803           	moveq #3,%d4                                <== NOT EXECUTED
          the_mutex_attr.only_owner_release = true;                   
   454c6:	7001           	moveq #1,%d0                                <== NOT EXECUTED
      if ( the_mutex_attr.discipline == CORE_MUTEX_DISCIPLINES_PRIORITY ) {
        if ( _Attributes_Is_inherit_priority( attribute_set ) ) {     
          the_mutex_attr.discipline = CORE_MUTEX_DISCIPLINES_PRIORITY_INHERIT;
          the_mutex_attr.only_owner_release = true;                   
        } else if ( _Attributes_Is_priority_ceiling( attribute_set ) ) {
          the_mutex_attr.discipline = CORE_MUTEX_DISCIPLINES_PRIORITY_CEILING;
   454c8:	2d44 fff0      	movel %d4,%fp@(-16)                         <== NOT EXECUTED
          the_mutex_attr.only_owner_release = true;                   
   454cc:	1d40 ffee      	moveb %d0,%fp@(-18)                         <== NOT EXECUTED
   454d0:	600c           	bras 454de <rtems_semaphore_create+0x122>   <== NOT EXECUTED
        }                                                             
      }                                                               
    } else /* must be simple binary semaphore */ {                    
      the_mutex_attr.lock_nesting_behavior = CORE_MUTEX_NESTING_BLOCKS;
   454d2:	7202           	moveq #2,%d1                                
      the_mutex_attr.only_owner_release = false;                      
   454d4:	4204           	clrb %d4                                    
          the_mutex_attr.discipline = CORE_MUTEX_DISCIPLINES_PRIORITY_CEILING;
          the_mutex_attr.only_owner_release = true;                   
        }                                                             
      }                                                               
    } else /* must be simple binary semaphore */ {                    
      the_mutex_attr.lock_nesting_behavior = CORE_MUTEX_NESTING_BLOCKS;
   454d6:	2d41 ffea      	movel %d1,%fp@(-22)                         
      the_mutex_attr.only_owner_release = false;                      
   454da:	1d44 ffee      	moveb %d4,%fp@(-18)                         
    }                                                                 
                                                                      
    mutex_status = _CORE_mutex_Initialize(                            
   454de:	7001           	moveq #1,%d0                                
   454e0:	b083           	cmpl %d3,%d0                                
   454e2:	57c0           	seq %d0                                     
   454e4:	49c0           	extbl %d0                                   
   454e6:	4480           	negl %d0                                    
   454e8:	2f00           	movel %d0,%sp@-                             
   454ea:	486e ffea      	pea %fp@(-22)                               
   454ee:	486a 0014      	pea %a2@(20)                                
   454f2:	4eb9 0004 5ffc 	jsr 45ffc <_CORE_mutex_Initialize>          
      &the_semaphore->Core_control.mutex,                             
      &the_mutex_attr,                                                
      (count == 1) ? CORE_MUTEX_UNLOCKED : CORE_MUTEX_LOCKED          
    );                                                                
                                                                      
    if ( mutex_status == CORE_MUTEX_STATUS_CEILING_VIOLATED ) {       
   454f8:	4fef 000c      	lea %sp@(12),%sp                            
   454fc:	7206           	moveq #6,%d1                                
   454fe:	b280           	cmpl %d0,%d1                                
   45500:	661a           	bnes 4551c <rtems_semaphore_create+0x160>   <== ALWAYS TAKEN
 */                                                                   
RTEMS_INLINE_ROUTINE void _Semaphore_Free (                           
  Semaphore_Control *the_semaphore                                    
)                                                                     
{                                                                     
  _Objects_Free( &_Semaphore_Information, &the_semaphore->Object );   
   45502:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   45504:	4879 0005 c610 	pea 5c610 <_Semaphore_Information>          <== NOT EXECUTED
   4550a:	4eb9 0004 6b04 	jsr 46b04 <_Objects_Free>                   <== NOT EXECUTED
      _Semaphore_Free( the_semaphore );                               
      _Thread_Enable_dispatch();                                      
   45510:	4eb9 0004 771e 	jsr 4771e <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_INVALID_PRIORITY;                                  
   45516:	508f           	addql #8,%sp                                <== NOT EXECUTED
   45518:	7013           	moveq #19,%d0                               <== NOT EXECUTED
   4551a:	6030           	bras 4554c <rtems_semaphore_create+0x190>   <== NOT EXECUTED
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
   4551c:	202a 0008      	movel %a2@(8),%d0                           
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   45520:	4281           	clrl %d1                                    
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   45522:	2079 0005 c628 	moveal 5c628 <_Semaphore_Information+0x18>,%a0
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   45528:	3200           	movew %d0,%d1                               
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   4552a:	218a 1c00      	movel %a2,%a0@(00000000,%d1:l:4)            
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
    the_object                                                        
  );                                                                  
                                                                      
  the_object->name = name;                                            
   4552e:	2545 000c      	movel %d5,%a2@(12)                          
    &_Semaphore_Information,                                          
    &the_semaphore->Object,                                           
    (Objects_Name) name                                               
  );                                                                  
                                                                      
  *id = the_semaphore->Object.id;                                     
   45532:	2680           	movel %d0,%a3@                              
      the_semaphore->Object.id,                                       
      name,                                                           
      0                          /* Not used */                       
    );                                                                
#endif                                                                
  _Thread_Enable_dispatch();                                          
   45534:	4eb9 0004 771e 	jsr 4771e <_Thread_Enable_dispatch>         
  return RTEMS_SUCCESSFUL;                                            
   4553a:	4280           	clrl %d0                                    
   4553c:	600e           	bras 4554c <rtems_semaphore_create+0x190>   
  CORE_mutex_Attributes       the_mutex_attr;                         
  CORE_semaphore_Attributes   the_semaphore_attr;                     
  CORE_mutex_Status           mutex_status;                           
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
    return RTEMS_INVALID_NAME;                                        
   4553e:	7003           	moveq #3,%d0                                <== NOT EXECUTED
   45540:	600a           	bras 4554c <rtems_semaphore_create+0x190>   <== NOT EXECUTED
                                                                      
  if ( !id )                                                          
    return RTEMS_INVALID_ADDRESS;                                     
   45542:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   45544:	6006           	bras 4554c <rtems_semaphore_create+0x190>   <== NOT EXECUTED
                                                                      
  }                                                                   
                                                                      
  if ( _Attributes_Is_inherit_priority( attribute_set ) &&            
       _Attributes_Is_priority_ceiling( attribute_set ) )             
    return RTEMS_NOT_DEFINED;                                         
   45546:	700b           	moveq #11,%d0                               <== NOT EXECUTED
   45548:	6002           	bras 4554c <rtems_semaphore_create+0x190>   <== NOT EXECUTED
                                                                      
  if ( !_Attributes_Is_counting_semaphore( attribute_set ) && ( count > 1 ) )
    return RTEMS_INVALID_NUMBER;                                      
   4554a:	700a           	moveq #10,%d0                               <== NOT EXECUTED
      0                          /* Not used */                       
    );                                                                
#endif                                                                
  _Thread_Enable_dispatch();                                          
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4554c:	4cee 0c3c ffd0 	moveml %fp@(-48),%d2-%d5/%a2-%a3            
   45552:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

00045558 <rtems_semaphore_delete>: #endif rtems_status_code rtems_semaphore_delete( rtems_id id ) {
   45558:	4e56 fffc      	linkw %fp,#-4                               
   4555c:	2f0a           	movel %a2,%sp@-                             
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Semaphore_Control *)                                        
    _Objects_Get( &_Semaphore_Information, id, location );            
   4555e:	486e fffc      	pea %fp@(-4)                                
   45562:	2f2e 0008      	movel %fp@(8),%sp@-                         
   45566:	4879 0005 c610 	pea 5c610 <_Semaphore_Information>          
   4556c:	4eb9 0004 6c68 	jsr 46c68 <_Objects_Get>                    
  register Semaphore_Control *the_semaphore;                          
  Objects_Locations           location;                               
                                                                      
  the_semaphore = _Semaphore_Get( id, &location );                    
  switch ( location ) {                                               
   45572:	4fef 000c      	lea %sp@(12),%sp                            
   45576:	2440           	moveal %d0,%a2                              
   45578:	4aae fffc      	tstl %fp@(-4)                               
   4557c:	666c           	bnes 455ea <rtems_semaphore_delete+0x92>    <== NEVER TAKEN
   4557e:	7030           	moveq #48,%d0                               
   45580:	c0aa 0010      	andl %a2@(16),%d0                           
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( !_Attributes_Is_counting_semaphore(the_semaphore->attribute_set) ) {
   45584:	6728           	beqs 455ae <rtems_semaphore_delete+0x56>    
        if ( _CORE_mutex_Is_locked( &the_semaphore->Core_control.mutex ) &&
   45586:	4aaa 0062      	tstl %a2@(98)                               
   4558a:	6610           	bnes 4559c <rtems_semaphore_delete+0x44>    
   4558c:	7220           	moveq #32,%d1                               
   4558e:	b280           	cmpl %d0,%d1                                
   45590:	670a           	beqs 4559c <rtems_semaphore_delete+0x44>    <== ALWAYS TAKEN
             !_Attributes_Is_simple_binary_semaphore(                 
                 the_semaphore->attribute_set ) ) {                   
          _Thread_Enable_dispatch();                                  
   45592:	4eb9 0004 771e 	jsr 4771e <_Thread_Enable_dispatch>         <== NOT EXECUTED
          return RTEMS_RESOURCE_IN_USE;                               
   45598:	700c           	moveq #12,%d0                               <== NOT EXECUTED
   4559a:	6050           	bras 455ec <rtems_semaphore_delete+0x94>    <== NOT EXECUTED
        }                                                             
        _CORE_mutex_Flush(                                            
   4559c:	4878 0004      	pea 4 <CONTEXT_ARG>                         
   455a0:	42a7           	clrl %sp@-                                  
   455a2:	486a 0014      	pea %a2@(20)                                
   455a6:	4eb9 0004 5ff0 	jsr 45ff0 <_CORE_mutex_Flush>               
   455ac:	6010           	bras 455be <rtems_semaphore_delete+0x66>    
          &the_semaphore->Core_control.mutex,                         
          SEMAPHORE_MP_OBJECT_WAS_DELETED,                            
          CORE_MUTEX_WAS_DELETED                                      
        );                                                            
      } else {                                                        
        _CORE_semaphore_Flush(                                        
   455ae:	4878 0002      	pea 2 <DOUBLE_FLOAT>                        
   455b2:	42a7           	clrl %sp@-                                  
   455b4:	486a 0014      	pea %a2@(20)                                
   455b8:	4eb9 0004 6290 	jsr 46290 <_CORE_semaphore_Flush>           
          SEMAPHORE_MP_OBJECT_WAS_DELETED,                            
          CORE_SEMAPHORE_WAS_DELETED                                  
        );                                                            
     }                                                                
                                                                      
      _Objects_Close( &_Semaphore_Information, &the_semaphore->Object );
   455be:	508f           	addql #8,%sp                                
   455c0:	2e8a           	movel %a2,%sp@                              
   455c2:	4879 0005 c610 	pea 5c610 <_Semaphore_Information>          
   455c8:	4eb9 0004 688c 	jsr 4688c <_Objects_Close>                  
 */                                                                   
RTEMS_INLINE_ROUTINE void _Semaphore_Free (                           
  Semaphore_Control *the_semaphore                                    
)                                                                     
{                                                                     
  _Objects_Free( &_Semaphore_Information, &the_semaphore->Object );   
   455ce:	2f0a           	movel %a2,%sp@-                             
   455d0:	4879 0005 c610 	pea 5c610 <_Semaphore_Information>          
   455d6:	4eb9 0004 6b04 	jsr 46b04 <_Objects_Free>                   
          0,                         /* Not used */                   
          0                          /* Not used */                   
        );                                                            
      }                                                               
#endif                                                                
      _Thread_Enable_dispatch();                                      
   455dc:	4eb9 0004 771e 	jsr 4771e <_Thread_Enable_dispatch>         
      return RTEMS_SUCCESSFUL;                                        
   455e2:	4fef 0010      	lea %sp@(16),%sp                            
   455e6:	4280           	clrl %d0                                    
   455e8:	6002           	bras 455ec <rtems_semaphore_delete+0x94>    
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   455ea:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   455ec:	246e fff8      	moveal %fp@(-8),%a2                         
   455f0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004d2d8 <rtems_semaphore_flush>: #endif rtems_status_code rtems_semaphore_flush( rtems_id id ) {
   4d2d8:	4e56 fffc      	linkw %fp,#-4                               
   4d2dc:	486e fffc      	pea %fp@(-4)                                
   4d2e0:	2f2e 0008      	movel %fp@(8),%sp@-                         
   4d2e4:	4879 0005 fc98 	pea 5fc98 <_Semaphore_Information>          
   4d2ea:	4eb9 0004 7c6c 	jsr 47c6c <_Objects_Get>                    
  register Semaphore_Control *the_semaphore;                          
  Objects_Locations           location;                               
                                                                      
  the_semaphore = _Semaphore_Get( id, &location );                    
  switch ( location ) {                                               
   4d2f0:	4fef 000c      	lea %sp@(12),%sp                            
   4d2f4:	4aae fffc      	tstl %fp@(-4)                               
   4d2f8:	663c           	bnes 4d336 <rtems_semaphore_flush+0x5e>     <== NEVER TAKEN
   4d2fa:	2040           	moveal %d0,%a0                              
   4d2fc:	7230           	moveq #48,%d1                               
   4d2fe:	0680 0000 0014 	addil #20,%d0                               
   4d304:	c2a8 0010      	andl %a0@(16),%d1                           
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( !_Attributes_Is_counting_semaphore(the_semaphore->attribute_set) ) {
   4d308:	6710           	beqs 4d31a <rtems_semaphore_flush+0x42>     <== NEVER TAKEN
        _CORE_mutex_Flush(                                            
   4d30a:	4878 0001      	pea 1 <ADD>                                 
   4d30e:	42a7           	clrl %sp@-                                  
   4d310:	2f00           	movel %d0,%sp@-                             
   4d312:	4eb9 0004 6ff4 	jsr 46ff4 <_CORE_mutex_Flush>               
   4d318:	600e           	bras 4d328 <rtems_semaphore_flush+0x50>     
          &the_semaphore->Core_control.mutex,                         
          SEND_OBJECT_WAS_DELETED,                                    
          CORE_MUTEX_STATUS_UNSATISFIED_NOWAIT                        
        );                                                            
      } else {                                                        
        _CORE_semaphore_Flush(                                        
   4d31a:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   4d31e:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4d320:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4d322:	4eb9 0004 7294 	jsr 47294 <_CORE_semaphore_Flush>           <== NOT EXECUTED
   4d328:	4fef 000c      	lea %sp@(12),%sp                            
          &the_semaphore->Core_control.semaphore,                     
          SEND_OBJECT_WAS_DELETED,                                    
          CORE_SEMAPHORE_STATUS_UNSATISFIED_NOWAIT                    
        );                                                            
      }                                                               
      _Thread_Enable_dispatch();                                      
   4d32c:	4eb9 0004 8736 	jsr 48736 <_Thread_Enable_dispatch>         
      return RTEMS_SUCCESSFUL;                                        
   4d332:	4280           	clrl %d0                                    
   4d334:	6002           	bras 4d338 <rtems_semaphore_flush+0x60>     
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   4d336:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4d338:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00050ef8 <rtems_semaphore_ident>: rtems_status_code rtems_semaphore_ident( rtems_name name, uint32_t node, rtems_id *id ) {
   50ef8:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  Objects_Name_or_id_lookup_errors  status;                           
                                                                      
  status = _Objects_Name_to_id_u32( &_Semaphore_Information, name, node, id );
   50efc:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   50f00:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   50f04:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   50f08:	4879 0007 4f4c 	pea 74f4c <_Semaphore_Information>          <== NOT EXECUTED
   50f0e:	4eb9 0005 442c 	jsr 5442c <_Objects_Name_to_id_u32>         <== NOT EXECUTED
                                                                      
  return _Status_Object_name_errors_to_status[ status ];              
}                                                                     
   50f14:	41f9 0006 e620 	lea 6e620 <_Status_Object_name_errors_to_status>,%a0<== NOT EXECUTED
   50f1a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   50f1c:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
	...                                                                  
                                                                      

000455f4 <rtems_semaphore_obtain>: rtems_status_code rtems_semaphore_obtain( rtems_id id, rtems_option option_set, rtems_interval timeout ) {
   455f4:	4e56 ffec      	linkw %fp,#-20                              
   455f8:	48d7 001c      	moveml %d2-%d4,%sp@                         
  Objects_Locations *location,                                        
  ISR_Level         *level                                            
)                                                                     
{                                                                     
  return (Semaphore_Control *)                                        
    _Objects_Get_isr_disable( &_Semaphore_Information, id, location, level );
   455fc:	486e fff8      	pea %fp@(-8)                                
   45600:	486e fffc      	pea %fp@(-4)                                
   45604:	242e 0008      	movel %fp@(8),%d2                           
   45608:	2f02           	movel %d2,%sp@-                             
   4560a:	4879 0005 c610 	pea 5c610 <_Semaphore_Information>          
   45610:	282e 000c      	movel %fp@(12),%d4                          
   45614:	262e 0010      	movel %fp@(16),%d3                          
   45618:	4eb9 0004 6c10 	jsr 46c10 <_Objects_Get_isr_disable>        
  register Semaphore_Control     *the_semaphore;                      
  Objects_Locations               location;                           
  ISR_Level                       level;                              
                                                                      
  the_semaphore = _Semaphore_Get_interrupt_disable( id, &location, &level );
  switch ( location ) {                                               
   4561e:	4fef 0010      	lea %sp@(16),%sp                            
   45622:	2040           	moveal %d0,%a0                              
   45624:	4aae fffc      	tstl %fp@(-4)                               
   45628:	6600 00c4      	bnew 456ee <rtems_semaphore_obtain+0xfa>    
   4562c:	7030           	moveq #48,%d0                               
   4562e:	c0a8 0010      	andl %a0@(16),%d0                           
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( !_Attributes_Is_counting_semaphore(the_semaphore->attribute_set) ) {
   45632:	6732           	beqs 45666 <rtems_semaphore_obtain+0x72>    <== NEVER TAKEN
        _CORE_mutex_Seize(                                            
   45634:	2f2e fff8      	movel %fp@(-8),%sp@-                        
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Options_Is_no_wait (                       
  rtems_option option_set                                             
)                                                                     
{                                                                     
   return (option_set & RTEMS_NO_WAIT) ? true : false;                
   45638:	7001           	moveq #1,%d0                                
   4563a:	c880           	andl %d0,%d4                                
   4563c:	2f03           	movel %d3,%sp@-                             
   4563e:	b980           	eorl %d4,%d0                                
   45640:	2f00           	movel %d0,%sp@-                             
   45642:	2f02           	movel %d2,%sp@-                             
   45644:	4868 0014      	pea %a0@(20)                                
   45648:	4eb9 0004 6108 	jsr 46108 <_CORE_mutex_Seize>               
          ((_Options_Is_no_wait( option_set )) ? false : true),       
          timeout,                                                    
          level                                                       
        );                                                            
        return _Semaphore_Translate_core_mutex_return_code(           
                  _Thread_Executing->Wait.return_code );              
   4564e:	2079 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a0 
          id,                                                         
          ((_Options_Is_no_wait( option_set )) ? false : true),       
          timeout,                                                    
          level                                                       
        );                                                            
        return _Semaphore_Translate_core_mutex_return_code(           
   45654:	2f28 0034      	movel %a0@(52),%sp@-                        
   45658:	4eb9 0004 5780 	jsr 45780 <_Semaphore_Translate_core_mutex_return_code>
   4565e:	4fef 0018      	lea %sp@(24),%sp                            
   45662:	6000 008c      	braw 456f0 <rtems_semaphore_obtain+0xfc>    
{                                                                     
  Thread_Control *executing;                                          
                                                                      
  /* disabled when you get here */                                    
                                                                      
  executing = _Thread_Executing;                                      
   45666:	2279 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a1 <== NOT EXECUTED
  executing->Wait.return_code = CORE_SEMAPHORE_STATUS_SUCCESSFUL;     
  if ( the_semaphore->count != 0 ) {                                  
   4566c:	2028 005c      	movel %a0@(92),%d0                          <== NOT EXECUTED
  Thread_Control *executing;                                          
                                                                      
  /* disabled when you get here */                                    
                                                                      
  executing = _Thread_Executing;                                      
  executing->Wait.return_code = CORE_SEMAPHORE_STATUS_SUCCESSFUL;     
   45670:	42a9 0034      	clrl %a1@(52)                               <== NOT EXECUTED
  if ( the_semaphore->count != 0 ) {                                  
   45674:	4a80           	tstl %d0                                    <== NOT EXECUTED
   45676:	670e           	beqs 45686 <rtems_semaphore_obtain+0x92>    <== NOT EXECUTED
    the_semaphore->count -= 1;                                        
   45678:	5380           	subql #1,%d0                                <== NOT EXECUTED
   4567a:	2140 005c      	movel %d0,%a0@(92)                          <== NOT EXECUTED
    _ISR_Enable( *level_p );                                          
   4567e:	202e fff8      	movel %fp@(-8),%d0                          <== NOT EXECUTED
   45682:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
   45684:	6054           	bras 456da <rtems_semaphore_obtain+0xe6>    <== NOT EXECUTED
    return;                                                           
  }                                                                   
                                                                      
  if ( !wait ) {                                                      
   45686:	0804 0000      	btst #0,%d4                                 <== NOT EXECUTED
   4568a:	670e           	beqs 4569a <rtems_semaphore_obtain+0xa6>    <== NOT EXECUTED
    _ISR_Enable( *level_p );                                          
   4568c:	202e fff8      	movel %fp@(-8),%d0                          <== NOT EXECUTED
   45690:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
    executing->Wait.return_code = CORE_SEMAPHORE_STATUS_UNSATISFIED_NOWAIT;
   45692:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   45694:	2340 0034      	movel %d0,%a1@(52)                          <== NOT EXECUTED
   45698:	6040           	bras 456da <rtems_semaphore_obtain+0xe6>    <== NOT EXECUTED
   4569a:	2039 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   456a0:	5280           	addql #1,%d0                                <== NOT EXECUTED
   456a2:	23c0 0005 c6c8 	movel %d0,5c6c8 <_Thread_Dispatch_disable_level><== NOT EXECUTED
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_queue_Enter_critical_section (      
  Thread_queue_Control *the_thread_queue                              
)                                                                     
{                                                                     
  the_thread_queue->sync_state = THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;
   456a8:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   456aa:	2140 0044      	movel %d0,%a0@(68)                          <== NOT EXECUTED
    return;                                                           
  }                                                                   
                                                                      
  _Thread_Disable_dispatch();                                         
  _Thread_queue_Enter_critical_section( &the_semaphore->Wait_queue ); 
  executing->Wait.queue          = &the_semaphore->Wait_queue;        
   456ae:	41e8 0014      	lea %a0@(20),%a0                            <== NOT EXECUTED
  executing->Wait.id             = id;                                
   456b2:	2342 0020      	movel %d2,%a1@(32)                          <== NOT EXECUTED
    return;                                                           
  }                                                                   
                                                                      
  _Thread_Disable_dispatch();                                         
  _Thread_queue_Enter_critical_section( &the_semaphore->Wait_queue ); 
  executing->Wait.queue          = &the_semaphore->Wait_queue;        
   456b6:	2348 0044      	movel %a0,%a1@(68)                          <== NOT EXECUTED
  executing->Wait.id             = id;                                
  _ISR_Enable( *level_p );                                            
   456ba:	202e fff8      	movel %fp@(-8),%d0                          <== NOT EXECUTED
   456be:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
                                                                      
  _Thread_queue_Enqueue( &the_semaphore->Wait_queue, timeout );       
   456c0:	4879 0004 7e6c 	pea 47e6c <_Thread_queue_Timeout>           <== NOT EXECUTED
   456c6:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   456c8:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   456ca:	4eb9 0004 7b58 	jsr 47b58 <_Thread_queue_Enqueue_with_handler><== NOT EXECUTED
  _Thread_Enable_dispatch();                                          
   456d0:	4eb9 0004 771e 	jsr 4771e <_Thread_Enable_dispatch>         <== NOT EXECUTED
   456d6:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
        ((_Options_Is_no_wait( option_set )) ? false : true),         
        timeout,                                                      
        &level                                                        
      );                                                              
      return _Semaphore_Translate_core_semaphore_return_code(         
                  _Thread_Executing->Wait.return_code );              
   456da:	2079 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
        id,                                                           
        ((_Options_Is_no_wait( option_set )) ? false : true),         
        timeout,                                                      
        &level                                                        
      );                                                              
      return _Semaphore_Translate_core_semaphore_return_code(         
   456e0:	2f28 0034      	movel %a0@(52),%sp@-                        <== NOT EXECUTED
   456e4:	4eb9 0004 5796 	jsr 45796 <_Semaphore_Translate_core_semaphore_return_code><== NOT EXECUTED
   456ea:	588f           	addql #4,%sp                                <== NOT EXECUTED
   456ec:	6002           	bras 456f0 <rtems_semaphore_obtain+0xfc>    <== NOT EXECUTED
    case OBJECTS_ERROR:                                               
      break;                                                          
                                                                      
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   456ee:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   456f0:	4cee 001c ffec 	moveml %fp@(-20),%d2-%d4                    
   456f6:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

000456fc <rtems_semaphore_release>: #endif rtems_status_code rtems_semaphore_release( rtems_id id ) {
   456fc:	4e56 fffc      	linkw %fp,#-4                               
   45700:	2f0a           	movel %a2,%sp@-                             
   45702:	2f02           	movel %d2,%sp@-                             
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Semaphore_Control *)                                        
    _Objects_Get( &_Semaphore_Information, id, location );            
   45704:	486e fffc      	pea %fp@(-4)                                
   45708:	242e 0008      	movel %fp@(8),%d2                           
   4570c:	2f02           	movel %d2,%sp@-                             
   4570e:	4879 0005 c610 	pea 5c610 <_Semaphore_Information>          
   45714:	4eb9 0004 6c68 	jsr 46c68 <_Objects_Get>                    
  Objects_Locations           location;                               
  CORE_mutex_Status           mutex_status;                           
  CORE_semaphore_Status       semaphore_status;                       
                                                                      
  the_semaphore = _Semaphore_Get( id, &location );                    
  switch ( location ) {                                               
   4571a:	4fef 000c      	lea %sp@(12),%sp                            
   4571e:	4aae fffc      	tstl %fp@(-4)                               
   45722:	664e           	bnes 45772 <rtems_semaphore_release+0x76>   <== NEVER TAKEN
   45724:	2040           	moveal %d0,%a0                              
   45726:	7230           	moveq #48,%d1                               
   45728:	0680 0000 0014 	addil #20,%d0                               
   4572e:	45f9 0004 771e 	lea 4771e <_Thread_Enable_dispatch>,%a2     
   45734:	c2a8 0010      	andl %a0@(16),%d1                           
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( !_Attributes_Is_counting_semaphore(the_semaphore->attribute_set) ) {
   45738:	671a           	beqs 45754 <rtems_semaphore_release+0x58>   <== NEVER TAKEN
        mutex_status = _CORE_mutex_Surrender(                         
   4573a:	42a7           	clrl %sp@-                                  
   4573c:	2f02           	movel %d2,%sp@-                             
   4573e:	2f00           	movel %d0,%sp@-                             
   45740:	4eb9 0004 61ac 	jsr 461ac <_CORE_mutex_Surrender>           
   45746:	2400           	movel %d0,%d2                               
          &the_semaphore->Core_control.mutex,                         
          id,                                                         
          MUTEX_MP_SUPPORT                                            
        );                                                            
        _Thread_Enable_dispatch();                                    
   45748:	4e92           	jsr %a2@                                    
        return _Semaphore_Translate_core_mutex_return_code( mutex_status );
   4574a:	2f02           	movel %d2,%sp@-                             
   4574c:	4eb9 0004 5780 	jsr 45780 <_Semaphore_Translate_core_mutex_return_code>
   45752:	6018           	bras 4576c <rtems_semaphore_release+0x70>   
      } else {                                                        
        semaphore_status = _CORE_semaphore_Surrender(                 
   45754:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   45756:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   45758:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4575a:	4eb9 0004 62e4 	jsr 462e4 <_CORE_semaphore_Surrender>       <== NOT EXECUTED
   45760:	2400           	movel %d0,%d2                               <== NOT EXECUTED
          &the_semaphore->Core_control.semaphore,                     
          id,                                                         
          MUTEX_MP_SUPPORT                                            
        );                                                            
        _Thread_Enable_dispatch();                                    
   45762:	4e92           	jsr %a2@                                    <== NOT EXECUTED
        return                                                        
   45764:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   45766:	4eb9 0004 5796 	jsr 45796 <_Semaphore_Translate_core_semaphore_return_code><== NOT EXECUTED
   4576c:	4fef 0010      	lea %sp@(16),%sp                            
   45770:	6002           	bras 45774 <rtems_semaphore_release+0x78>   
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   45772:	7004           	moveq #4,%d0                                
}                                                                     
   45774:	242e fff4      	movel %fp@(-12),%d2                         
   45778:	246e fff8      	moveal %fp@(-8),%a2                         
   4577c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00045c34 <rtems_shutdown_executive>: void rtems_shutdown_executive( uint32_t result ) { if ( _System_state_Is_up( _System_state_Get() ) ) {
   45c34:	7003           	moveq #3,%d0                                
 */                                                                   
                                                                      
void rtems_shutdown_executive(                                        
   uint32_t   result                                                  
)                                                                     
{                                                                     
   45c36:	4e56 0000      	linkw %fp,#0                                
  if ( _System_state_Is_up( _System_state_Get() ) ) {                 
   45c3a:	b0b9 0005 c830 	cmpl 5c830 <_System_state_Current>,%d0      
   45c40:	6618           	bnes 45c5a <rtems_shutdown_executive+0x26>  
   45c42:	103c 0004      	moveb #4,%d0                                
   *  if we were running within the same context, it would work.      
   *                                                                  
   *  And we will not return to this thread, so there is no point of  
   *  saving the context.                                             
   */                                                                 
  _Context_Restart_self( &_Thread_BSP_context );                      
   45c46:	4879 0005 c694 	pea 5c694 <_Thread_BSP_context>             
   45c4c:	23c0 0005 c830 	movel %d0,5c830 <_System_state_Current>     
   45c52:	4eb9 0004 873e 	jsr 4873e <_CPU_Context_Restart_self>       
   45c58:	588f           	addql #4,%sp                                <== NOT EXECUTED
    _System_state_Set( SYSTEM_STATE_SHUTDOWN );                       
    _Thread_Stop_multitasking();                                      
  }                                                                   
  _Internal_error_Occurred(                                           
   45c5a:	4878 0014      	pea 14 <OPER2>                              
   45c5e:	4878 0001      	pea 1 <ADD>                                 
   45c62:	42a7           	clrl %sp@-                                  
   45c64:	4eb9 0004 675c 	jsr 4675c <_Internal_error_Occurred>        
	...                                                                  
                                                                      

00046564 <rtems_signal_catch>: rtems_status_code rtems_signal_catch( rtems_asr_entry asr_handler, rtems_mode mode_set ) {
   46564:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   46568:	2239 0005 daf0 	movel 5daf0 <_Thread_Dispatch_disable_level>,%d1<== NOT EXECUTED
   4656e:	5281           	addql #1,%d1                                <== NOT EXECUTED
  RTEMS_API_Control  *api;                                            
  ASR_Information    *asr;                                            
                                                                      
/* XXX normalize mode */                                              
  executing = _Thread_Executing;                                      
  api = (RTEMS_API_Control*)executing->API_Extensions[ THREAD_API_RTEMS ];
   46570:	2079 0005 dcac 	moveal 5dcac <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
                                                                      
rtems_status_code rtems_signal_catch(                                 
  rtems_asr_entry   asr_handler,                                      
  rtems_mode        mode_set                                          
)                                                                     
{                                                                     
   46576:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
  RTEMS_API_Control  *api;                                            
  ASR_Information    *asr;                                            
                                                                      
/* XXX normalize mode */                                              
  executing = _Thread_Executing;                                      
  api = (RTEMS_API_Control*)executing->API_Extensions[ THREAD_API_RTEMS ];
   4657a:	2068 00fc      	moveal %a0@(252),%a0                        <== NOT EXECUTED
   4657e:	23c1 0005 daf0 	movel %d1,5daf0 <_Thread_Dispatch_disable_level><== NOT EXECUTED
  asr = &api->Signal;                                                 
                                                                      
  _Thread_Disable_dispatch(); /* cannot reschedule while */           
                              /*   the thread is inconsistent */      
                                                                      
  if ( !_ASR_Is_null_handler( asr_handler ) ) {                       
   46584:	4a80           	tstl %d0                                    <== NOT EXECUTED
   46586:	670c           	beqs 46594 <rtems_signal_catch+0x30>        <== NOT EXECUTED
    asr->mode_set = mode_set;                                         
    asr->handler = asr_handler;                                       
   46588:	2140 000a      	movel %d0,%a0@(10)                          <== NOT EXECUTED
                                                                      
  _Thread_Disable_dispatch(); /* cannot reschedule while */           
                              /*   the thread is inconsistent */      
                                                                      
  if ( !_ASR_Is_null_handler( asr_handler ) ) {                       
    asr->mode_set = mode_set;                                         
   4658c:	216e 000c 000e 	movel %fp@(12),%a0@(14)                     <== NOT EXECUTED
   46592:	601a           	bras 465ae <rtems_signal_catch+0x4a>        <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void _ASR_Initialize (                           
  ASR_Information *information                                        
)                                                                     
{                                                                     
  information->is_enabled      = false;                               
  information->handler         = NULL;                                
   46594:	42a8 000a      	clrl %a0@(10)                               <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _ASR_Initialize (                           
  ASR_Information *information                                        
)                                                                     
{                                                                     
  information->is_enabled      = false;                               
   46598:	4200           	clrb %d0                                    <== NOT EXECUTED
  information->handler         = NULL;                                
  information->mode_set        = RTEMS_DEFAULT_MODES;                 
   4659a:	42a8 000e      	clrl %a0@(14)                               <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _ASR_Initialize (                           
  ASR_Information *information                                        
)                                                                     
{                                                                     
  information->is_enabled      = false;                               
   4659e:	1140 0008      	moveb %d0,%a0@(8)                           <== NOT EXECUTED
  information->handler         = NULL;                                
  information->mode_set        = RTEMS_DEFAULT_MODES;                 
  information->signals_posted  = 0;                                   
   465a2:	42a8 0012      	clrl %a0@(18)                               <== NOT EXECUTED
  information->signals_pending = 0;                                   
   465a6:	42a8 0016      	clrl %a0@(22)                               <== NOT EXECUTED
  information->nest_level      = 0;                                   
   465aa:	42a8 001a      	clrl %a0@(26)                               <== NOT EXECUTED
    asr->handler = asr_handler;                                       
  }                                                                   
  else                                                                
    _ASR_Initialize( asr );                                           
  _Thread_Enable_dispatch();                                          
   465ae:	4eb9 0004 8772 	jsr 48772 <_Thread_Enable_dispatch>         <== NOT EXECUTED
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   465b4:	4280           	clrl %d0                                    <== NOT EXECUTED
   465b6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

000510dc <rtems_signal_send>: rtems_status_code rtems_signal_send( rtems_id id, rtems_signal_set signal_set ) {
   510dc:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   510e0:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   510e2:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   510e4:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
  register Thread_Control *the_thread;                                
  Objects_Locations        location;                                  
  RTEMS_API_Control       *api;                                       
  ASR_Information         *asr;                                       
                                                                      
  if ( !signal_set )                                                  
   510e8:	677a           	beqs 51164 <rtems_signal_send+0x88>         <== NOT EXECUTED
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   510ea:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   510ee:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   510f2:	4eb9 0005 4da0 	jsr 54da0 <_Thread_Get>                     <== NOT EXECUTED
  switch ( location ) {                                               
   510f8:	508f           	addql #8,%sp                                <== NOT EXECUTED
   510fa:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   510fe:	6668           	bnes 51168 <rtems_signal_send+0x8c>         <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      api = the_thread->API_Extensions[ THREAD_API_RTEMS ];           
   51100:	2240           	moveal %d0,%a1                              <== NOT EXECUTED
   51102:	2069 00fc      	moveal %a1@(252),%a0                        <== NOT EXECUTED
      asr = &api->Signal;                                             
                                                                      
      if ( ! _ASR_Is_null_handler( asr->handler ) ) {                 
   51106:	4aa8 000a      	tstl %a0@(10)                               <== NOT EXECUTED
   5110a:	674e           	beqs 5115a <rtems_signal_send+0x7e>         <== NOT EXECUTED
        if ( asr->is_enabled ) {                                      
   5110c:	4a28 0008      	tstb %a0@(8)                                <== NOT EXECUTED
   51110:	672c           	beqs 5113e <rtems_signal_send+0x62>         <== NOT EXECUTED
  rtems_signal_set *signal_set                                        
)                                                                     
{                                                                     
  ISR_Level              _level;                                      
                                                                      
  _ISR_Disable( _level );                                             
   51112:	223c 0000 0700 	movel #1792,%d1                             <== NOT EXECUTED
   51118:	40c3           	movew %sr,%d3                               <== NOT EXECUTED
   5111a:	8283           	orl %d3,%d1                                 <== NOT EXECUTED
   5111c:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
    *signal_set |= signals;                                           
   5111e:	85a8 0012      	orl %d2,%a0@(18)                            <== NOT EXECUTED
  _ISR_Enable( _level );                                              
   51122:	46c3           	movew %d3,%sr                               <== NOT EXECUTED
          _ASR_Post_signals( signal_set, &asr->signals_posted );      
                                                                      
          if ( _ISR_Is_in_progress() && _Thread_Is_executing( the_thread ) )
   51124:	4ab9 0007 51c4 	tstl 751c4 <_Per_CPU_Information+0x8>       <== NOT EXECUTED
   5112a:	6724           	beqs 51150 <rtems_signal_send+0x74>         <== NOT EXECUTED
   5112c:	b0b9 0007 51c8 	cmpl 751c8 <_Per_CPU_Information+0xc>,%d0   <== NOT EXECUTED
   51132:	661c           	bnes 51150 <rtems_signal_send+0x74>         <== NOT EXECUTED
            _Thread_Dispatch_necessary = true;                        
   51134:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   51136:	13c0 0007 51d4 	moveb %d0,751d4 <_Per_CPU_Information+0x18> <== NOT EXECUTED
   5113c:	6012           	bras 51150 <rtems_signal_send+0x74>         <== NOT EXECUTED
  rtems_signal_set *signal_set                                        
)                                                                     
{                                                                     
  ISR_Level              _level;                                      
                                                                      
  _ISR_Disable( _level );                                             
   5113e:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   51144:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   51146:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   51148:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
    *signal_set |= signals;                                           
   5114a:	85a8 0016      	orl %d2,%a0@(22)                            <== NOT EXECUTED
  _ISR_Enable( _level );                                              
   5114e:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
        } else {                                                      
          _ASR_Post_signals( signal_set, &asr->signals_pending );     
        }                                                             
        _Thread_Enable_dispatch();                                    
   51150:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
        return RTEMS_SUCCESSFUL;                                      
   51156:	4280           	clrl %d0                                    <== NOT EXECUTED
   51158:	6010           	bras 5116a <rtems_signal_send+0x8e>         <== NOT EXECUTED
      }                                                               
      _Thread_Enable_dispatch();                                      
   5115a:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_NOT_DEFINED;                                       
   51160:	700b           	moveq #11,%d0                               <== NOT EXECUTED
   51162:	6006           	bras 5116a <rtems_signal_send+0x8e>         <== NOT EXECUTED
  Objects_Locations        location;                                  
  RTEMS_API_Control       *api;                                       
  ASR_Information         *asr;                                       
                                                                      
  if ( !signal_set )                                                  
    return RTEMS_INVALID_NUMBER;                                      
   51164:	700a           	moveq #10,%d0                               <== NOT EXECUTED
   51166:	6002           	bras 5116a <rtems_signal_send+0x8e>         <== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   51168:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   5116a:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   5116e:	262e fff8      	movel %fp@(-8),%d3                          <== NOT EXECUTED
   51172:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

000457ac <rtems_task_create>: size_t stack_size, rtems_mode initial_modes, rtems_attribute attribute_set, rtems_id *id ) {
   457ac:	4e56 ffe8      	linkw %fp,#-24                              
   457b0:	48d7 1c1c      	moveml %d2-%d4/%a2-%a4,%sp@                 
   457b4:	266e 0008      	moveal %fp@(8),%a3                          
   457b8:	262e 000c      	movel %fp@(12),%d3                          
   457bc:	242e 0014      	movel %fp@(20),%d2                          
   457c0:	282e 0018      	movel %fp@(24),%d4                          
   457c4:	286e 001c      	moveal %fp@(28),%a4                         
  Priority_Control         core_priority;                             
  RTEMS_API_Control       *api;                                       
  ASR_Information         *asr;                                       
                                                                      
                                                                      
  if ( !id )                                                          
   457c8:	4a8c           	tstl %a4                                    
   457ca:	6700 00f0      	beqw 458bc <rtems_task_create+0x110>        
   return RTEMS_INVALID_ADDRESS;                                      
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
   457ce:	4a8b           	tstl %a3                                    
   457d0:	6700 00ee      	beqw 458c0 <rtems_task_create+0x114>        
                                                                      
  /*                                                                  
   *  Validate the RTEMS API priority and convert it to the core priority range.
   */                                                                 
                                                                      
  if ( !_Attributes_Is_system_task( the_attribute_set ) ) {           
   457d4:	4a44           	tstw %d4                                    
   457d6:	6d1e           	blts 457f6 <rtems_task_create+0x4a>         <== NEVER TAKEN
 */                                                                   
RTEMS_INLINE_ROUTINE bool _RTEMS_tasks_Priority_is_valid (            
  rtems_task_priority the_priority                                    
)                                                                     
{                                                                     
  return (  ( the_priority >= RTEMS_MINIMUM_PRIORITY ) &&             
   457d8:	4a83           	tstl %d3                                    
   457da:	6712           	beqs 457ee <rtems_task_create+0x42>         <== NEVER TAKEN
            ( the_priority <= RTEMS_MAXIMUM_PRIORITY ) );             
   457dc:	4280           	clrl %d0                                    
   457de:	1039 0005 ae92 	moveb 5ae92 <rtems_maximum_priority>,%d0    
 */                                                                   
RTEMS_INLINE_ROUTINE bool _RTEMS_tasks_Priority_is_valid (            
  rtems_task_priority the_priority                                    
)                                                                     
{                                                                     
  return (  ( the_priority >= RTEMS_MINIMUM_PRIORITY ) &&             
   457e4:	b083           	cmpl %d3,%d0                                
   457e6:	54c0           	scc %d0                                     
   457e8:	49c0           	extbl %d0                                   
   457ea:	4480           	negl %d0                                    
   457ec:	6002           	bras 457f0 <rtems_task_create+0x44>         
   457ee:	4280           	clrl %d0                                    <== NOT EXECUTED
    if ( !_RTEMS_tasks_Priority_is_valid( initial_priority ) )        
   457f0:	4a00           	tstb %d0                                    
   457f2:	6700 00d0      	beqw 458c4 <rtems_task_create+0x118>        
   */                                                                 
                                                                      
  /*                                                                  
   *  Lock the allocator mutex for protection                         
   */                                                                 
  _RTEMS_Lock_allocator();                                            
   457f6:	2f39 0005 c788 	movel 5c788 <_RTEMS_Allocator_Mutex>,%sp@-  
   457fc:	4eb9 0004 5ec8 	jsr 45ec8 <_API_Mutex_Lock>                 
 *  This function allocates a task control block from                 
 *  the inactive chain of free task control blocks.                   
 */                                                                   
RTEMS_INLINE_ROUTINE Thread_Control *_RTEMS_tasks_Allocate( void )    
{                                                                     
  return (Thread_Control *) _Objects_Allocate( &_RTEMS_tasks_Information );
   45802:	4879 0005 c648 	pea 5c648 <_RTEMS_tasks_Information>        
   45808:	4eb9 0004 6810 	jsr 46810 <_Objects_Allocate>               
   *         the event of an error.                                   
   */                                                                 
                                                                      
  the_thread = _RTEMS_tasks_Allocate();                               
                                                                      
  if ( !the_thread ) {                                                
   4580e:	508f           	addql #8,%sp                                
   45810:	2440           	moveal %d0,%a2                              
   45812:	4a80           	tstl %d0                                    
   45814:	6614           	bnes 4582a <rtems_task_create+0x7e>         <== ALWAYS TAKEN
    _RTEMS_Unlock_allocator();                                        
   45816:	2f39 0005 c788 	movel 5c788 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   4581c:	4eb9 0004 5f28 	jsr 45f28 <_API_Mutex_Unlock>               <== NOT EXECUTED
    return RTEMS_TOO_MANY;                                            
   45822:	588f           	addql #4,%sp                                <== NOT EXECUTED
   45824:	7005           	moveq #5,%d0                                <== NOT EXECUTED
   45826:	6000 009e      	braw 458c6 <rtems_task_create+0x11a>        <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Initialize the core thread for this task.                       
   */                                                                 
                                                                      
  status = _Thread_Initialize(                                        
   4582a:	7007           	moveq #7,%d0                                
   4582c:	2f0b           	movel %a3,%sp@-                             
   4582e:	47f9 0004 5f28 	lea 45f28 <_API_Mutex_Unlock>,%a3           
   45834:	c082           	andl %d2,%d0                                
   45836:	2f00           	movel %d0,%sp@-                             
   45838:	0802 0009      	btst #9,%d2                                 
   4583c:	56c0           	sne %d0                                     
   4583e:	42a7           	clrl %sp@-                                  
   45840:	49c0           	extbl %d0                                   
   45842:	4480           	negl %d0                                    
   45844:	2f00           	movel %d0,%sp@-                             
   45846:	0802 0008      	btst #8,%d2                                 
   4584a:	57c0           	seq %d0                                     
   4584c:	49c0           	extbl %d0                                   
   4584e:	4480           	negl %d0                                    
   45850:	2f00           	movel %d0,%sp@-                             
   45852:	7001           	moveq #1,%d0                                
   45854:	2f03           	movel %d3,%sp@-                             
   45856:	c084           	andl %d4,%d0                                
   45858:	2f00           	movel %d0,%sp@-                             
   4585a:	2f2e 0010      	movel %fp@(16),%sp@-                        
   4585e:	42a7           	clrl %sp@-                                  
   45860:	2f0a           	movel %a2,%sp@-                             
   45862:	4879 0005 c648 	pea 5c648 <_RTEMS_tasks_Information>        
   45868:	4eb9 0004 77d0 	jsr 477d0 <_Thread_Initialize>              
    NULL,        /* no budget algorithm callout */                    
    _Modes_Get_interrupt_level(initial_modes),                        
    (Objects_Name) name                                               
  );                                                                  
                                                                      
  if ( !status ) {                                                    
   4586e:	4fef 002c      	lea %sp@(44),%sp                            
   45872:	4a00           	tstb %d0                                    
   45874:	6624           	bnes 4589a <rtems_task_create+0xee>         
 */                                                                   
RTEMS_INLINE_ROUTINE void _RTEMS_tasks_Free (                         
  Thread_Control *the_task                                            
)                                                                     
{                                                                     
  _Objects_Free(                                                      
   45876:	2f2a 0008      	movel %a2@(8),%sp@-                         
   4587a:	4eb9 0004 6b88 	jsr 46b88 <_Objects_Get_information_id>     
   45880:	2f0a           	movel %a2,%sp@-                             
   45882:	2f00           	movel %d0,%sp@-                             
   45884:	4eb9 0004 6b04 	jsr 46b04 <_Objects_Free>                   
#if defined(RTEMS_MULTIPROCESSING)                                    
    if ( is_global )                                                  
      _Objects_MP_Free_global_object( the_global_object );            
#endif                                                                
    _RTEMS_tasks_Free( the_thread );                                  
    _RTEMS_Unlock_allocator();                                        
   4588a:	2f39 0005 c788 	movel 5c788 <_RTEMS_Allocator_Mutex>,%sp@-  
   45890:	4e93           	jsr %a3@                                    
    return RTEMS_UNSATISFIED;                                         
   45892:	4fef 0010      	lea %sp@(16),%sp                            
   45896:	700d           	moveq #13,%d0                               
   45898:	602c           	bras 458c6 <rtems_task_create+0x11a>        
  }                                                                   
                                                                      
  api = the_thread->API_Extensions[ THREAD_API_RTEMS ];               
  asr = &api->Signal;                                                 
   4589a:	206a 00fc      	moveal %a2@(252),%a0                        
 *    id               - thread id                                    
 *    RTEMS_SUCCESSFUL - if successful                                
 *    error code       - if unsuccessful                              
 */                                                                   
                                                                      
rtems_status_code rtems_task_create(                                  
   4589e:	0802 000a      	btst #10,%d2                                
   458a2:	57c0           	seq %d0                                     
   458a4:	4480           	negl %d0                                    
  }                                                                   
                                                                      
  api = the_thread->API_Extensions[ THREAD_API_RTEMS ];               
  asr = &api->Signal;                                                 
                                                                      
  asr->is_enabled = _Modes_Is_asr_disabled(initial_modes) ? false : true;
   458a6:	1140 0008      	moveb %d0,%a0@(8)                           
                                                                      
  *id = the_thread->Object.id;                                        
   458aa:	28aa 0008      	movel %a2@(8),%a4@                          
    );                                                                
                                                                      
   }                                                                  
#endif                                                                
                                                                      
  _RTEMS_Unlock_allocator();                                          
   458ae:	2f39 0005 c788 	movel 5c788 <_RTEMS_Allocator_Mutex>,%sp@-  
   458b4:	4e93           	jsr %a3@                                    
  return RTEMS_SUCCESSFUL;                                            
   458b6:	588f           	addql #4,%sp                                
   458b8:	4280           	clrl %d0                                    
   458ba:	600a           	bras 458c6 <rtems_task_create+0x11a>        
  RTEMS_API_Control       *api;                                       
  ASR_Information         *asr;                                       
                                                                      
                                                                      
  if ( !id )                                                          
   return RTEMS_INVALID_ADDRESS;                                      
   458bc:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   458be:	6006           	bras 458c6 <rtems_task_create+0x11a>        <== NOT EXECUTED
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
    return RTEMS_INVALID_NAME;                                        
   458c0:	7003           	moveq #3,%d0                                <== NOT EXECUTED
   458c2:	6002           	bras 458c6 <rtems_task_create+0x11a>        <== NOT EXECUTED
   *  Validate the RTEMS API priority and convert it to the core priority range.
   */                                                                 
                                                                      
  if ( !_Attributes_Is_system_task( the_attribute_set ) ) {           
    if ( !_RTEMS_tasks_Priority_is_valid( initial_priority ) )        
      return RTEMS_INVALID_PRIORITY;                                  
   458c4:	7013           	moveq #19,%d0                               <== NOT EXECUTED
   }                                                                  
#endif                                                                
                                                                      
  _RTEMS_Unlock_allocator();                                          
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   458c6:	4cee 1c1c ffe8 	moveml %fp@(-24),%d2-%d4/%a2-%a4            
   458cc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000458d0 <rtems_task_delete>: */ rtems_status_code rtems_task_delete( rtems_id id ) {
   458d0:	4e56 fff0      	linkw %fp,#-16                              
   458d4:	48d7 1c00      	moveml %a2-%a4,%sp@                         
  register Thread_Control *the_thread;                                
  Objects_Locations        location;                                  
  Objects_Information     *the_information;                           
                                                                      
  _RTEMS_Lock_allocator();                                            
   458d8:	2f39 0005 c788 	movel 5c788 <_RTEMS_Allocator_Mutex>,%sp@-  
   458de:	47f9 0004 5f28 	lea 45f28 <_API_Mutex_Unlock>,%a3           
   458e4:	4eb9 0004 5ec8 	jsr 45ec8 <_API_Mutex_Lock>                 
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   458ea:	486e fffc      	pea %fp@(-4)                                
   458ee:	2f2e 0008      	movel %fp@(8),%sp@-                         
   458f2:	4eb9 0004 7744 	jsr 47744 <_Thread_Get>                     
  switch ( location ) {                                               
   458f8:	4fef 000c      	lea %sp@(12),%sp                            
  Objects_Locations        location;                                  
  Objects_Information     *the_information;                           
                                                                      
  _RTEMS_Lock_allocator();                                            
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   458fc:	2440           	moveal %d0,%a2                              
  switch ( location ) {                                               
   458fe:	4aae fffc      	tstl %fp@(-4)                               
   45902:	663c           	bnes 45940 <rtems_task_delete+0x70>         <== NEVER TAKEN
                                                                      
    case OBJECTS_LOCAL:                                               
      the_information = _Objects_Get_information_id( the_thread->Object.id );
   45904:	2f2a 0008      	movel %a2@(8),%sp@-                         
   45908:	49f9 0004 6b88 	lea 46b88 <_Objects_Get_information_id>,%a4 
   4590e:	4e94           	jsr %a4@                                    
            0                                /* Not used */           
          );                                                          
        }                                                             
      #endif                                                          
                                                                      
      _Thread_Close( the_information, the_thread );                   
   45910:	2f0a           	movel %a2,%sp@-                             
   45912:	2f00           	movel %d0,%sp@-                             
   45914:	4eb9 0004 7410 	jsr 47410 <_Thread_Close>                   
   4591a:	2f2a 0008      	movel %a2@(8),%sp@-                         
   4591e:	4e94           	jsr %a4@                                    
   45920:	2f0a           	movel %a2,%sp@-                             
   45922:	2f00           	movel %d0,%sp@-                             
   45924:	4eb9 0004 6b04 	jsr 46b04 <_Objects_Free>                   
                                                                      
      _RTEMS_tasks_Free( the_thread );                                
                                                                      
      _RTEMS_Unlock_allocator();                                      
   4592a:	2f39 0005 c788 	movel 5c788 <_RTEMS_Allocator_Mutex>,%sp@-  
   45930:	4e93           	jsr %a3@                                    
      _Thread_Enable_dispatch();                                      
   45932:	4eb9 0004 771e 	jsr 4771e <_Thread_Enable_dispatch>         
      return RTEMS_SUCCESSFUL;                                        
   45938:	4fef 001c      	lea %sp@(28),%sp                            <== NOT EXECUTED
   4593c:	4280           	clrl %d0                                    <== NOT EXECUTED
   4593e:	600c           	bras 4594c <rtems_task_delete+0x7c>         <== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  _RTEMS_Unlock_allocator();                                          
   45940:	2f39 0005 c788 	movel 5c788 <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
   45946:	4e93           	jsr %a3@                                    <== NOT EXECUTED
  return RTEMS_INVALID_ID;                                            
   45948:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4594a:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   4594c:	4cee 1c00 fff0 	moveml %fp@(-16),%a2-%a4                    <== NOT EXECUTED
   45952:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

000470c8 <rtems_task_get_note>: rtems_status_code rtems_task_get_note( rtems_id id, uint32_t notepad, uint32_t *note ) {
   470c8:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   470cc:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   470d0:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   470d2:	246e 0010      	moveal %fp@(16),%a2                         <== NOT EXECUTED
   470d6:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   470d8:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
  register Thread_Control *the_thread;                                
  Objects_Locations        location;                                  
  RTEMS_API_Control       *api;                                       
                                                                      
  if ( !rtems_configuration_get_notepads_enabled() )                  
   470dc:	4a39 0005 d604 	tstb 5d604 <Configuration_RTEMS_API+0x4>    <== NOT EXECUTED
   470e2:	6752           	beqs 47136 <rtems_task_get_note+0x6e>       <== NOT EXECUTED
    return RTEMS_NOT_CONFIGURED;                                      
                                                                      
  if ( !note )                                                        
   470e4:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   470e6:	6752           	beqs 4713a <rtems_task_get_note+0x72>       <== NOT EXECUTED
  /*                                                                  
   *  NOTE:  There is no check for < RTEMS_NOTEPAD_FIRST because that would
   *         be checking an unsigned number for being negative.       
   */                                                                 
                                                                      
  if ( notepad > RTEMS_NOTEPAD_LAST )                                 
   470e8:	720f           	moveq #15,%d1                               <== NOT EXECUTED
   470ea:	b282           	cmpl %d2,%d1                                <== NOT EXECUTED
   470ec:	6550           	bcss 4713e <rtems_task_get_note+0x76>       <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Optimize the most likely case to avoid the Thread_Dispatch.     
   */                                                                 
                                                                      
  if ( _Objects_Are_ids_equal( id, OBJECTS_ID_OF_SELF ) ||            
   470ee:	4a80           	tstl %d0                                    <== NOT EXECUTED
   470f0:	670c           	beqs 470fe <rtems_task_get_note+0x36>       <== NOT EXECUTED
       _Objects_Are_ids_equal( id, _Thread_Executing->Object.id ) ) { 
   470f2:	2079 0005 f2cc 	moveal 5f2cc <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Optimize the most likely case to avoid the Thread_Dispatch.     
   */                                                                 
                                                                      
  if ( _Objects_Are_ids_equal( id, OBJECTS_ID_OF_SELF ) ||            
   470f8:	b0a8 0008      	cmpl %a0@(8),%d0                            <== NOT EXECUTED
   470fc:	6610           	bnes 4710e <rtems_task_get_note+0x46>       <== NOT EXECUTED
       _Objects_Are_ids_equal( id, _Thread_Executing->Object.id ) ) { 
      api = _Thread_Executing->API_Extensions[ THREAD_API_RTEMS ];    
   470fe:	2079 0005 f2cc 	moveal 5f2cc <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
      *note = api->Notepads[ notepad ];                               
   47104:	2068 00fc      	moveal %a0@(252),%a0                        <== NOT EXECUTED
   47108:	24b0 2c1e      	movel %a0@(0000001e,%d2:l:4),%a2@           <== NOT EXECUTED
   4710c:	6024           	bras 47132 <rtems_task_get_note+0x6a>       <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
  }                                                                   
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   4710e:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   47112:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   47114:	4eb9 0004 9174 	jsr 49174 <_Thread_Get>                     <== NOT EXECUTED
  switch ( location ) {                                               
   4711a:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4711c:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   47120:	6620           	bnes 47142 <rtems_task_get_note+0x7a>       <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      api = the_thread->API_Extensions[ THREAD_API_RTEMS ];           
      *note = api->Notepads[ notepad ];                               
   47122:	2240           	moveal %d0,%a1                              <== NOT EXECUTED
   47124:	2069 00fc      	moveal %a1@(252),%a0                        <== NOT EXECUTED
   47128:	24b0 2c1e      	movel %a0@(0000001e,%d2:l:4),%a2@           <== NOT EXECUTED
      _Thread_Enable_dispatch();                                      
   4712c:	4eb9 0004 914e 	jsr 4914e <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   47132:	4280           	clrl %d0                                    <== NOT EXECUTED
   47134:	600e           	bras 47144 <rtems_task_get_note+0x7c>       <== NOT EXECUTED
  register Thread_Control *the_thread;                                
  Objects_Locations        location;                                  
  RTEMS_API_Control       *api;                                       
                                                                      
  if ( !rtems_configuration_get_notepads_enabled() )                  
    return RTEMS_NOT_CONFIGURED;                                      
   47136:	7016           	moveq #22,%d0                               <== NOT EXECUTED
   47138:	600a           	bras 47144 <rtems_task_get_note+0x7c>       <== NOT EXECUTED
                                                                      
  if ( !note )                                                        
    return RTEMS_INVALID_ADDRESS;                                     
   4713a:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4713c:	6006           	bras 47144 <rtems_task_get_note+0x7c>       <== NOT EXECUTED
   *  NOTE:  There is no check for < RTEMS_NOTEPAD_FIRST because that would
   *         be checking an unsigned number for being negative.       
   */                                                                 
                                                                      
  if ( notepad > RTEMS_NOTEPAD_LAST )                                 
    return RTEMS_INVALID_NUMBER;                                      
   4713e:	700a           	moveq #10,%d0                               <== NOT EXECUTED
   47140:	6002           	bras 47144 <rtems_task_get_note+0x7c>       <== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   47142:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   47144:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   47148:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   4714c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00045958 <rtems_task_ident>: rtems_status_code rtems_task_ident( rtems_name name, uint32_t node, rtems_id *id ) {
   45958:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4595c:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   45960:	206e 0010      	moveal %fp@(16),%a0                         <== NOT EXECUTED
  Objects_Name_or_id_lookup_errors  status;                           
                                                                      
  if ( !id )                                                          
   45964:	4a88           	tstl %a0                                    <== NOT EXECUTED
   45966:	6734           	beqs 4599c <rtems_task_ident+0x44>          <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( name == OBJECTS_ID_OF_SELF ) {                                 
   45968:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4596a:	660c           	bnes 45978 <rtems_task_ident+0x20>          <== NOT EXECUTED
    *id = _Thread_Executing->Object.id;                               
   4596c:	2279 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a1 <== NOT EXECUTED
   45972:	20a9 0008      	movel %a1@(8),%a0@                          <== NOT EXECUTED
    return RTEMS_SUCCESSFUL;                                          
   45976:	6026           	bras 4599e <rtems_task_ident+0x46>          <== NOT EXECUTED
   }                                                                  
                                                                      
  status = _Objects_Name_to_id_u32( &_RTEMS_tasks_Information, name, node, id );
   45978:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   4597a:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   4597e:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   45980:	4879 0005 c648 	pea 5c648 <_RTEMS_tasks_Information>        <== NOT EXECUTED
   45986:	4eb9 0004 6dd0 	jsr 46dd0 <_Objects_Name_to_id_u32>         <== NOT EXECUTED
                                                                      
  return _Status_Object_name_errors_to_status[ status ];              
   4598c:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   45990:	41f9 0005 a15e 	lea 5a15e <_Status_Object_name_errors_to_status>,%a0<== NOT EXECUTED
   45996:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
   4599a:	6002           	bras 4599e <rtems_task_ident+0x46>          <== NOT EXECUTED
)                                                                     
{                                                                     
  Objects_Name_or_id_lookup_errors  status;                           
                                                                      
  if ( !id )                                                          
    return RTEMS_INVALID_ADDRESS;                                     
   4599c:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   }                                                                  
                                                                      
  status = _Objects_Name_to_id_u32( &_RTEMS_tasks_Information, name, node, id );
                                                                      
  return _Status_Object_name_errors_to_status[ status ];              
}                                                                     
   4599e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0005147c <rtems_task_is_suspended>: */ rtems_status_code rtems_task_is_suspended( rtems_id id ) {
   5147c:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
  register Thread_Control *the_thread;                                
  Objects_Locations        location;                                  
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   51480:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   51484:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   51488:	4eb9 0005 4da0 	jsr 54da0 <_Thread_Get>                     <== NOT EXECUTED
  switch ( location ) {                                               
   5148e:	508f           	addql #8,%sp                                <== NOT EXECUTED
   51490:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   51494:	661c           	bnes 514b2 <rtems_task_is_suspended+0x36>   <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE bool _States_Is_suspended (                      
  States_Control the_states                                           
)                                                                     
{                                                                     
   return (the_states & STATES_SUSPENDED);                            
   51496:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   51498:	7202           	moveq #2,%d1                                <== NOT EXECUTED
   5149a:	c2a8 0010      	andl %a0@(16),%d1                           <== NOT EXECUTED
   5149e:	41f9 0005 4d7a 	lea 54d7a <_Thread_Enable_dispatch>,%a0     <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( !_States_Is_suspended( the_thread->current_state ) ) {     
   514a4:	6606           	bnes 514ac <rtems_task_is_suspended+0x30>   <== NOT EXECUTED
        _Thread_Enable_dispatch();                                    
   514a6:	4e90           	jsr %a0@                                    <== NOT EXECUTED
        return RTEMS_SUCCESSFUL;                                      
   514a8:	4280           	clrl %d0                                    <== NOT EXECUTED
   514aa:	6008           	bras 514b4 <rtems_task_is_suspended+0x38>   <== NOT EXECUTED
      }                                                               
      _Thread_Enable_dispatch();                                      
   514ac:	4e90           	jsr %a0@                                    <== NOT EXECUTED
      return RTEMS_ALREADY_SUSPENDED;                                 
   514ae:	700f           	moveq #15,%d0                               <== NOT EXECUTED
   514b0:	6002           	bras 514b4 <rtems_task_is_suspended+0x38>   <== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   514b2:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   514b4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

0004b748 <rtems_task_mode>: rtems_status_code rtems_task_mode( rtems_mode mode_set, rtems_mode mask, rtems_mode *previous_mode_set ) {
   4b748:	4e56 ffe4      	linkw %fp,#-28                              
   4b74c:	48d7 1c3c      	moveml %d2-%d5/%a2-%a4,%sp@                 
   4b750:	262e 0008      	movel %fp@(8),%d3                           
   4b754:	282e 000c      	movel %fp@(12),%d4                          
   4b758:	286e 0010      	moveal %fp@(16),%a4                         
  ASR_Information    *asr;                                            
  bool                is_asr_enabled = false;                         
  bool                needs_asr_dispatching = false;                  
  rtems_mode          old_mode;                                       
                                                                      
  if ( !previous_mode_set )                                           
   4b75c:	4a8c           	tstl %a4                                    
   4b75e:	6700 0104      	beqw 4b864 <rtems_task_mode+0x11c>          
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  executing     = _Thread_Executing;                                  
   4b762:	2679 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a3 
  api = executing->API_Extensions[ THREAD_API_RTEMS ];                
  asr = &api->Signal;                                                 
                                                                      
  old_mode  = (executing->is_preemptible) ? RTEMS_PREEMPT : RTEMS_NO_PREEMPT;
   4b768:	4a2b 0074      	tstb %a3@(116)                              
   4b76c:	57c2           	seq %d2                                     
                                                                      
  if ( !previous_mode_set )                                           
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  executing     = _Thread_Executing;                                  
  api = executing->API_Extensions[ THREAD_API_RTEMS ];                
   4b76e:	246b 00fc      	moveal %a3@(252),%a2                        
  asr = &api->Signal;                                                 
                                                                      
  old_mode  = (executing->is_preemptible) ? RTEMS_PREEMPT : RTEMS_NO_PREEMPT;
   4b772:	49c2           	extbl %d2                                   
   4b774:	0282 0000 0100 	andil #256,%d2                              
                                                                      
  if ( executing->budget_algorithm == THREAD_CPU_BUDGET_ALGORITHM_NONE )
   4b77a:	4aab 007a      	tstl %a3@(122)                              
   4b77e:	6704           	beqs 4b784 <rtems_task_mode+0x3c>           <== ALWAYS TAKEN
    old_mode |= RTEMS_NO_TIMESLICE;                                   
  else                                                                
    old_mode |= RTEMS_TIMESLICE;                                      
   4b780:	08c2 0009      	bset #9,%d2                                 <== NOT EXECUTED
                                                                      
  old_mode |= (asr->is_enabled) ? RTEMS_ASR : RTEMS_NO_ASR;           
   4b784:	4a2a 0008      	tstb %a2@(8)                                
   4b788:	57c5           	seq %d5                                     
  old_mode |= _ISR_Get_level();                                       
   4b78a:	4eb9 0004 87e4 	jsr 487e4 <_CPU_ISR_Get_level>              
  if ( executing->budget_algorithm == THREAD_CPU_BUDGET_ALGORITHM_NONE )
    old_mode |= RTEMS_NO_TIMESLICE;                                   
  else                                                                
    old_mode |= RTEMS_TIMESLICE;                                      
                                                                      
  old_mode |= (asr->is_enabled) ? RTEMS_ASR : RTEMS_NO_ASR;           
   4b790:	49c5           	extbl %d5                                   
   4b792:	0285 0000 0400 	andil #1024,%d5                             
   4b798:	8085           	orl %d5,%d0                                 
  old_mode |= _ISR_Get_level();                                       
   4b79a:	8082           	orl %d2,%d0                                 
   4b79c:	2880           	movel %d0,%a4@                              
  *previous_mode_set = old_mode;                                      
                                                                      
  /*                                                                  
   *  These are generic thread scheduling characteristics.            
   */                                                                 
  if ( mask & RTEMS_PREEMPT_MASK )                                    
   4b79e:	0804 0008      	btst #8,%d4                                 
   4b7a2:	670c           	beqs 4b7b0 <rtems_task_mode+0x68>           <== NEVER TAKEN
    executing->is_preemptible = _Modes_Is_preempt(mode_set) ? true : false;
   4b7a4:	0803 0008      	btst #8,%d3                                 
   4b7a8:	57c0           	seq %d0                                     
   4b7aa:	4480           	negl %d0                                    
   4b7ac:	1740 0074      	moveb %d0,%a3@(116)                         
                                                                      
  if ( mask & RTEMS_TIMESLICE_MASK ) {                                
   4b7b0:	0804 0009      	btst #9,%d4                                 
   4b7b4:	671c           	beqs 4b7d2 <rtems_task_mode+0x8a>           
    if ( _Modes_Is_timeslice(mode_set) ) {                            
   4b7b6:	0803 0009      	btst #9,%d3                                 
   4b7ba:	6712           	beqs 4b7ce <rtems_task_mode+0x86>           <== ALWAYS TAKEN
      executing->budget_algorithm = THREAD_CPU_BUDGET_ALGORITHM_RESET_TIMESLICE;
      executing->cpu_time_budget  = _Thread_Ticks_per_timeslice;      
   4b7bc:	41f9 0005 c680 	lea 5c680 <_Thread_Ticks_per_timeslice>,%a0 <== NOT EXECUTED
  if ( mask & RTEMS_PREEMPT_MASK )                                    
    executing->is_preemptible = _Modes_Is_preempt(mode_set) ? true : false;
                                                                      
  if ( mask & RTEMS_TIMESLICE_MASK ) {                                
    if ( _Modes_Is_timeslice(mode_set) ) {                            
      executing->budget_algorithm = THREAD_CPU_BUDGET_ALGORITHM_RESET_TIMESLICE;
   4b7c2:	7001           	moveq #1,%d0                                <== NOT EXECUTED
      executing->cpu_time_budget  = _Thread_Ticks_per_timeslice;      
   4b7c4:	2750 0076      	movel %a0@,%a3@(118)                        <== NOT EXECUTED
  if ( mask & RTEMS_PREEMPT_MASK )                                    
    executing->is_preemptible = _Modes_Is_preempt(mode_set) ? true : false;
                                                                      
  if ( mask & RTEMS_TIMESLICE_MASK ) {                                
    if ( _Modes_Is_timeslice(mode_set) ) {                            
      executing->budget_algorithm = THREAD_CPU_BUDGET_ALGORITHM_RESET_TIMESLICE;
   4b7c8:	2740 007a      	movel %d0,%a3@(122)                         <== NOT EXECUTED
   4b7cc:	6004           	bras 4b7d2 <rtems_task_mode+0x8a>           <== NOT EXECUTED
      executing->cpu_time_budget  = _Thread_Ticks_per_timeslice;      
    } else                                                            
      executing->budget_algorithm = THREAD_CPU_BUDGET_ALGORITHM_NONE; 
   4b7ce:	42ab 007a      	clrl %a3@(122)                              
  }                                                                   
                                                                      
  /*                                                                  
   *  Set the new interrupt level                                     
   */                                                                 
  if ( mask & RTEMS_INTERRUPT_MASK )                                  
   4b7d2:	7007           	moveq #7,%d0                                
   4b7d4:	c084           	andl %d4,%d0                                
   4b7d6:	6712           	beqs 4b7ea <rtems_task_mode+0xa2>           
 */                                                                   
RTEMS_INLINE_ROUTINE void _Modes_Set_interrupt_level (                
  Modes_Control mode_set                                              
)                                                                     
{                                                                     
  _ISR_Set_level( _Modes_Get_interrupt_level( mode_set ) );           
   4b7d8:	40c0           	movew %sr,%d0                               
 */                                                                   
RTEMS_INLINE_ROUTINE ISR_Level _Modes_Get_interrupt_level (           
  Modes_Control mode_set                                              
)                                                                     
{                                                                     
  return ( mode_set & RTEMS_INTERRUPT_MASK );                         
   4b7da:	7207           	moveq #7,%d1                                
   4b7dc:	c283           	andl %d3,%d1                                
 */                                                                   
RTEMS_INLINE_ROUTINE void _Modes_Set_interrupt_level (                
  Modes_Control mode_set                                              
)                                                                     
{                                                                     
  _ISR_Set_level( _Modes_Get_interrupt_level( mode_set ) );           
   4b7de:	0280 0000 f8ff 	andil #63743,%d0                            
   4b7e4:	e189           	lsll #8,%d1                                 
   4b7e6:	8081           	orl %d1,%d0                                 
   4b7e8:	46c0           	movew %d0,%sr                               
   *  This is specific to the RTEMS API                               
   */                                                                 
  is_asr_enabled = false;                                             
  needs_asr_dispatching = false;                                      
                                                                      
  if ( mask & RTEMS_ASR_MASK ) {                                      
   4b7ea:	0804 000a      	btst #10,%d4                                
   4b7ee:	6740           	beqs 4b830 <rtems_task_mode+0xe8>           
    is_asr_enabled = _Modes_Is_asr_disabled( mode_set ) ? false : true;
    if ( is_asr_enabled != asr->is_enabled ) {                        
   4b7f0:	4281           	clrl %d1                                    
   4b7f2:	122a 0008      	moveb %a2@(8),%d1                           
   4b7f6:	4282           	clrl %d2                                    
 *  Output:                                                           
 *    *previous_mode_set - previous mode set                          
 *     always return RTEMS_SUCCESSFUL;                                
 */                                                                   
                                                                      
rtems_status_code rtems_task_mode(                                    
   4b7f8:	0803 000a      	btst #10,%d3                                
   4b7fc:	57c0           	seq %d0                                     
   4b7fe:	4480           	negl %d0                                    
  is_asr_enabled = false;                                             
  needs_asr_dispatching = false;                                      
                                                                      
  if ( mask & RTEMS_ASR_MASK ) {                                      
    is_asr_enabled = _Modes_Is_asr_disabled( mode_set ) ? false : true;
    if ( is_asr_enabled != asr->is_enabled ) {                        
   4b800:	1400           	moveb %d0,%d2                               
   4b802:	b282           	cmpl %d2,%d1                                
   4b804:	672a           	beqs 4b830 <rtems_task_mode+0xe8>           <== ALWAYS TAKEN
      asr->is_enabled = is_asr_enabled;                               
   4b806:	1540 0008      	moveb %d0,%a2@(8)                           <== NOT EXECUTED
)                                                                     
{                                                                     
  rtems_signal_set _signals;                                          
  ISR_Level        _level;                                            
                                                                      
  _ISR_Disable( _level );                                             
   4b80a:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   4b810:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   4b812:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   4b814:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
    _signals                     = information->signals_pending;      
   4b816:	202a 0016      	movel %a2@(22),%d0                          <== NOT EXECUTED
    information->signals_pending = information->signals_posted;       
   4b81a:	256a 0012 0016 	movel %a2@(18),%a2@(22)                     <== NOT EXECUTED
    information->signals_posted  = _signals;                          
   4b820:	2540 0012      	movel %d0,%a2@(18)                          <== NOT EXECUTED
  _ISR_Enable( _level );                                              
   4b824:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  This is specific to the RTEMS API                               
   */                                                                 
  is_asr_enabled = false;                                             
  needs_asr_dispatching = false;                                      
   4b826:	4aaa 0012      	tstl %a2@(18)                               <== NOT EXECUTED
   4b82a:	56c0           	sne %d0                                     <== NOT EXECUTED
   4b82c:	4480           	negl %d0                                    <== NOT EXECUTED
   4b82e:	6002           	bras 4b832 <rtems_task_mode+0xea>           <== NOT EXECUTED
   4b830:	4200           	clrb %d0                                    
        needs_asr_dispatching = true;                                 
      }                                                               
    }                                                                 
  }                                                                   
                                                                      
  if ( _System_state_Is_up( _System_state_Get() ) ) {                 
   4b832:	7203           	moveq #3,%d1                                
   4b834:	b2b9 0005 c830 	cmpl 5c830 <_System_state_Current>,%d1      
   4b83a:	662c           	bnes 4b868 <rtems_task_mode+0x120>          <== NEVER TAKEN
  bool are_signals_pending                                            
)                                                                     
{                                                                     
  Thread_Control     *executing;                                      
                                                                      
  executing = _Thread_Executing;                                      
   4b83c:	2079 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a0 
                                                                      
  if ( are_signals_pending ||                                         
   4b842:	4a00           	tstb %d0                                    
   4b844:	660e           	bnes 4b854 <rtems_task_mode+0x10c>          <== NEVER TAKEN
   4b846:	b1f9 0005 c888 	cmpal 5c888 <_Per_CPU_Information+0x10>,%a0 
   4b84c:	671a           	beqs 4b868 <rtems_task_mode+0x120>          <== ALWAYS TAKEN
       (!_Thread_Is_heir( executing ) && executing->is_preemptible) ) {
   4b84e:	4a28 0074      	tstb %a0@(116)                              <== NOT EXECUTED
   4b852:	6714           	beqs 4b868 <rtems_task_mode+0x120>          <== NOT EXECUTED
    _Thread_Dispatch_necessary = true;                                
   4b854:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4b856:	13c0 0005 c890 	moveb %d0,5c890 <_Per_CPU_Information+0x18> <== NOT EXECUTED
     if (_Thread_Evaluate_is_dispatch_needed( needs_asr_dispatching ) )
      _Thread_Dispatch();                                             
   4b85c:	4eb9 0004 75e0 	jsr 475e0 <_Thread_Dispatch>                <== NOT EXECUTED
   4b862:	6004           	bras 4b868 <rtems_task_mode+0x120>          <== NOT EXECUTED
  bool                is_asr_enabled = false;                         
  bool                needs_asr_dispatching = false;                  
  rtems_mode          old_mode;                                       
                                                                      
  if ( !previous_mode_set )                                           
    return RTEMS_INVALID_ADDRESS;                                     
   4b864:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4b866:	6002           	bras 4b86a <rtems_task_mode+0x122>          <== NOT EXECUTED
  if ( _System_state_Is_up( _System_state_Get() ) ) {                 
     if (_Thread_Evaluate_is_dispatch_needed( needs_asr_dispatching ) )
      _Thread_Dispatch();                                             
  }                                                                   
                                                                      
  return RTEMS_SUCCESSFUL;                                            
   4b868:	4280           	clrl %d0                                    
}                                                                     
   4b86a:	4cee 1c3c ffe4 	moveml %fp@(-28),%d2-%d5/%a2-%a4            
   4b870:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046188 <rtems_task_restart>: rtems_status_code rtems_task_restart( rtems_id id, uint32_t argument ) {
   46188:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
  register Thread_Control *the_thread;                                
  Objects_Locations        location;                                  
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   4618c:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   46190:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   46194:	4eb9 0004 7efc 	jsr 47efc <_Thread_Get>                     <== NOT EXECUTED
  switch ( location ) {                                               
   4619a:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4619c:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   461a0:	6628           	bnes 461ca <rtems_task_restart+0x42>        <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( _Thread_Restart( the_thread, NULL, argument ) ) {          
   461a2:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   461a6:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   461a8:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   461aa:	4eb9 0004 865c 	jsr 4865c <_Thread_Restart>                 <== NOT EXECUTED
   461b0:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   461b4:	41f9 0004 7ed6 	lea 47ed6 <_Thread_Enable_dispatch>,%a0     <== NOT EXECUTED
   461ba:	4a00           	tstb %d0                                    <== NOT EXECUTED
   461bc:	6706           	beqs 461c4 <rtems_task_restart+0x3c>        <== NOT EXECUTED
        _Thread_Enable_dispatch();                                    
   461be:	4e90           	jsr %a0@                                    <== NOT EXECUTED
        return RTEMS_SUCCESSFUL;                                      
   461c0:	4280           	clrl %d0                                    <== NOT EXECUTED
   461c2:	6008           	bras 461cc <rtems_task_restart+0x44>        <== NOT EXECUTED
      }                                                               
      _Thread_Enable_dispatch();                                      
   461c4:	4e90           	jsr %a0@                                    <== NOT EXECUTED
      return RTEMS_INCORRECT_STATE;                                   
   461c6:	700e           	moveq #14,%d0                               <== NOT EXECUTED
   461c8:	6002           	bras 461cc <rtems_task_restart+0x44>        <== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   461ca:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   461cc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00048790 <rtems_task_resume>: */ rtems_status_code rtems_task_resume( rtems_id id ) {
   48790:	4e56 fffc      	linkw %fp,#-4                               
   48794:	2f0a           	movel %a2,%sp@-                             
  register Thread_Control *the_thread;                                
  Objects_Locations        location;                                  
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   48796:	486e fffc      	pea %fp@(-4)                                
   4879a:	2f2e 0008      	movel %fp@(8),%sp@-                         
   4879e:	4eb9 0004 a554 	jsr 4a554 <_Thread_Get>                     
  switch ( location ) {                                               
   487a4:	508f           	addql #8,%sp                                
   487a6:	4aae fffc      	tstl %fp@(-4)                               
   487aa:	662a           	bnes 487d6 <rtems_task_resume+0x46>         <== NEVER TAKEN
 */                                                                   
RTEMS_INLINE_ROUTINE bool _States_Is_suspended (                      
  States_Control the_states                                           
)                                                                     
{                                                                     
   return (the_states & STATES_SUSPENDED);                            
   487ac:	7202           	moveq #2,%d1                                
   487ae:	2040           	moveal %d0,%a0                              
   487b0:	45f9 0004 a52e 	lea 4a52e <_Thread_Enable_dispatch>,%a2     
   487b6:	c2a8 0010      	andl %a0@(16),%d1                           
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( _States_Is_suspended( the_thread->current_state ) ) {      
   487ba:	6714           	beqs 487d0 <rtems_task_resume+0x40>         <== NEVER TAKEN
        _Thread_Resume( the_thread, true );                           
   487bc:	4878 0001      	pea 1 <ADD>                                 
   487c0:	2f00           	movel %d0,%sp@-                             
   487c2:	4eb9 0004 acb4 	jsr 4acb4 <_Thread_Resume>                  
        _Thread_Enable_dispatch();                                    
   487c8:	4e92           	jsr %a2@                                    
        return RTEMS_SUCCESSFUL;                                      
   487ca:	508f           	addql #8,%sp                                
   487cc:	4280           	clrl %d0                                    
   487ce:	6008           	bras 487d8 <rtems_task_resume+0x48>         
      }                                                               
      _Thread_Enable_dispatch();                                      
   487d0:	4e92           	jsr %a2@                                    <== NOT EXECUTED
      return RTEMS_INCORRECT_STATE;                                   
   487d2:	700e           	moveq #14,%d0                               <== NOT EXECUTED
   487d4:	6002           	bras 487d8 <rtems_task_resume+0x48>         <== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   487d6:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   487d8:	246e fff8      	moveal %fp@(-8),%a2                         
   487dc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00047230 <rtems_task_set_note>: rtems_status_code rtems_task_set_note( rtems_id id, uint32_t notepad, uint32_t note ) {
   47230:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   47234:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   47238:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4723a:	262e 0010      	movel %fp@(16),%d3                          <== NOT EXECUTED
   4723e:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   47240:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
  register Thread_Control *the_thread;                                
  Objects_Locations        location;                                  
  RTEMS_API_Control       *api;                                       
                                                                      
  if ( !rtems_configuration_get_notepads_enabled() )                  
   47244:	4a39 0005 d604 	tstb 5d604 <Configuration_RTEMS_API+0x4>    <== NOT EXECUTED
   4724a:	674e           	beqs 4729a <rtems_task_set_note+0x6a>       <== NOT EXECUTED
  /*                                                                  
   *  NOTE:  There is no check for < RTEMS_NOTEPAD_FIRST because that would
   *         be checking an unsigned number for being negative.       
   */                                                                 
                                                                      
  if ( notepad > RTEMS_NOTEPAD_LAST )                                 
   4724c:	720f           	moveq #15,%d1                               <== NOT EXECUTED
   4724e:	b282           	cmpl %d2,%d1                                <== NOT EXECUTED
   47250:	654c           	bcss 4729e <rtems_task_set_note+0x6e>       <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Optimize the most likely case to avoid the Thread_Dispatch.     
   */                                                                 
                                                                      
  if ( _Objects_Are_ids_equal( id, OBJECTS_ID_OF_SELF ) ||            
   47252:	4a80           	tstl %d0                                    <== NOT EXECUTED
   47254:	670c           	beqs 47262 <rtems_task_set_note+0x32>       <== NOT EXECUTED
       _Objects_Are_ids_equal( id, _Thread_Executing->Object.id ) ) { 
   47256:	2079 0005 f2cc 	moveal 5f2cc <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Optimize the most likely case to avoid the Thread_Dispatch.     
   */                                                                 
                                                                      
  if ( _Objects_Are_ids_equal( id, OBJECTS_ID_OF_SELF ) ||            
   4725c:	b0a8 0008      	cmpl %a0@(8),%d0                            <== NOT EXECUTED
   47260:	6610           	bnes 47272 <rtems_task_set_note+0x42>       <== NOT EXECUTED
       _Objects_Are_ids_equal( id, _Thread_Executing->Object.id ) ) { 
      api = _Thread_Executing->API_Extensions[ THREAD_API_RTEMS ];    
   47262:	2079 0005 f2cc 	moveal 5f2cc <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
      api->Notepads[ notepad ] = note;                                
   47268:	2068 00fc      	moveal %a0@(252),%a0                        <== NOT EXECUTED
   4726c:	2183 2c1e      	movel %d3,%a0@(0000001e,%d2:l:4)            <== NOT EXECUTED
   47270:	6024           	bras 47296 <rtems_task_set_note+0x66>       <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
  }                                                                   
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   47272:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   47276:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   47278:	4eb9 0004 9174 	jsr 49174 <_Thread_Get>                     <== NOT EXECUTED
  switch ( location ) {                                               
   4727e:	508f           	addql #8,%sp                                <== NOT EXECUTED
   47280:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   47284:	661c           	bnes 472a2 <rtems_task_set_note+0x72>       <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      api = the_thread->API_Extensions[ THREAD_API_RTEMS ];           
      api->Notepads[ notepad ] = note;                                
   47286:	2240           	moveal %d0,%a1                              <== NOT EXECUTED
   47288:	2069 00fc      	moveal %a1@(252),%a0                        <== NOT EXECUTED
   4728c:	2183 2c1e      	movel %d3,%a0@(0000001e,%d2:l:4)            <== NOT EXECUTED
      _Thread_Enable_dispatch();                                      
   47290:	4eb9 0004 914e 	jsr 4914e <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   47296:	4280           	clrl %d0                                    <== NOT EXECUTED
   47298:	600a           	bras 472a4 <rtems_task_set_note+0x74>       <== NOT EXECUTED
  register Thread_Control *the_thread;                                
  Objects_Locations        location;                                  
  RTEMS_API_Control       *api;                                       
                                                                      
  if ( !rtems_configuration_get_notepads_enabled() )                  
    return RTEMS_NOT_CONFIGURED;                                      
   4729a:	7016           	moveq #22,%d0                               <== NOT EXECUTED
   4729c:	6006           	bras 472a4 <rtems_task_set_note+0x74>       <== NOT EXECUTED
   *  NOTE:  There is no check for < RTEMS_NOTEPAD_FIRST because that would
   *         be checking an unsigned number for being negative.       
   */                                                                 
                                                                      
  if ( notepad > RTEMS_NOTEPAD_LAST )                                 
    return RTEMS_INVALID_NUMBER;                                      
   4729e:	700a           	moveq #10,%d0                               <== NOT EXECUTED
   472a0:	6002           	bras 472a4 <rtems_task_set_note+0x74>       <== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   472a2:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   472a4:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   472a8:	262e fff8      	movel %fp@(-8),%d3                          <== NOT EXECUTED
   472ac:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000492cc <rtems_task_set_priority>: rtems_status_code rtems_task_set_priority( rtems_id id, rtems_task_priority new_priority, rtems_task_priority *old_priority ) {
   492cc:	4e56 fffc      	linkw %fp,#-4                               
   492d0:	2f0a           	movel %a2,%sp@-                             
   492d2:	246e 0010      	moveal %fp@(16),%a2                         
   492d6:	2f02           	movel %d2,%sp@-                             
   492d8:	242e 000c      	movel %fp@(12),%d2                          
  register Thread_Control *the_thread;                                
  Objects_Locations        location;                                  
                                                                      
  if ( new_priority != RTEMS_CURRENT_PRIORITY &&                      
   492dc:	670c           	beqs 492ea <rtems_task_set_priority+0x1e>   <== NEVER TAKEN
RTEMS_INLINE_ROUTINE bool _RTEMS_tasks_Priority_is_valid (            
  rtems_task_priority the_priority                                    
)                                                                     
{                                                                     
  return (  ( the_priority >= RTEMS_MINIMUM_PRIORITY ) &&             
            ( the_priority <= RTEMS_MAXIMUM_PRIORITY ) );             
   492de:	4280           	clrl %d0                                    
   492e0:	1039 0005 e7c2 	moveb 5e7c2 <rtems_maximum_priority>,%d0    
   492e6:	b082           	cmpl %d2,%d0                                
   492e8:	654e           	bcss 49338 <rtems_task_set_priority+0x6c>   <== NEVER TAKEN
       !_RTEMS_tasks_Priority_is_valid( new_priority ) )              
    return RTEMS_INVALID_PRIORITY;                                    
                                                                      
  if ( !old_priority )                                                
   492ea:	4a8a           	tstl %a2                                    
   492ec:	674e           	beqs 4933c <rtems_task_set_priority+0x70>   <== NEVER TAKEN
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   492ee:	486e fffc      	pea %fp@(-4)                                
   492f2:	2f2e 0008      	movel %fp@(8),%sp@-                         
   492f6:	4eb9 0004 b1dc 	jsr 4b1dc <_Thread_Get>                     
  switch ( location ) {                                               
   492fc:	508f           	addql #8,%sp                                
    return RTEMS_INVALID_PRIORITY;                                    
                                                                      
  if ( !old_priority )                                                
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   492fe:	2040           	moveal %d0,%a0                              
  switch ( location ) {                                               
   49300:	4aae fffc      	tstl %fp@(-4)                               
   49304:	663a           	bnes 49340 <rtems_task_set_priority+0x74>   <== NEVER TAKEN
                                                                      
    case OBJECTS_LOCAL:                                               
      /* XXX need helper to "convert" from core priority */           
      *old_priority = the_thread->current_priority;                   
   49306:	24a8 0014      	movel %a0@(20),%a2@                         
      if ( new_priority != RTEMS_CURRENT_PRIORITY ) {                 
   4930a:	4a82           	tstl %d2                                    
   4930c:	6720           	beqs 4932e <rtems_task_set_priority+0x62>   <== NEVER TAKEN
        the_thread->real_priority = new_priority;                     
   4930e:	2142 0018      	movel %d2,%a0@(24)                          
        if ( the_thread->resource_count == 0 ||                       
   49312:	4aa8 001c      	tstl %a0@(28)                               
   49316:	6706           	beqs 4931e <rtems_task_set_priority+0x52>   <== ALWAYS TAKEN
   49318:	b4a8 0014      	cmpl %a0@(20),%d2                           <== NOT EXECUTED
   4931c:	6410           	bccs 4932e <rtems_task_set_priority+0x62>   <== NOT EXECUTED
             the_thread->current_priority > new_priority )            
          _Thread_Change_priority( the_thread, new_priority, false ); 
   4931e:	42a7           	clrl %sp@-                                  
   49320:	2f02           	movel %d2,%sp@-                             
   49322:	2f08           	movel %a0,%sp@-                             
   49324:	4eb9 0004 ad1c 	jsr 4ad1c <_Thread_Change_priority>         
   4932a:	4fef 000c      	lea %sp@(12),%sp                            
      }                                                               
      _Thread_Enable_dispatch();                                      
   4932e:	4eb9 0004 b1b6 	jsr 4b1b6 <_Thread_Enable_dispatch>         
      return RTEMS_SUCCESSFUL;                                        
   49334:	4280           	clrl %d0                                    
   49336:	600a           	bras 49342 <rtems_task_set_priority+0x76>   
  register Thread_Control *the_thread;                                
  Objects_Locations        location;                                  
                                                                      
  if ( new_priority != RTEMS_CURRENT_PRIORITY &&                      
       !_RTEMS_tasks_Priority_is_valid( new_priority ) )              
    return RTEMS_INVALID_PRIORITY;                                    
   49338:	7013           	moveq #19,%d0                               <== NOT EXECUTED
   4933a:	6006           	bras 49342 <rtems_task_set_priority+0x76>   <== NOT EXECUTED
                                                                      
  if ( !old_priority )                                                
    return RTEMS_INVALID_ADDRESS;                                     
   4933c:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4933e:	6002           	bras 49342 <rtems_task_set_priority+0x76>   <== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   49340:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   49342:	242e fff4      	movel %fp@(-12),%d2                         
   49346:	246e fff8      	moveal %fp@(-8),%a2                         
   4934a:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

00045a28 <rtems_task_start>: rtems_status_code rtems_task_start( rtems_id id, rtems_task_entry entry_point, rtems_task_argument argument ) {
   45a28:	4e56 fffc      	linkw %fp,#-4                               
   45a2c:	2f02           	movel %d2,%sp@-                             
   45a2e:	242e 000c      	movel %fp@(12),%d2                          
  register Thread_Control *the_thread;                                
  Objects_Locations        location;                                  
                                                                      
  if ( entry_point == NULL )                                          
   45a32:	6742           	beqs 45a76 <rtems_task_start+0x4e>          
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   45a34:	486e fffc      	pea %fp@(-4)                                
   45a38:	2f2e 0008      	movel %fp@(8),%sp@-                         
   45a3c:	4eb9 0004 7744 	jsr 47744 <_Thread_Get>                     
  switch ( location ) {                                               
   45a42:	508f           	addql #8,%sp                                
   45a44:	4aae fffc      	tstl %fp@(-4)                               
   45a48:	6630           	bnes 45a7a <rtems_task_start+0x52>          <== NEVER TAKEN
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( _Thread_Start(                                             
   45a4a:	2f2e 0010      	movel %fp@(16),%sp@-                        
   45a4e:	42a7           	clrl %sp@-                                  
   45a50:	2f02           	movel %d2,%sp@-                             
   45a52:	42a7           	clrl %sp@-                                  
   45a54:	2f00           	movel %d0,%sp@-                             
   45a56:	4eb9 0004 8064 	jsr 48064 <_Thread_Start>                   
   45a5c:	4fef 0014      	lea %sp@(20),%sp                            
   45a60:	41f9 0004 771e 	lea 4771e <_Thread_Enable_dispatch>,%a0     
   45a66:	4a00           	tstb %d0                                    
   45a68:	6706           	beqs 45a70 <rtems_task_start+0x48>          <== NEVER TAKEN
             the_thread, THREAD_START_NUMERIC, entry_point, NULL, argument ) ) {
        _Thread_Enable_dispatch();                                    
   45a6a:	4e90           	jsr %a0@                                    
        return RTEMS_SUCCESSFUL;                                      
   45a6c:	4280           	clrl %d0                                    
   45a6e:	600c           	bras 45a7c <rtems_task_start+0x54>          
      }                                                               
      _Thread_Enable_dispatch();                                      
   45a70:	4e90           	jsr %a0@                                    <== NOT EXECUTED
      return RTEMS_INCORRECT_STATE;                                   
   45a72:	700e           	moveq #14,%d0                               <== NOT EXECUTED
   45a74:	6006           	bras 45a7c <rtems_task_start+0x54>          <== NOT EXECUTED
{                                                                     
  register Thread_Control *the_thread;                                
  Objects_Locations        location;                                  
                                                                      
  if ( entry_point == NULL )                                          
    return RTEMS_INVALID_ADDRESS;                                     
   45a76:	7009           	moveq #9,%d0                                
   45a78:	6002           	bras 45a7c <rtems_task_start+0x54>          
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   45a7a:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   45a7c:	242e fff8      	movel %fp@(-8),%d2                          
   45a80:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00045a84 <rtems_task_suspend>: */ rtems_status_code rtems_task_suspend( rtems_id id ) {
   45a84:	4e56 fffc      	linkw %fp,#-4                               
   45a88:	2f0a           	movel %a2,%sp@-                             
  register Thread_Control *the_thread;                                
  Objects_Locations        location;                                  
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   45a8a:	486e fffc      	pea %fp@(-4)                                
   45a8e:	2f2e 0008      	movel %fp@(8),%sp@-                         
   45a92:	4eb9 0004 7744 	jsr 47744 <_Thread_Get>                     
  switch ( location ) {                                               
   45a98:	508f           	addql #8,%sp                                
   45a9a:	4aae fffc      	tstl %fp@(-4)                               
   45a9e:	6626           	bnes 45ac6 <rtems_task_suspend+0x42>        <== NEVER TAKEN
 */                                                                   
RTEMS_INLINE_ROUTINE bool _States_Is_suspended (                      
  States_Control the_states                                           
)                                                                     
{                                                                     
   return (the_states & STATES_SUSPENDED);                            
   45aa0:	7202           	moveq #2,%d1                                
   45aa2:	2040           	moveal %d0,%a0                              
   45aa4:	45f9 0004 771e 	lea 4771e <_Thread_Enable_dispatch>,%a2     
   45aaa:	c2a8 0010      	andl %a0@(16),%d1                           
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( !_States_Is_suspended( the_thread->current_state ) ) {     
   45aae:	6610           	bnes 45ac0 <rtems_task_suspend+0x3c>        <== NEVER TAKEN
        _Thread_Suspend( the_thread );                                
   45ab0:	2f00           	movel %d0,%sp@-                             
   45ab2:	4eb9 0004 80b8 	jsr 480b8 <_Thread_Suspend>                 
        _Thread_Enable_dispatch();                                    
   45ab8:	4e92           	jsr %a2@                                    
        return RTEMS_SUCCESSFUL;                                      
   45aba:	588f           	addql #4,%sp                                
   45abc:	4280           	clrl %d0                                    
   45abe:	6008           	bras 45ac8 <rtems_task_suspend+0x44>        
      }                                                               
      _Thread_Enable_dispatch();                                      
   45ac0:	4e92           	jsr %a2@                                    <== NOT EXECUTED
      return RTEMS_ALREADY_SUSPENDED;                                 
   45ac2:	700f           	moveq #15,%d0                               <== NOT EXECUTED
   45ac4:	6002           	bras 45ac8 <rtems_task_suspend+0x44>        <== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   45ac6:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   45ac8:	246e fff8      	moveal %fp@(-8),%a2                         
   45acc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00046568 <rtems_task_variable_add>: rtems_status_code rtems_task_variable_add( rtems_id tid, void **ptr, void (*dtor)(void *) ) {
   46568:	4e56 fff0      	linkw %fp,#-16                              
   4656c:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     
   46570:	246e 000c      	moveal %fp@(12),%a2                         
   46574:	242e 0010      	movel %fp@(16),%d2                          
  Thread_Control        *the_thread;                                  
  Objects_Locations      location;                                    
  rtems_task_variable_t *tvp, *new;                                   
                                                                      
  if ( !ptr )                                                         
   46578:	4a8a           	tstl %a2                                    
   4657a:	676e           	beqs 465ea <rtems_task_variable_add+0x82>   
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_thread = _Thread_Get (tid, &location);                          
   4657c:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   46580:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   46584:	4eb9 0004 831c 	jsr 4831c <_Thread_Get>                     <== NOT EXECUTED
  switch (location) {                                                 
   4658a:	508f           	addql #8,%sp                                <== NOT EXECUTED
  rtems_task_variable_t *tvp, *new;                                   
                                                                      
  if ( !ptr )                                                         
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_thread = _Thread_Get (tid, &location);                          
   4658c:	2640           	moveal %d0,%a3                              <== NOT EXECUTED
  switch (location) {                                                 
   4658e:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   46592:	665a           	bnes 465ee <rtems_task_variable_add+0x86>   <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      /*                                                              
       *  Figure out if the variable is already in this task's list.  
       */                                                             
      tvp = the_thread->task_variables;                               
   46594:	206b 0108      	moveal %a3@(264),%a0                        <== NOT EXECUTED
      while (tvp) {                                                   
   46598:	6014           	bras 465ae <rtems_task_variable_add+0x46>   <== NOT EXECUTED
        if (tvp->ptr == ptr) {                                        
   4659a:	b5e8 0004      	cmpal %a0@(4),%a2                           <== NOT EXECUTED
   4659e:	660c           	bnes 465ac <rtems_task_variable_add+0x44>   <== NOT EXECUTED
          tvp->dtor = dtor;                                           
   465a0:	2142 0010      	movel %d2,%a0@(16)                          <== NOT EXECUTED
          _Thread_Enable_dispatch();                                  
   465a4:	4eb9 0004 82f6 	jsr 482f6 <_Thread_Enable_dispatch>         <== NOT EXECUTED
   465aa:	603a           	bras 465e6 <rtems_task_variable_add+0x7e>   <== NOT EXECUTED
          return RTEMS_SUCCESSFUL;                                    
        }                                                             
        tvp = (rtems_task_variable_t *)tvp->next;                     
   465ac:	2050           	moveal %a0@,%a0                             <== NOT EXECUTED
    case OBJECTS_LOCAL:                                               
      /*                                                              
       *  Figure out if the variable is already in this task's list.  
       */                                                             
      tvp = the_thread->task_variables;                               
      while (tvp) {                                                   
   465ae:	4a88           	tstl %a0                                    <== NOT EXECUTED
   465b0:	66e8           	bnes 4659a <rtems_task_variable_add+0x32>   <== NOT EXECUTED
                                                                      
      /*                                                              
       *  Now allocate memory for this task variable.                 
       */                                                             
      new = (rtems_task_variable_t *)                                 
         _Workspace_Allocate(sizeof(rtems_task_variable_t));          
   465b2:	4878 0014      	pea 14 <OPER2>                              <== NOT EXECUTED
   465b6:	4eb9 0004 9298 	jsr 49298 <_Workspace_Allocate>             <== NOT EXECUTED
      if (new == NULL) {                                              
   465bc:	588f           	addql #4,%sp                                <== NOT EXECUTED
   465be:	43f9 0004 82f6 	lea 482f6 <_Thread_Enable_dispatch>,%a1     <== NOT EXECUTED
                                                                      
      /*                                                              
       *  Now allocate memory for this task variable.                 
       */                                                             
      new = (rtems_task_variable_t *)                                 
         _Workspace_Allocate(sizeof(rtems_task_variable_t));          
   465c4:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
      if (new == NULL) {                                              
   465c6:	4a80           	tstl %d0                                    <== NOT EXECUTED
   465c8:	6606           	bnes 465d0 <rtems_task_variable_add+0x68>   <== NOT EXECUTED
        _Thread_Enable_dispatch();                                    
   465ca:	4e91           	jsr %a1@                                    <== NOT EXECUTED
        return RTEMS_NO_MEMORY;                                       
   465cc:	701a           	moveq #26,%d0                               <== NOT EXECUTED
   465ce:	6020           	bras 465f0 <rtems_task_variable_add+0x88>   <== NOT EXECUTED
      }                                                               
      new->gval = *ptr;                                               
   465d0:	2152 0008      	movel %a2@,%a0@(8)                          <== NOT EXECUTED
      new->ptr = ptr;                                                 
      new->dtor = dtor;                                               
                                                                      
      new->next = (struct rtems_task_variable_tt *)the_thread->task_variables;
   465d4:	20ab 0108      	movel %a3@(264),%a0@                        <== NOT EXECUTED
      if (new == NULL) {                                              
        _Thread_Enable_dispatch();                                    
        return RTEMS_NO_MEMORY;                                       
      }                                                               
      new->gval = *ptr;                                               
      new->ptr = ptr;                                                 
   465d8:	214a 0004      	movel %a2,%a0@(4)                           <== NOT EXECUTED
      new->dtor = dtor;                                               
   465dc:	2142 0010      	movel %d2,%a0@(16)                          <== NOT EXECUTED
                                                                      
      new->next = (struct rtems_task_variable_tt *)the_thread->task_variables;
      the_thread->task_variables = new;                               
   465e0:	2740 0108      	movel %d0,%a3@(264)                         <== NOT EXECUTED
      _Thread_Enable_dispatch();                                      
   465e4:	4e91           	jsr %a1@                                    <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   465e6:	4280           	clrl %d0                                    <== NOT EXECUTED
   465e8:	6006           	bras 465f0 <rtems_task_variable_add+0x88>   <== NOT EXECUTED
  Thread_Control        *the_thread;                                  
  Objects_Locations      location;                                    
  rtems_task_variable_t *tvp, *new;                                   
                                                                      
  if ( !ptr )                                                         
    return RTEMS_INVALID_ADDRESS;                                     
   465ea:	7009           	moveq #9,%d0                                
   465ec:	6002           	bras 465f0 <rtems_task_variable_add+0x88>   
#endif                                                                
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
  return RTEMS_INVALID_ID;                                            
   465ee:	7004           	moveq #4,%d0                                
}                                                                     
   465f0:	4cee 0c04 fff0 	moveml %fp@(-16),%d2/%a2-%a3                
   465f6:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

000465fc <rtems_task_variable_delete>: rtems_status_code rtems_task_variable_delete( rtems_id tid, void **ptr ) {
   465fc:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   46600:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   46602:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
  Thread_Control        *the_thread;                                  
  Objects_Locations      location;                                    
  rtems_task_variable_t *tvp, *prev;                                  
                                                                      
  if ( !ptr )                                                         
   46606:	6758           	beqs 46660 <rtems_task_variable_delete+0x64><== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  prev = NULL;                                                        
                                                                      
  the_thread = _Thread_Get (tid, &location);                          
   46608:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4660c:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   46610:	4eb9 0004 831c 	jsr 4831c <_Thread_Get>                     <== NOT EXECUTED
  switch (location) {                                                 
   46616:	508f           	addql #8,%sp                                <== NOT EXECUTED
   46618:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4661c:	6646           	bnes 46664 <rtems_task_variable_delete+0x68><== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      tvp = the_thread->task_variables;                               
   4661e:	2240           	moveal %d0,%a1                              <== NOT EXECUTED
   46620:	2069 0108      	moveal %a1@(264),%a0                        <== NOT EXECUTED
  rtems_task_variable_t *tvp, *prev;                                  
                                                                      
  if ( !ptr )                                                         
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  prev = NULL;                                                        
   46624:	93c9           	subal %a1,%a1                               <== NOT EXECUTED
  the_thread = _Thread_Get (tid, &location);                          
  switch (location) {                                                 
                                                                      
    case OBJECTS_LOCAL:                                               
      tvp = the_thread->task_variables;                               
      while (tvp) {                                                   
   46626:	602e           	bras 46656 <rtems_task_variable_delete+0x5a><== NOT EXECUTED
        if (tvp->ptr == ptr) {                                        
   46628:	b4a8 0004      	cmpl %a0@(4),%d2                            <== NOT EXECUTED
   4662c:	6624           	bnes 46652 <rtems_task_variable_delete+0x56><== NOT EXECUTED
          if (prev)                                                   
   4662e:	4a89           	tstl %a1                                    <== NOT EXECUTED
   46630:	6704           	beqs 46636 <rtems_task_variable_delete+0x3a><== NOT EXECUTED
            prev->next = tvp->next;                                   
   46632:	2290           	movel %a0@,%a1@                             <== NOT EXECUTED
   46634:	6006           	bras 4663c <rtems_task_variable_delete+0x40><== NOT EXECUTED
          else                                                        
            the_thread->task_variables = (rtems_task_variable_t *)tvp->next;
   46636:	2240           	moveal %d0,%a1                              <== NOT EXECUTED
   46638:	2350 0108      	movel %a0@,%a1@(264)                        <== NOT EXECUTED
                                                                      
          _RTEMS_Tasks_Invoke_task_variable_dtor( the_thread, tvp );  
   4663c:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   4663e:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   46640:	4eb9 0004 66d8 	jsr 466d8 <_RTEMS_Tasks_Invoke_task_variable_dtor><== NOT EXECUTED
          _Thread_Enable_dispatch();                                  
   46646:	4eb9 0004 82f6 	jsr 482f6 <_Thread_Enable_dispatch>         <== NOT EXECUTED
          return RTEMS_SUCCESSFUL;                                    
   4664c:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4664e:	4280           	clrl %d0                                    <== NOT EXECUTED
   46650:	6014           	bras 46666 <rtems_task_variable_delete+0x6a><== NOT EXECUTED
        }                                                             
        prev = tvp;                                                   
        tvp = (rtems_task_variable_t *)tvp->next;                     
   46652:	2248           	moveal %a0,%a1                              <== NOT EXECUTED
   46654:	2050           	moveal %a0@,%a0                             <== NOT EXECUTED
  the_thread = _Thread_Get (tid, &location);                          
  switch (location) {                                                 
                                                                      
    case OBJECTS_LOCAL:                                               
      tvp = the_thread->task_variables;                               
      while (tvp) {                                                   
   46656:	4a88           	tstl %a0                                    <== NOT EXECUTED
   46658:	66ce           	bnes 46628 <rtems_task_variable_delete+0x2c><== NOT EXECUTED
          return RTEMS_SUCCESSFUL;                                    
        }                                                             
        prev = tvp;                                                   
        tvp = (rtems_task_variable_t *)tvp->next;                     
      }                                                               
      _Thread_Enable_dispatch();                                      
   4665a:	4eb9 0004 82f6 	jsr 482f6 <_Thread_Enable_dispatch>         <== NOT EXECUTED
  Thread_Control        *the_thread;                                  
  Objects_Locations      location;                                    
  rtems_task_variable_t *tvp, *prev;                                  
                                                                      
  if ( !ptr )                                                         
    return RTEMS_INVALID_ADDRESS;                                     
   46660:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   46662:	6002           	bras 46666 <rtems_task_variable_delete+0x6a><== NOT EXECUTED
                                                                      
    case OBJECTS_ERROR:                                               
        break;                                                        
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   46664:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   46666:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   4666a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00046670 <rtems_task_variable_get>: rtems_status_code rtems_task_variable_get( rtems_id tid, void **ptr, void **result ) {
   46670:	4e56 fffc      	linkw %fp,#-4                               
   46674:	2f0a           	movel %a2,%sp@-                             
   46676:	246e 0010      	moveal %fp@(16),%a2                         
   4667a:	2f02           	movel %d2,%sp@-                             
   4667c:	242e 000c      	movel %fp@(12),%d2                          
  Thread_Control        *the_thread;                                  
  Objects_Locations      location;                                    
  rtems_task_variable_t *tvp;                                         
                                                                      
  if ( !ptr )                                                         
   46680:	6742           	beqs 466c4 <rtems_task_variable_get+0x54>   <== ALWAYS TAKEN
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !result )                                                      
   46682:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   46684:	673e           	beqs 466c4 <rtems_task_variable_get+0x54>   <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_thread = _Thread_Get (tid, &location);                          
   46686:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4668a:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4668e:	4eb9 0004 831c 	jsr 4831c <_Thread_Get>                     <== NOT EXECUTED
  switch (location) {                                                 
   46694:	508f           	addql #8,%sp                                <== NOT EXECUTED
   46696:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   4669a:	662c           	bnes 466c8 <rtems_task_variable_get+0x58>   <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      /*                                                              
       *  Figure out if the variable is in this task's list.          
       */                                                             
      tvp = the_thread->task_variables;                               
   4669c:	2240           	moveal %d0,%a1                              <== NOT EXECUTED
   4669e:	2069 0108      	moveal %a1@(264),%a0                        <== NOT EXECUTED
      while (tvp) {                                                   
   466a2:	6016           	bras 466ba <rtems_task_variable_get+0x4a>   <== NOT EXECUTED
        if (tvp->ptr == ptr) {                                        
   466a4:	b4a8 0004      	cmpl %a0@(4),%d2                            <== NOT EXECUTED
   466a8:	660e           	bnes 466b8 <rtems_task_variable_get+0x48>   <== NOT EXECUTED
	  /*                                                                 
	   * Should this return the current (i.e not the                     
	   * saved) value if `tid' is the current task?                      
	   */                                                                
          *result = tvp->tval;                                        
   466aa:	24a8 000c      	movel %a0@(12),%a2@                         <== NOT EXECUTED
          _Thread_Enable_dispatch();                                  
   466ae:	4eb9 0004 82f6 	jsr 482f6 <_Thread_Enable_dispatch>         <== NOT EXECUTED
          return RTEMS_SUCCESSFUL;                                    
   466b4:	4280           	clrl %d0                                    <== NOT EXECUTED
   466b6:	6012           	bras 466ca <rtems_task_variable_get+0x5a>   <== NOT EXECUTED
        }                                                             
        tvp = (rtems_task_variable_t *)tvp->next;                     
   466b8:	2050           	moveal %a0@,%a0                             <== NOT EXECUTED
    case OBJECTS_LOCAL:                                               
      /*                                                              
       *  Figure out if the variable is in this task's list.          
       */                                                             
      tvp = the_thread->task_variables;                               
      while (tvp) {                                                   
   466ba:	4a88           	tstl %a0                                    <== NOT EXECUTED
   466bc:	66e6           	bnes 466a4 <rtems_task_variable_get+0x34>   <== NOT EXECUTED
          _Thread_Enable_dispatch();                                  
          return RTEMS_SUCCESSFUL;                                    
        }                                                             
        tvp = (rtems_task_variable_t *)tvp->next;                     
      }                                                               
      _Thread_Enable_dispatch();                                      
   466be:	4eb9 0004 82f6 	jsr 482f6 <_Thread_Enable_dispatch>         <== NOT EXECUTED
                                                                      
  if ( !ptr )                                                         
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !result )                                                      
    return RTEMS_INVALID_ADDRESS;                                     
   466c4:	7009           	moveq #9,%d0                                
   466c6:	6002           	bras 466ca <rtems_task_variable_get+0x5a>   
#endif                                                                
                                                                      
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
  return RTEMS_INVALID_ID;                                            
   466c8:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   466ca:	242e fff4      	movel %fp@(-12),%d2                         
   466ce:	246e fff8      	moveal %fp@(-8),%a2                         
   466d2:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      

00045ad0 <rtems_task_wake_after>: */ rtems_status_code rtems_task_wake_after( rtems_interval ticks ) {
   45ad0:	4e56 0000      	linkw %fp,#0                                
   45ad4:	2039 0005 c6c8 	movel 5c6c8 <_Thread_Dispatch_disable_level>,%d0
   45ada:	5280           	addql #1,%d0                                
   45adc:	2f02           	movel %d2,%sp@-                             
   45ade:	242e 0008      	movel %fp@(8),%d2                           
   45ae2:	23c0 0005 c6c8 	movel %d0,5c6c8 <_Thread_Dispatch_disable_level>
  _Thread_Disable_dispatch();                                         
    if ( ticks == 0 ) {                                               
   45ae8:	4a82           	tstl %d2                                    
   45aea:	6612           	bnes 45afe <rtems_task_wake_after+0x2e>     <== ALWAYS TAKEN
 *  always operates on the scheduler that 'owns' the currently executing
 *  thread.                                                           
 */                                                                   
RTEMS_INLINE_ROUTINE void _Scheduler_Yield( void )                    
{                                                                     
  _Scheduler.Operations.yield( &_Scheduler );                         
   45aec:	4879 0005 c74e 	pea 5c74e <_Scheduler>                      <== NOT EXECUTED
   45af2:	2079 0005 c756 	moveal 5c756 <_Scheduler+0x8>,%a0           <== NOT EXECUTED
   45af8:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   45afa:	588f           	addql #4,%sp                                <== NOT EXECUTED
   45afc:	6048           	bras 45b46 <rtems_task_wake_after+0x76>     <== NOT EXECUTED
      _Scheduler_Yield();                                             
    } else {                                                          
      _Thread_Set_state( _Thread_Executing, STATES_DELAYING );        
   45afe:	4878 0008      	pea 8 <DIVIDE_BY_ZERO>                      
   45b02:	2f39 0005 c884 	movel 5c884 <_Per_CPU_Information+0xc>,%sp@-
   45b08:	4eb9 0004 7ecc 	jsr 47ecc <_Thread_Set_state>               
      _Watchdog_Initialize(                                           
        &_Thread_Executing->Timer,                                    
        _Thread_Delay_ended,                                          
        _Thread_Executing->Object.id,                                 
   45b0e:	2079 0005 c884 	moveal 5c884 <_Per_CPU_Information+0xc>,%a0 
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
  the_watchdog->routine   = routine;                                  
   45b14:	223c 0004 75a4 	movel #292260,%d1                           
  _Thread_Disable_dispatch();                                         
    if ( ticks == 0 ) {                                               
      _Scheduler_Yield();                                             
    } else {                                                          
      _Thread_Set_state( _Thread_Executing, STATES_DELAYING );        
      _Watchdog_Initialize(                                           
   45b1a:	2028 0008      	movel %a0@(8),%d0                           
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   45b1e:	42a8 0050      	clrl %a0@(80)                               
  the_watchdog->routine   = routine;                                  
   45b22:	2141 0064      	movel %d1,%a0@(100)                         
  the_watchdog->id        = id;                                       
   45b26:	2140 0068      	movel %d0,%a0@(104)                         
  the_watchdog->user_data = user_data;                                
   45b2a:	42a8 006c      	clrl %a0@(108)                              
  Watchdog_Control      *the_watchdog,                                
  Watchdog_Interval      units                                        
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
   45b2e:	2142 0054      	movel %d2,%a0@(84)                          
                                                                      
  _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );           
   45b32:	4868 0048      	pea %a0@(72)                                
   45b36:	4879 0005 c7a8 	pea 5c7a8 <_Watchdog_Ticks_chain>           
   45b3c:	4eb9 0004 8440 	jsr 48440 <_Watchdog_Insert>                
   45b42:	4fef 0010      	lea %sp@(16),%sp                            
        _Thread_Executing->Object.id,                                 
        NULL                                                          
      );                                                              
      _Watchdog_Insert_ticks( &_Thread_Executing->Timer, ticks );     
    }                                                                 
  _Thread_Enable_dispatch();                                          
   45b46:	4eb9 0004 771e 	jsr 4771e <_Thread_Enable_dispatch>         
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   45b4c:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
   45b50:	4280           	clrl %d0                                    <== NOT EXECUTED
   45b52:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

000466d0 <rtems_task_wake_when>: */ rtems_status_code rtems_task_wake_when( rtems_time_of_day *time_buffer ) {
   466d0:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   466d4:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   466d6:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
  Watchdog_Interval   seconds;                                        
                                                                      
  if ( !_TOD_Is_set )                                                 
   466da:	4a39 0005 dc80 	tstb 5dc80 <_TOD_Is_set>                    <== NOT EXECUTED
   466e0:	6700 0096      	beqw 46778 <rtems_task_wake_when+0xa8>      <== NOT EXECUTED
    return RTEMS_NOT_DEFINED;                                         
                                                                      
  if ( !time_buffer )                                                 
   466e4:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   466e6:	6700 0094      	beqw 4677c <rtems_task_wake_when+0xac>      <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  time_buffer->ticks = 0;                                             
   466ea:	42aa 0018      	clrl %a2@(24)                               <== NOT EXECUTED
                                                                      
  if ( !_TOD_Validate( time_buffer ) )                                
   466ee:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   466f0:	4eb9 0004 5b80 	jsr 45b80 <_TOD_Validate>                   <== NOT EXECUTED
   466f6:	588f           	addql #4,%sp                                <== NOT EXECUTED
   466f8:	4a00           	tstb %d0                                    <== NOT EXECUTED
   466fa:	6700 0084      	beqw 46780 <rtems_task_wake_when+0xb0>      <== NOT EXECUTED
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  seconds = _TOD_To_seconds( time_buffer );                           
   466fe:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   46700:	4eb9 0004 5ae4 	jsr 45ae4 <_TOD_To_seconds>                 <== NOT EXECUTED
                                                                      
  if ( seconds <= _TOD_Seconds_since_epoch() )                        
   46706:	588f           	addql #4,%sp                                <== NOT EXECUTED
  time_buffer->ticks = 0;                                             
                                                                      
  if ( !_TOD_Validate( time_buffer ) )                                
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  seconds = _TOD_To_seconds( time_buffer );                           
   46708:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
                                                                      
  if ( seconds <= _TOD_Seconds_since_epoch() )                        
   4670a:	b0b9 0005 dd1a 	cmpl 5dd1a <_TOD_Now>,%d0                   <== NOT EXECUTED
   46710:	636e           	blss 46780 <rtems_task_wake_when+0xb0>      <== NOT EXECUTED
   46712:	2039 0005 dc70 	movel 5dc70 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   46718:	5280           	addql #1,%d0                                <== NOT EXECUTED
   4671a:	23c0 0005 dc70 	movel %d0,5dc70 <_Thread_Dispatch_disable_level><== NOT EXECUTED
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  _Thread_Disable_dispatch();                                         
    _Thread_Set_state( _Thread_Executing, STATES_WAITING_FOR_TIME );  
   46720:	4878 0010      	pea 10 <INVALID_OPERATION>                  <== NOT EXECUTED
   46724:	2f39 0005 de2c 	movel 5de2c <_Per_CPU_Information+0xc>,%sp@-<== NOT EXECUTED
   4672a:	4eb9 0004 8af4 	jsr 48af4 <_Thread_Set_state>               <== NOT EXECUTED
    _Watchdog_Initialize(                                             
      &_Thread_Executing->Timer,                                      
      _Thread_Delay_ended,                                            
      _Thread_Executing->Object.id,                                   
   46730:	2079 0005 de2c 	moveal 5de2c <_Per_CPU_Information+0xc>,%a0 <== NOT EXECUTED
      NULL                                                            
    );                                                                
    _Watchdog_Insert_seconds(                                         
   46736:	95f9 0005 dd1a 	subal 5dd1a <_TOD_Now>,%a2                  <== NOT EXECUTED
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
  the_watchdog->routine   = routine;                                  
   4673c:	223c 0004 81cc 	movel #295372,%d1                           <== NOT EXECUTED
  if ( seconds <= _TOD_Seconds_since_epoch() )                        
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  _Thread_Disable_dispatch();                                         
    _Thread_Set_state( _Thread_Executing, STATES_WAITING_FOR_TIME );  
    _Watchdog_Initialize(                                             
   46742:	2028 0008      	movel %a0@(8),%d0                           <== NOT EXECUTED
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   46746:	42a8 0050      	clrl %a0@(80)                               <== NOT EXECUTED
  the_watchdog->routine   = routine;                                  
  the_watchdog->id        = id;                                       
   4674a:	2140 0068      	movel %d0,%a0@(104)                         <== NOT EXECUTED
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
  the_watchdog->routine   = routine;                                  
   4674e:	2141 0064      	movel %d1,%a0@(100)                         <== NOT EXECUTED
  the_watchdog->id        = id;                                       
  the_watchdog->user_data = user_data;                                
   46752:	42a8 006c      	clrl %a0@(108)                              <== NOT EXECUTED
      &_Thread_Executing->Timer,                                      
      _Thread_Delay_ended,                                            
      _Thread_Executing->Object.id,                                   
      NULL                                                            
    );                                                                
    _Watchdog_Insert_seconds(                                         
   46756:	214a 0054      	movel %a2,%a0@(84)                          <== NOT EXECUTED
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
                                                                      
  _Watchdog_Insert( &_Watchdog_Seconds_chain, the_watchdog );         
   4675a:	4868 0048      	pea %a0@(72)                                <== NOT EXECUTED
   4675e:	4879 0005 dd44 	pea 5dd44 <_Watchdog_Seconds_chain>         <== NOT EXECUTED
   46764:	4eb9 0004 90e8 	jsr 490e8 <_Watchdog_Insert>                <== NOT EXECUTED
      &_Thread_Executing->Timer,                                      
      seconds - _TOD_Seconds_since_epoch()                            
    );                                                                
  _Thread_Enable_dispatch();                                          
   4676a:	4eb9 0004 8346 	jsr 48346 <_Thread_Enable_dispatch>         <== NOT EXECUTED
  return RTEMS_SUCCESSFUL;                                            
   46770:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   46774:	4280           	clrl %d0                                    <== NOT EXECUTED
   46776:	600a           	bras 46782 <rtems_task_wake_when+0xb2>      <== NOT EXECUTED
)                                                                     
{                                                                     
  Watchdog_Interval   seconds;                                        
                                                                      
  if ( !_TOD_Is_set )                                                 
    return RTEMS_NOT_DEFINED;                                         
   46778:	700b           	moveq #11,%d0                               <== NOT EXECUTED
   4677a:	6006           	bras 46782 <rtems_task_wake_when+0xb2>      <== NOT EXECUTED
                                                                      
  if ( !time_buffer )                                                 
    return RTEMS_INVALID_ADDRESS;                                     
   4677c:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   4677e:	6002           	bras 46782 <rtems_task_wake_when+0xb2>      <== NOT EXECUTED
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  seconds = _TOD_To_seconds( time_buffer );                           
                                                                      
  if ( seconds <= _TOD_Seconds_since_epoch() )                        
    return RTEMS_INVALID_CLOCK;                                       
   46780:	7014           	moveq #20,%d0                               <== NOT EXECUTED
      &_Thread_Executing->Timer,                                      
      seconds - _TOD_Seconds_since_epoch()                            
    );                                                                
  _Thread_Enable_dispatch();                                          
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   46782:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   46786:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0005196c <rtems_timer_cancel>: */ rtems_status_code rtems_timer_cancel( rtems_id id ) {
   5196c:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Timer_Control *)                                            
    _Objects_Get( &_Timer_Information, id, location );                
   51970:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   51974:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   51978:	4879 0007 5238 	pea 75238 <_Timer_Information>              <== NOT EXECUTED
   5197e:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
  Timer_Control   *the_timer;                                         
  Objects_Locations       location;                                   
                                                                      
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
   51984:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   51988:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   5198c:	6620           	bnes 519ae <rtems_timer_cancel+0x42>        <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( !_Timer_Is_dormant_class( the_timer->the_class ) )         
   5198e:	7204           	moveq #4,%d1                                <== NOT EXECUTED
   51990:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   51992:	b2a8 0038      	cmpl %a0@(56),%d1                           <== NOT EXECUTED
   51996:	670c           	beqs 519a4 <rtems_timer_cancel+0x38>        <== NOT EXECUTED
        (void) _Watchdog_Remove( &the_timer->Ticker );                
   51998:	4868 0010      	pea %a0@(16)                                <== NOT EXECUTED
   5199c:	4eb9 0005 5e40 	jsr 55e40 <_Watchdog_Remove>                <== NOT EXECUTED
   519a2:	588f           	addql #4,%sp                                <== NOT EXECUTED
      _Thread_Enable_dispatch();                                      
   519a4:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   519aa:	4280           	clrl %d0                                    <== NOT EXECUTED
   519ac:	6002           	bras 519b0 <rtems_timer_cancel+0x44>        <== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   519ae:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   519b0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00045cac <rtems_timer_create>: rtems_status_code rtems_timer_create( rtems_name name, rtems_id *id ) {
   45cac:	4e56 fff4      	linkw %fp,#-12                              
   45cb0:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     
   45cb4:	242e 0008      	movel %fp@(8),%d2                           
   45cb8:	246e 000c      	moveal %fp@(12),%a2                         
  Timer_Control *the_timer;                                           
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
   45cbc:	6766           	beqs 45d24 <rtems_timer_create+0x78>        <== NEVER TAKEN
    return RTEMS_INVALID_NAME;                                        
                                                                      
  if ( !id )                                                          
   45cbe:	4a8a           	tstl %a2                                    
   45cc0:	6766           	beqs 45d28 <rtems_timer_create+0x7c>        <== NEVER TAKEN
   45cc2:	2039 0005 c92a 	movel 5c92a <_Thread_Dispatch_disable_level>,%d0
   45cc8:	5280           	addql #1,%d0                                
   45cca:	23c0 0005 c92a 	movel %d0,5c92a <_Thread_Dispatch_disable_level>
 *  This function allocates a timer control block from                
 *  the inactive chain of free timer control blocks.                  
 */                                                                   
RTEMS_INLINE_ROUTINE Timer_Control *_Timer_Allocate( void )           
{                                                                     
  return (Timer_Control *) _Objects_Allocate( &_Timer_Information );  
   45cd0:	4879 0005 cb1c 	pea 5cb1c <_Timer_Information>              
   45cd6:	4eb9 0004 6aa0 	jsr 46aa0 <_Objects_Allocate>               
                                                                      
  _Thread_Disable_dispatch();         /* to prevent deletion */       
                                                                      
  the_timer = _Timer_Allocate();                                      
                                                                      
  if ( !the_timer ) {                                                 
   45cdc:	588f           	addql #4,%sp                                
   45cde:	43f9 0004 793a 	lea 4793a <_Thread_Enable_dispatch>,%a1     
   45ce4:	2040           	moveal %d0,%a0                              
   45ce6:	4a80           	tstl %d0                                    
   45ce8:	6606           	bnes 45cf0 <rtems_timer_create+0x44>        <== ALWAYS TAKEN
    _Thread_Enable_dispatch();                                        
   45cea:	4e91           	jsr %a1@                                    <== NOT EXECUTED
    return RTEMS_TOO_MANY;                                            
   45cec:	7005           	moveq #5,%d0                                <== NOT EXECUTED
   45cee:	603a           	bras 45d2a <rtems_timer_create+0x7e>        <== NOT EXECUTED
  }                                                                   
                                                                      
  the_timer->the_class = TIMER_DORMANT;                               
   45cf0:	7004           	moveq #4,%d0                                
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   45cf2:	4281           	clrl %d1                                    
   45cf4:	2140 0038      	movel %d0,%a0@(56)                          
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
   45cf8:	2028 0008      	movel %a0@(8),%d0                           
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   45cfc:	2679 0005 cb34 	moveal 5cb34 <_Timer_Information+0x18>,%a3  
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  Objects_Name         name                                           
)                                                                     
{                                                                     
  _Objects_Set_local_object(                                          
   45d02:	3200           	movew %d0,%d1                               
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   45d04:	42a8 0018      	clrl %a0@(24)                               
  the_watchdog->routine   = routine;                                  
   45d08:	42a8 002c      	clrl %a0@(44)                               
  the_watchdog->id        = id;                                       
   45d0c:	42a8 0030      	clrl %a0@(48)                               
  the_watchdog->user_data = user_data;                                
   45d10:	42a8 0034      	clrl %a0@(52)                               
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   45d14:	2788 1c00      	movel %a0,%a3@(00000000,%d1:l:4)            
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
    the_object                                                        
  );                                                                  
                                                                      
  the_object->name = name;                                            
   45d18:	2142 000c      	movel %d2,%a0@(12)                          
    &_Timer_Information,                                              
    &the_timer->Object,                                               
    (Objects_Name) name                                               
  );                                                                  
                                                                      
  *id = the_timer->Object.id;                                         
   45d1c:	2480           	movel %d0,%a2@                              
  _Thread_Enable_dispatch();                                          
   45d1e:	4e91           	jsr %a1@                                    
  return RTEMS_SUCCESSFUL;                                            
   45d20:	4280           	clrl %d0                                    
   45d22:	6006           	bras 45d2a <rtems_timer_create+0x7e>        
)                                                                     
{                                                                     
  Timer_Control *the_timer;                                           
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
    return RTEMS_INVALID_NAME;                                        
   45d24:	7003           	moveq #3,%d0                                
   45d26:	6002           	bras 45d2a <rtems_timer_create+0x7e>        <== NOT EXECUTED
                                                                      
  if ( !id )                                                          
    return RTEMS_INVALID_ADDRESS;                                     
   45d28:	7009           	moveq #9,%d0                                <== NOT EXECUTED
  );                                                                  
                                                                      
  *id = the_timer->Object.id;                                         
  _Thread_Enable_dispatch();                                          
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   45d2a:	4cee 0c04 fff4 	moveml %fp@(-12),%d2/%a2-%a3                
   45d30:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00051a3c <rtems_timer_delete>: */ rtems_status_code rtems_timer_delete( rtems_id id ) {
   51a3c:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   51a40:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Timer_Control *)                                            
    _Objects_Get( &_Timer_Information, id, location );                
   51a42:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   51a46:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   51a4a:	4879 0007 5238 	pea 75238 <_Timer_Information>              <== NOT EXECUTED
   51a50:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
  Timer_Control     *the_timer;                                       
  Objects_Locations  location;                                        
                                                                      
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
   51a56:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   51a5a:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   51a5c:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   51a60:	6634           	bnes 51a96 <rtems_timer_delete+0x5a>        <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      _Objects_Close( &_Timer_Information, &the_timer->Object );      
   51a62:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   51a64:	4879 0007 5238 	pea 75238 <_Timer_Information>              <== NOT EXECUTED
   51a6a:	4eb9 0005 3eb0 	jsr 53eb0 <_Objects_Close>                  <== NOT EXECUTED
      (void) _Watchdog_Remove( &the_timer->Ticker );                  
   51a70:	486a 0010      	pea %a2@(16)                                <== NOT EXECUTED
   51a74:	4eb9 0005 5e40 	jsr 55e40 <_Watchdog_Remove>                <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void _Timer_Free (                               
  Timer_Control *the_timer                                            
)                                                                     
{                                                                     
  _Objects_Free( &_Timer_Information, &the_timer->Object );           
   51a7a:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   51a7c:	4879 0007 5238 	pea 75238 <_Timer_Information>              <== NOT EXECUTED
   51a82:	4eb9 0005 4128 	jsr 54128 <_Objects_Free>                   <== NOT EXECUTED
      _Timer_Free( the_timer );                                       
      _Thread_Enable_dispatch();                                      
   51a88:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   51a8e:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   51a92:	4280           	clrl %d0                                    <== NOT EXECUTED
   51a94:	6002           	bras 51a98 <rtems_timer_delete+0x5c>        <== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   51a96:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   51a98:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   51a9c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00045d34 <rtems_timer_fire_after>: rtems_id id, rtems_interval ticks, rtems_timer_service_routine_entry routine, void *user_data ) {
   45d34:	4e56 ffe4      	linkw %fp,#-28                              <== NOT EXECUTED
   45d38:	48d7 0c3c      	moveml %d2-%d5/%a2-%a3,%sp@                 <== NOT EXECUTED
   45d3c:	282e 0008      	movel %fp@(8),%d4                           <== NOT EXECUTED
   45d40:	262e 000c      	movel %fp@(12),%d3                          <== NOT EXECUTED
   45d44:	2a2e 0010      	movel %fp@(16),%d5                          <== NOT EXECUTED
  Timer_Control      *the_timer;                                      
  Objects_Locations   location;                                       
  ISR_Level           level;                                          
                                                                      
  if ( ticks == 0 )                                                   
   45d48:	4a83           	tstl %d3                                    <== NOT EXECUTED
   45d4a:	6700 0088      	beqw 45dd4 <rtems_timer_fire_after+0xa0>    <== NOT EXECUTED
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  if ( !routine )                                                     
   45d4e:	4a85           	tstl %d5                                    <== NOT EXECUTED
   45d50:	6700 0086      	beqw 45dd8 <rtems_timer_fire_after+0xa4>    <== NOT EXECUTED
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Timer_Control *)                                            
    _Objects_Get( &_Timer_Information, id, location );                
   45d54:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   45d58:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   45d5a:	4879 0005 cb1c 	pea 5cb1c <_Timer_Information>              <== NOT EXECUTED
   45d60:	4eb9 0004 6ef8 	jsr 46ef8 <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
   45d66:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   45d6a:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   45d6c:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   45d70:	666a           	bnes 45ddc <rtems_timer_fire_after+0xa8>    <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      (void) _Watchdog_Remove( &the_timer->Ticker );                  
   45d72:	2400           	movel %d0,%d2                               <== NOT EXECUTED
   45d74:	0682 0000 0010 	addil #16,%d2                               <== NOT EXECUTED
   45d7a:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   45d7c:	4eb9 0004 8784 	jsr 48784 <_Watchdog_Remove>                <== NOT EXECUTED
                                                                      
      _ISR_Disable( level );                                          
   45d82:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   45d88:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   45d8a:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   45d8c:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
   45d8e:	47f9 0004 793a 	lea 4793a <_Thread_Enable_dispatch>,%a3     <== NOT EXECUTED
        /*                                                            
         *  Check to see if the watchdog has just been inserted by a  
         *  higher priority interrupt.  If so, abandon this insert.   
         */                                                           
                                                                      
        if ( the_timer->Ticker.state != WATCHDOG_INACTIVE ) {         
   45d94:	588f           	addql #4,%sp                                <== NOT EXECUTED
   45d96:	4aaa 0018      	tstl %a2@(24)                               <== NOT EXECUTED
   45d9a:	6706           	beqs 45da2 <rtems_timer_fire_after+0x6e>    <== NOT EXECUTED
          _ISR_Enable( level );                                       
   45d9c:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
          _Thread_Enable_dispatch();                                  
   45d9e:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   45da0:	602e           	bras 45dd0 <rtems_timer_fire_after+0x9c>    <== NOT EXECUTED
        /*                                                            
         *  OK.  Now we now the timer was not rescheduled by an interrupt
         *  so we can atomically initialize it as in use.             
         */                                                           
                                                                      
        the_timer->the_class = TIMER_INTERVAL;                        
   45da2:	42aa 0038      	clrl %a2@(56)                               <== NOT EXECUTED
   45da6:	256e 0014 0034 	movel %fp@(20),%a2@(52)                     <== NOT EXECUTED
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   45dac:	42aa 0018      	clrl %a2@(24)                               <== NOT EXECUTED
  the_watchdog->routine   = routine;                                  
   45db0:	2545 002c      	movel %d5,%a2@(44)                          <== NOT EXECUTED
  the_watchdog->id        = id;                                       
   45db4:	2544 0030      	movel %d4,%a2@(48)                          <== NOT EXECUTED
        _Watchdog_Initialize( &the_timer->Ticker, routine, id, user_data );
      _ISR_Enable( level );                                           
   45db8:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
  Watchdog_Control      *the_watchdog,                                
  Watchdog_Interval      units                                        
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
   45dba:	2543 001c      	movel %d3,%a2@(28)                          <== NOT EXECUTED
                                                                      
  _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );           
   45dbe:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   45dc0:	4879 0005 ca0a 	pea 5ca0a <_Watchdog_Ticks_chain>           <== NOT EXECUTED
   45dc6:	4eb9 0004 865c 	jsr 4865c <_Watchdog_Insert>                <== NOT EXECUTED
                                                                      
                                                                      
      _Watchdog_Insert_ticks( &the_timer->Ticker, ticks );            
      _Thread_Enable_dispatch();                                      
   45dcc:	4e93           	jsr %a3@                                    <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   45dce:	508f           	addql #8,%sp                                <== NOT EXECUTED
   45dd0:	4280           	clrl %d0                                    <== NOT EXECUTED
   45dd2:	600a           	bras 45dde <rtems_timer_fire_after+0xaa>    <== NOT EXECUTED
  Timer_Control      *the_timer;                                      
  Objects_Locations   location;                                       
  ISR_Level           level;                                          
                                                                      
  if ( ticks == 0 )                                                   
    return RTEMS_INVALID_NUMBER;                                      
   45dd4:	700a           	moveq #10,%d0                               <== NOT EXECUTED
   45dd6:	6006           	bras 45dde <rtems_timer_fire_after+0xaa>    <== NOT EXECUTED
                                                                      
  if ( !routine )                                                     
    return RTEMS_INVALID_ADDRESS;                                     
   45dd8:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   45dda:	6002           	bras 45dde <rtems_timer_fire_after+0xaa>    <== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   45ddc:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   45dde:	4cee 0c3c ffe4 	moveml %fp@(-28),%d2-%d5/%a2-%a3            <== NOT EXECUTED
   45de4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00051b54 <rtems_timer_fire_when>: rtems_id id, rtems_time_of_day *wall_time, rtems_timer_service_routine_entry routine, void *user_data ) {
   51b54:	4e56 ffe8      	linkw %fp,#-24                              <== NOT EXECUTED
   51b58:	48d7 043c      	moveml %d2-%d5/%a2,%sp@                     <== NOT EXECUTED
   51b5c:	282e 0008      	movel %fp@(8),%d4                           <== NOT EXECUTED
   51b60:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
   51b64:	2a2e 0010      	movel %fp@(16),%d5                          <== NOT EXECUTED
  Timer_Control       *the_timer;                                     
  Objects_Locations    location;                                      
  rtems_interval       seconds;                                       
                                                                      
  if ( !_TOD_Is_set )                                                 
   51b68:	4a39 0007 5014 	tstb 75014 <_TOD_Is_set>                    <== NOT EXECUTED
   51b6e:	6700 0098      	beqw 51c08 <rtems_timer_fire_when+0xb4>     <== NOT EXECUTED
    return RTEMS_NOT_DEFINED;                                         
                                                                      
  if ( !_TOD_Validate( wall_time ) )                                  
   51b72:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   51b74:	4eb9 0004 f2b0 	jsr 4f2b0 <_TOD_Validate>                   <== NOT EXECUTED
   51b7a:	588f           	addql #4,%sp                                <== NOT EXECUTED
   51b7c:	4a00           	tstb %d0                                    <== NOT EXECUTED
   51b7e:	6700 0090      	beqw 51c10 <rtems_timer_fire_when+0xbc>     <== NOT EXECUTED
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  if ( !routine )                                                     
   51b82:	4a85           	tstl %d5                                    <== NOT EXECUTED
   51b84:	6700 0086      	beqw 51c0c <rtems_timer_fire_when+0xb8>     <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  seconds = _TOD_To_seconds( wall_time );                             
   51b88:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   51b8a:	4eb9 0004 f214 	jsr 4f214 <_TOD_To_seconds>                 <== NOT EXECUTED
  if ( seconds <= _TOD_Seconds_since_epoch() )                        
   51b90:	588f           	addql #4,%sp                                <== NOT EXECUTED
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  if ( !routine )                                                     
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  seconds = _TOD_To_seconds( wall_time );                             
   51b92:	2600           	movel %d0,%d3                               <== NOT EXECUTED
  if ( seconds <= _TOD_Seconds_since_epoch() )                        
   51b94:	b0b9 0007 50ae 	cmpl 750ae <_TOD_Now>,%d0                   <== NOT EXECUTED
   51b9a:	6374           	blss 51c10 <rtems_timer_fire_when+0xbc>     <== NOT EXECUTED
   51b9c:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   51ba0:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   51ba2:	4879 0007 5238 	pea 75238 <_Timer_Information>              <== NOT EXECUTED
   51ba8:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
   51bae:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   51bb2:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   51bb4:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   51bb8:	665a           	bnes 51c14 <rtems_timer_fire_when+0xc0>     <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      (void) _Watchdog_Remove( &the_timer->Ticker );                  
   51bba:	2400           	movel %d0,%d2                               <== NOT EXECUTED
   51bbc:	0682 0000 0010 	addil #16,%d2                               <== NOT EXECUTED
   51bc2:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   51bc4:	4eb9 0005 5e40 	jsr 55e40 <_Watchdog_Remove>                <== NOT EXECUTED
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
  the_watchdog->routine   = routine;                                  
  the_watchdog->id        = id;                                       
  the_watchdog->user_data = user_data;                                
   51bca:	256e 0014 0034 	movel %fp@(20),%a2@(52)                     <== NOT EXECUTED
      the_timer->the_class = TIMER_TIME_OF_DAY;                       
      _Watchdog_Initialize( &the_timer->Ticker, routine, id, user_data );
      _Watchdog_Insert_seconds(                                       
   51bd0:	96b9 0007 50ae 	subl 750ae <_TOD_Now>,%d3                   <== NOT EXECUTED
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
                                                                      
    case OBJECTS_LOCAL:                                               
      (void) _Watchdog_Remove( &the_timer->Ticker );                  
      the_timer->the_class = TIMER_TIME_OF_DAY;                       
   51bd6:	7002           	moveq #2,%d0                                <== NOT EXECUTED
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   51bd8:	42aa 0018      	clrl %a2@(24)                               <== NOT EXECUTED
   51bdc:	2540 0038      	movel %d0,%a2@(56)                          <== NOT EXECUTED
  the_watchdog->routine   = routine;                                  
   51be0:	2545 002c      	movel %d5,%a2@(44)                          <== NOT EXECUTED
  the_watchdog->id        = id;                                       
   51be4:	2544 0030      	movel %d4,%a2@(48)                          <== NOT EXECUTED
      _Watchdog_Initialize( &the_timer->Ticker, routine, id, user_data );
      _Watchdog_Insert_seconds(                                       
   51be8:	2543 001c      	movel %d3,%a2@(28)                          <== NOT EXECUTED
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
                                                                      
  _Watchdog_Insert( &_Watchdog_Seconds_chain, the_watchdog );         
   51bec:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   51bee:	4879 0007 50d8 	pea 750d8 <_Watchdog_Seconds_chain>         <== NOT EXECUTED
   51bf4:	4eb9 0005 5d18 	jsr 55d18 <_Watchdog_Insert>                <== NOT EXECUTED
         &the_timer->Ticker,                                          
         seconds - _TOD_Seconds_since_epoch()                         
       );                                                             
      _Thread_Enable_dispatch();                                      
   51bfa:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   51c00:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   51c04:	4280           	clrl %d0                                    <== NOT EXECUTED
   51c06:	600e           	bras 51c16 <rtems_timer_fire_when+0xc2>     <== NOT EXECUTED
  Timer_Control       *the_timer;                                     
  Objects_Locations    location;                                      
  rtems_interval       seconds;                                       
                                                                      
  if ( !_TOD_Is_set )                                                 
    return RTEMS_NOT_DEFINED;                                         
   51c08:	700b           	moveq #11,%d0                               <== NOT EXECUTED
   51c0a:	600a           	bras 51c16 <rtems_timer_fire_when+0xc2>     <== NOT EXECUTED
                                                                      
  if ( !_TOD_Validate( wall_time ) )                                  
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  if ( !routine )                                                     
    return RTEMS_INVALID_ADDRESS;                                     
   51c0c:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   51c0e:	6006           	bras 51c16 <rtems_timer_fire_when+0xc2>     <== NOT EXECUTED
                                                                      
  seconds = _TOD_To_seconds( wall_time );                             
  if ( seconds <= _TOD_Seconds_since_epoch() )                        
    return RTEMS_INVALID_CLOCK;                                       
   51c10:	7014           	moveq #20,%d0                               <== NOT EXECUTED
   51c12:	6002           	bras 51c16 <rtems_timer_fire_when+0xc2>     <== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   51c14:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   51c16:	4cee 043c ffe8 	moveml %fp@(-24),%d2-%d5/%a2                <== NOT EXECUTED
   51c1c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00051c20 <rtems_timer_get_information>: rtems_status_code rtems_timer_get_information( rtems_id id, rtems_timer_information *the_info ) {
   51c20:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   51c24:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   51c26:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
  Timer_Control     *the_timer;                                       
  Objects_Locations  location;                                        
                                                                      
  if ( !the_info )                                                    
   51c2a:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   51c2c:	6740           	beqs 51c6e <rtems_timer_get_information+0x4e><== NOT EXECUTED
   51c2e:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   51c32:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   51c36:	4879 0007 5238 	pea 75238 <_Timer_Information>              <== NOT EXECUTED
   51c3c:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
   51c42:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   51c46:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   51c48:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   51c4c:	6624           	bnes 51c72 <rtems_timer_get_information+0x52><== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      the_info->the_class  = the_timer->the_class;                    
   51c4e:	24a8 0038      	movel %a0@(56),%a2@                         <== NOT EXECUTED
      the_info->initial    = the_timer->Ticker.initial;               
   51c52:	2568 001c 0004 	movel %a0@(28),%a2@(4)                      <== NOT EXECUTED
      the_info->start_time = the_timer->Ticker.start_time;            
   51c58:	2568 0024 0008 	movel %a0@(36),%a2@(8)                      <== NOT EXECUTED
      the_info->stop_time  = the_timer->Ticker.stop_time;             
   51c5e:	2568 0028 000c 	movel %a0@(40),%a2@(12)                     <== NOT EXECUTED
      _Thread_Enable_dispatch();                                      
   51c64:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   51c6a:	4280           	clrl %d0                                    <== NOT EXECUTED
   51c6c:	6006           	bras 51c74 <rtems_timer_get_information+0x54><== NOT EXECUTED
{                                                                     
  Timer_Control     *the_timer;                                       
  Objects_Locations  location;                                        
                                                                      
  if ( !the_info )                                                    
    return RTEMS_INVALID_ADDRESS;                                     
   51c6e:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   51c70:	6002           	bras 51c74 <rtems_timer_get_information+0x54><== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   51c72:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   51c74:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   51c78:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00051c7c <rtems_timer_ident>: rtems_status_code rtems_timer_ident( rtems_name name, rtems_id *id ) {
   51c7c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  Objects_Name_or_id_lookup_errors  status;                           
                                                                      
  status = _Objects_Name_to_id_u32(                                   
   51c80:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   51c84:	2f3c 7fff ffff 	movel #2147483647,%sp@-                     <== NOT EXECUTED
   51c8a:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   51c8e:	4879 0007 5238 	pea 75238 <_Timer_Information>              <== NOT EXECUTED
   51c94:	4eb9 0005 442c 	jsr 5442c <_Objects_Name_to_id_u32>         <== NOT EXECUTED
    OBJECTS_SEARCH_LOCAL_NODE,                                        
    id                                                                
  );                                                                  
                                                                      
  return _Status_Object_name_errors_to_status[ status ];              
}                                                                     
   51c9a:	41f9 0006 e620 	lea 6e620 <_Status_Object_name_errors_to_status>,%a0<== NOT EXECUTED
   51ca0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   51ca2:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            <== NOT EXECUTED
                                                                      

00052286 <rtems_timer_initiate_server>: rtems_status_code rtems_timer_initiate_server( uint32_t priority, uint32_t stack_size, rtems_attribute attribute_set ) {
   52286:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   5228a:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   5228e:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   52290:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE bool _RTEMS_tasks_Priority_is_valid (            
  rtems_task_priority the_priority                                    
)                                                                     
{                                                                     
  return (  ( the_priority >= RTEMS_MINIMUM_PRIORITY ) &&             
   52292:	4a80           	tstl %d0                                    <== NOT EXECUTED
   52294:	6712           	beqs 522a8 <rtems_timer_initiate_server+0x22><== NOT EXECUTED
            ( the_priority <= RTEMS_MAXIMUM_PRIORITY ) );             
   52296:	4281           	clrl %d1                                    <== NOT EXECUTED
   52298:	1239 0006 f422 	moveb 6f422 <rtems_maximum_priority>,%d1    <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE bool _RTEMS_tasks_Priority_is_valid (            
  rtems_task_priority the_priority                                    
)                                                                     
{                                                                     
  return (  ( the_priority >= RTEMS_MINIMUM_PRIORITY ) &&             
   5229e:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   522a0:	54c1           	scc %d1                                     <== NOT EXECUTED
   522a2:	49c1           	extbl %d1                                   <== NOT EXECUTED
   522a4:	4481           	negl %d1                                    <== NOT EXECUTED
   522a6:	6002           	bras 522aa <rtems_timer_initiate_server+0x24><== NOT EXECUTED
   522a8:	4281           	clrl %d1                                    <== NOT EXECUTED
   *  Make sure the requested priority is valid.  The if is           
   *  structured so we check it is invalid before looking for         
   *  a specific invalid value as the default.                        
   */                                                                 
  _priority = priority;                                               
  if ( !_RTEMS_tasks_Priority_is_valid( priority ) ) {                
   522aa:	4a01           	tstb %d1                                    <== NOT EXECUTED
   522ac:	660c           	bnes 522ba <rtems_timer_initiate_server+0x34><== NOT EXECUTED
    if ( priority != RTEMS_TIMER_SERVER_DEFAULT_PRIORITY )            
   522ae:	72ff           	moveq #-1,%d1                               <== NOT EXECUTED
   522b0:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   522b2:	6600 013a      	bnew 523ee <rtems_timer_initiate_server+0x168><== NOT EXECUTED
      return RTEMS_INVALID_PRIORITY;                                  
    _priority = 0;                                                    
   522b6:	4282           	clrl %d2                                    <== NOT EXECUTED
   522b8:	6002           	bras 522bc <rtems_timer_initiate_server+0x36><== NOT EXECUTED
   *  Make sure the requested priority is valid.  The if is           
   *  structured so we check it is invalid before looking for         
   *  a specific invalid value as the default.                        
   */                                                                 
  _priority = priority;                                               
  if ( !_RTEMS_tasks_Priority_is_valid( priority ) ) {                
   522ba:	2400           	movel %d0,%d2                               <== NOT EXECUTED
  }                                                                   
                                                                      
  /*                                                                  
   *  Just to make sure this is only called once.                     
   */                                                                 
  _Thread_Disable_dispatch();                                         
   522bc:	4eba fc0a      	jsr %pc@(51ec8 <_Thread_Disable_dispatch>)  <== NOT EXECUTED
    tmpInitialized  = initialized;                                    
    initialized = true;                                               
   522c0:	7001           	moveq #1,%d0                                <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Just to make sure this is only called once.                     
   */                                                                 
  _Thread_Disable_dispatch();                                         
    tmpInitialized  = initialized;                                    
   522c2:	1639 0007 04ee 	moveb 704ee <initialized.3666>,%d3          <== NOT EXECUTED
    initialized = true;                                               
   522c8:	13c0 0007 04ee 	moveb %d0,704ee <initialized.3666>          <== NOT EXECUTED
  _Thread_Enable_dispatch();                                          
   522ce:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
                                                                      
  if ( tmpInitialized )                                               
   522d4:	4a03           	tstb %d3                                    <== NOT EXECUTED
   522d6:	6600 011a      	bnew 523f2 <rtems_timer_initiate_server+0x16c><== NOT EXECUTED
   *  other library rules.  For example, if using a TSR written in Ada the
   *  Server should run at the same priority as the priority Ada task.
   *  Otherwise, the priority ceiling for the mutex used to protect the
   *  GNAT run-time is violated.                                      
   */                                                                 
  status = rtems_task_create(                                         
   522da:	222e 0010      	movel %fp@(16),%d1                          <== NOT EXECUTED
   522de:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   522e2:	08c1 000f      	bset #15,%d1                                <== NOT EXECUTED
   522e6:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   522e8:	4878 0100      	pea 100 <DBL_MANT_DIG+0xcb>                 <== NOT EXECUTED
   522ec:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   522f0:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   522f2:	2f3c 5449 4d45 	movel #1414090053,%sp@-                     <== NOT EXECUTED
   522f8:	4eb9 0005 1178 	jsr 51178 <rtems_task_create>               <== NOT EXECUTED
                          /* user may want floating point but we need */
                          /*   system task specified for 0 priority */
    attribute_set | RTEMS_SYSTEM_TASK,                                
    &id                   /* get the id back */                       
  );                                                                  
  if (status) {                                                       
   522fe:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
   52302:	4a80           	tstl %d0                                    <== NOT EXECUTED
   52304:	670c           	beqs 52312 <rtems_timer_initiate_server+0x8c><== NOT EXECUTED
    initialized = false;                                              
   52306:	4201           	clrb %d1                                    <== NOT EXECUTED
   52308:	13c1 0007 04ee 	moveb %d1,704ee <initialized.3666>          <== NOT EXECUTED
    return status;                                                    
   5230e:	6000 00e4      	braw 523f4 <rtems_timer_initiate_server+0x16e><== NOT EXECUTED
   *  We work with the TCB pointer, not the ID, so we need to convert 
   *  to a TCB pointer from here out.                                 
   */                                                                 
  ts->thread = (Thread_Control *)_Objects_Get_local_object(           
    &_RTEMS_tasks_Information,                                        
    _Objects_Get_index(id)                                            
   52312:	202e fffc      	movel %fp@(-4),%d0                          <== NOT EXECUTED
   */                                                                 
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return NULL;                                                    
  #endif                                                              
  return information->local_table[ index ];                           
   52316:	4281           	clrl %d1                                    <== NOT EXECUTED
   52318:	2079 0007 4f9c 	moveal 74f9c <_RTEMS_tasks_Information+0x18>,%a0<== NOT EXECUTED
   5231e:	3200           	movew %d0,%d1                               <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  We work with the TCB pointer, not the ID, so we need to convert 
   *  to a TCB pointer from here out.                                 
   */                                                                 
  ts->thread = (Thread_Control *)_Objects_Get_local_object(           
   52320:	41f0 1c00      	lea %a0@(00000000,%d1:l:4),%a0              <== NOT EXECUTED
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
                                                                      
  head->next = tail;                                                  
  head->previous = NULL;                                              
  tail->previous = head;                                              
   52324:	223c 0007 04a0 	movel #459936,%d1                           <== NOT EXECUTED
   5232a:	23d0 0007 0470 	movel %a0@,70470 <_Timer_server_Default>    <== NOT EXECUTED
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
                                                                      
  head->next = tail;                                                  
   52330:	41f9 0007 04a4 	lea 704a4 <_Timer_server_Default+0x34>,%a0  <== NOT EXECUTED
  head->previous = NULL;                                              
  tail->previous = head;                                              
   52336:	23c1 0007 04a8 	movel %d1,704a8 <_Timer_server_Default+0x38><== NOT EXECUTED
   5233c:	223c 0007 04d8 	movel #459992,%d1                           <== NOT EXECUTED
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
                                                                      
  head->next = tail;                                                  
   52342:	23c8 0007 04a0 	movel %a0,704a0 <_Timer_server_Default+0x30><== NOT EXECUTED
   52348:	41f9 0007 04dc 	lea 704dc <_Timer_server_Default+0x6c>,%a0  <== NOT EXECUTED
  head->previous = NULL;                                              
  tail->previous = head;                                              
   5234e:	23c1 0007 04e0 	movel %d1,704e0 <_Timer_server_Default+0x70><== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Initialize the pointer to the timer schedule method so applications that
   *  do not use the Timer Server do not have to pull it in.          
   */                                                                 
  ts->schedule_operation = _Timer_server_Schedule_operation_method;   
   52354:	223c 0005 216c 	movel #336236,%d1                           <== NOT EXECUTED
)                                                                     
{                                                                     
  Chain_Node *head = _Chain_Head( the_chain );                        
  Chain_Node *tail = _Chain_Tail( the_chain );                        
                                                                      
  head->next = tail;                                                  
   5235a:	23c8 0007 04d8 	movel %a0,704d8 <_Timer_server_Default+0x68><== NOT EXECUTED
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
  the_watchdog->routine   = routine;                                  
   52360:	41f9 0005 4c00 	lea 54c00 <_Thread_Delay_ended>,%a0         <== NOT EXECUTED
   52366:	23c1 0007 0474 	movel %d1,70474 <_Timer_server_Default+0x4> <== NOT EXECUTED
                                                                      
  ts->Interval_watchdogs.last_snapshot = _Watchdog_Ticks_since_boot;  
   5236c:	2239 0007 512c 	movel 7512c <_Watchdog_Ticks_since_boot>,%d1<== NOT EXECUTED
   52372:	23c8 0007 0494 	movel %a0,70494 <_Timer_server_Default+0x24><== NOT EXECUTED
   52378:	23c8 0007 04cc 	movel %a0,704cc <_Timer_server_Default+0x5c><== NOT EXECUTED
  ts->TOD_watchdogs.last_snapshot = (Watchdog_Interval) _TOD_Seconds_since_epoch();
   5237e:	41f9 0007 50ae 	lea 750ae <_TOD_Now>,%a0                    <== NOT EXECUTED
   *  Initialize the pointer to the timer schedule method so applications that
   *  do not use the Timer Server do not have to pull it in.          
   */                                                                 
  ts->schedule_operation = _Timer_server_Schedule_operation_method;   
                                                                      
  ts->Interval_watchdogs.last_snapshot = _Watchdog_Ticks_since_boot;  
   52384:	23c1 0007 04ac 	movel %d1,704ac <_Timer_server_Default+0x3c><== NOT EXECUTED
  ts->TOD_watchdogs.last_snapshot = (Watchdog_Interval) _TOD_Seconds_since_epoch();
   5238a:	23d0 0007 04e4 	movel %a0@,704e4 <_Timer_server_Default+0x74><== NOT EXECUTED
  ts->active = false;                                                 
                                                                      
  /*                                                                  
   * The default timer server is now available.                       
   */                                                                 
  _Timer_server = ts;                                                 
   52390:	41f9 0007 0470 	lea 70470 <_Timer_server_Default>,%a0       <== NOT EXECUTED
                                                                      
  ts->Interval_watchdogs.last_snapshot = _Watchdog_Ticks_since_boot;  
  ts->TOD_watchdogs.last_snapshot = (Watchdog_Interval) _TOD_Seconds_since_epoch();
                                                                      
  ts->insert_chain = NULL;                                            
  ts->active = false;                                                 
   52396:	4201           	clrb %d1                                    <== NOT EXECUTED
  _Timer_server = ts;                                                 
                                                                      
  /*                                                                  
   *  Start the timer server                                          
   */                                                                 
  status = rtems_task_start(                                          
   52398:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   5239a:	487a fc06      	pea %pc@(51fa2 <_Timer_server_Body>)        <== NOT EXECUTED
  ts->schedule_operation = _Timer_server_Schedule_operation_method;   
                                                                      
  ts->Interval_watchdogs.last_snapshot = _Watchdog_Ticks_since_boot;  
  ts->TOD_watchdogs.last_snapshot = (Watchdog_Interval) _TOD_Seconds_since_epoch();
                                                                      
  ts->insert_chain = NULL;                                            
   5239e:	42b9 0007 04e8 	clrl 704e8 <_Timer_server_Default+0x78>     <== NOT EXECUTED
  ts->active = false;                                                 
   523a4:	13c1 0007 04ec 	moveb %d1,704ec <_Timer_server_Default+0x7c><== NOT EXECUTED
  _Timer_server = ts;                                                 
                                                                      
  /*                                                                  
   *  Start the timer server                                          
   */                                                                 
  status = rtems_task_start(                                          
   523aa:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
  head->previous = NULL;                                              
   523ac:	42b9 0007 04a4 	clrl 704a4 <_Timer_server_Default+0x34>     <== NOT EXECUTED
   523b2:	42b9 0007 04dc 	clrl 704dc <_Timer_server_Default+0x6c>     <== NOT EXECUTED
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   523b8:	42b9 0007 0480 	clrl 70480 <_Timer_server_Default+0x10>     <== NOT EXECUTED
  the_watchdog->routine   = routine;                                  
  the_watchdog->id        = id;                                       
   523be:	23c0 0007 0498 	movel %d0,70498 <_Timer_server_Default+0x28><== NOT EXECUTED
  the_watchdog->user_data = user_data;                                
   523c4:	42b9 0007 049c 	clrl 7049c <_Timer_server_Default+0x2c>     <== NOT EXECUTED
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   523ca:	42b9 0007 04b8 	clrl 704b8 <_Timer_server_Default+0x48>     <== NOT EXECUTED
  the_watchdog->routine   = routine;                                  
  the_watchdog->id        = id;                                       
   523d0:	23c0 0007 04d0 	movel %d0,704d0 <_Timer_server_Default+0x60><== NOT EXECUTED
  the_watchdog->user_data = user_data;                                
   523d6:	42b9 0007 04d4 	clrl 704d4 <_Timer_server_Default+0x64>     <== NOT EXECUTED
  ts->active = false;                                                 
                                                                      
  /*                                                                  
   * The default timer server is now available.                       
   */                                                                 
  _Timer_server = ts;                                                 
   523dc:	23c8 0007 5270 	movel %a0,75270 <_Timer_server>             <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Start the timer server                                          
   */                                                                 
  status = rtems_task_start(                                          
   523e2:	4eb9 0005 1780 	jsr 51780 <rtems_task_start>                <== NOT EXECUTED
    if (status) {                                                     
      initialized = false;                                            
    }                                                                 
  #endif                                                              
                                                                      
  return status;                                                      
   523e8:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   523ec:	6006           	bras 523f4 <rtems_timer_initiate_server+0x16e><== NOT EXECUTED
   *  a specific invalid value as the default.                        
   */                                                                 
  _priority = priority;                                               
  if ( !_RTEMS_tasks_Priority_is_valid( priority ) ) {                
    if ( priority != RTEMS_TIMER_SERVER_DEFAULT_PRIORITY )            
      return RTEMS_INVALID_PRIORITY;                                  
   523ee:	7013           	moveq #19,%d0                               <== NOT EXECUTED
   523f0:	6002           	bras 523f4 <rtems_timer_initiate_server+0x16e><== NOT EXECUTED
    tmpInitialized  = initialized;                                    
    initialized = true;                                               
  _Thread_Enable_dispatch();                                          
                                                                      
  if ( tmpInitialized )                                               
    return RTEMS_INCORRECT_STATE;                                     
   523f2:	700e           	moveq #14,%d0                               <== NOT EXECUTED
      initialized = false;                                            
    }                                                                 
  #endif                                                              
                                                                      
  return status;                                                      
}                                                                     
   523f4:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   523f8:	262e fff8      	movel %fp@(-8),%d3                          <== NOT EXECUTED
   523fc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00051ca8 <rtems_timer_reset>: */ rtems_status_code rtems_timer_reset( rtems_id id ) {
   51ca8:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   51cac:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   51cae:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   51cb0:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   51cb4:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   51cb8:	4879 0007 5238 	pea 75238 <_Timer_Information>              <== NOT EXECUTED
   51cbe:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
  Timer_Control     *the_timer;                                       
  Objects_Locations  location;                                        
  rtems_status_code  status = RTEMS_SUCCESSFUL;                       
                                                                      
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
   51cc4:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   51cc8:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   51cca:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   51cce:	6656           	bnes 51d26 <rtems_timer_reset+0x7e>         <== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( the_timer->the_class == TIMER_INTERVAL ) {                 
   51cd0:	202a 0038      	movel %a2@(56),%d0                          <== NOT EXECUTED
   51cd4:	661c           	bnes 51cf2 <rtems_timer_reset+0x4a>         <== NOT EXECUTED
        _Watchdog_Remove( &the_timer->Ticker );                       
   51cd6:	45ea 0010      	lea %a2@(16),%a2                            <== NOT EXECUTED
   51cda:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   51cdc:	4eb9 0005 5e40 	jsr 55e40 <_Watchdog_Remove>                <== NOT EXECUTED
        _Watchdog_Insert( &_Watchdog_Ticks_chain, &the_timer->Ticker );
   51ce2:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   51ce4:	4879 0007 50e4 	pea 750e4 <_Watchdog_Ticks_chain>           <== NOT EXECUTED
   51cea:	4eb9 0005 5d18 	jsr 55d18 <_Watchdog_Insert>                <== NOT EXECUTED
   51cf0:	6020           	bras 51d12 <rtems_timer_reset+0x6a>         <== NOT EXECUTED
      } else if ( the_timer->the_class == TIMER_INTERVAL_ON_TASK ) {  
   51cf2:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   51cf4:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   51cf6:	6622           	bnes 51d1a <rtems_timer_reset+0x72>         <== NOT EXECUTED
          if ( !timer_server ) {                                      
            _Thread_Enable_dispatch();                                
            return RTEMS_INCORRECT_STATE;                             
          }                                                           
        #endif                                                        
        _Watchdog_Remove( &the_timer->Ticker );                       
   51cf8:	486a 0010      	pea %a2@(16)                                <== NOT EXECUTED
    case OBJECTS_LOCAL:                                               
      if ( the_timer->the_class == TIMER_INTERVAL ) {                 
        _Watchdog_Remove( &the_timer->Ticker );                       
        _Watchdog_Insert( &_Watchdog_Ticks_chain, &the_timer->Ticker );
      } else if ( the_timer->the_class == TIMER_INTERVAL_ON_TASK ) {  
        Timer_server_Control *timer_server = _Timer_server;           
   51cfc:	2679 0007 5270 	moveal 75270 <_Timer_server>,%a3            <== NOT EXECUTED
          if ( !timer_server ) {                                      
            _Thread_Enable_dispatch();                                
            return RTEMS_INCORRECT_STATE;                             
          }                                                           
        #endif                                                        
        _Watchdog_Remove( &the_timer->Ticker );                       
   51d02:	4eb9 0005 5e40 	jsr 55e40 <_Watchdog_Remove>                <== NOT EXECUTED
        (*timer_server->schedule_operation)( timer_server, the_timer );
   51d08:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   51d0a:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   51d0c:	206b 0004      	moveal %a3@(4),%a0                          <== NOT EXECUTED
   51d10:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   51d12:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
  rtems_id id                                                         
)                                                                     
{                                                                     
  Timer_Control     *the_timer;                                       
  Objects_Locations  location;                                        
  rtems_status_code  status = RTEMS_SUCCESSFUL;                       
   51d16:	95ca           	subal %a2,%a2                               <== NOT EXECUTED
   51d18:	6004           	bras 51d1e <rtems_timer_reset+0x76>         <== NOT EXECUTED
        /*                                                            
         *  Must be dormant or time of day timer (e.g. TIMER_DORMANT, 
         *  TIMER_TIME_OF_DAY, or TIMER_TIME_OF_DAY_ON_TASK).  We     
         *  can only reset active interval timers.                    
         */                                                           
        status = RTEMS_NOT_DEFINED;                                   
   51d1a:	347c 000b      	moveaw #11,%a2                              <== NOT EXECUTED
      }                                                               
      _Thread_Enable_dispatch();                                      
   51d1e:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return status;                                                  
   51d24:	6004           	bras 51d2a <rtems_timer_reset+0x82>         <== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   51d26:	347c 0004      	moveaw #4,%a2                               <== NOT EXECUTED
}                                                                     
   51d2a:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   51d2c:	246e fff4      	moveal %fp@(-12),%a2                        <== NOT EXECUTED
   51d30:	266e fff8      	moveal %fp@(-8),%a3                         <== NOT EXECUTED
   51d34:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00051d38 <rtems_timer_server_fire_after>: rtems_id id, rtems_interval ticks, rtems_timer_service_routine_entry routine, void *user_data ) {
   51d38:	4e56 ffe4      	linkw %fp,#-28                              <== NOT EXECUTED
   51d3c:	48d7 1c1c      	moveml %d2-%d4/%a2-%a4,%sp@                 <== NOT EXECUTED
   51d40:	262e 0008      	movel %fp@(8),%d3                           <== NOT EXECUTED
   51d44:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
   51d48:	282e 0010      	movel %fp@(16),%d4                          <== NOT EXECUTED
  Timer_Control        *the_timer;                                    
  Objects_Locations     location;                                     
  ISR_Level             level;                                        
  Timer_server_Control *timer_server = _Timer_server;                 
   51d4c:	2679 0007 5270 	moveal 75270 <_Timer_server>,%a3            <== NOT EXECUTED
                                                                      
  if ( !timer_server )                                                
   51d52:	4a8b           	tstl %a3                                    <== NOT EXECUTED
   51d54:	6700 0086      	beqw 51ddc <rtems_timer_server_fire_after+0xa4><== NOT EXECUTED
    return RTEMS_INCORRECT_STATE;                                     
                                                                      
  if ( !routine )                                                     
   51d58:	4a84           	tstl %d4                                    <== NOT EXECUTED
   51d5a:	6700 0084      	beqw 51de0 <rtems_timer_server_fire_after+0xa8><== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( ticks == 0 )                                                   
   51d5e:	4a82           	tstl %d2                                    <== NOT EXECUTED
   51d60:	6700 0082      	beqw 51de4 <rtems_timer_server_fire_after+0xac><== NOT EXECUTED
   51d64:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   51d68:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   51d6a:	4879 0007 5238 	pea 75238 <_Timer_Information>              <== NOT EXECUTED
   51d70:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
   51d76:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   51d7a:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   51d7c:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   51d80:	6666           	bnes 51de8 <rtems_timer_server_fire_after+0xb0><== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      (void) _Watchdog_Remove( &the_timer->Ticker );                  
   51d82:	486a 0010      	pea %a2@(16)                                <== NOT EXECUTED
   51d86:	4eb9 0005 5e40 	jsr 55e40 <_Watchdog_Remove>                <== NOT EXECUTED
                                                                      
      _ISR_Disable( level );                                          
   51d8c:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   51d92:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   51d94:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   51d96:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
   51d98:	49f9 0005 4d7a 	lea 54d7a <_Thread_Enable_dispatch>,%a4     <== NOT EXECUTED
        /*                                                            
         *  Check to see if the watchdog has just been inserted by a  
         *  higher priority interrupt.  If so, abandon this insert.   
         */                                                           
                                                                      
        if ( the_timer->Ticker.state != WATCHDOG_INACTIVE ) {         
   51d9e:	588f           	addql #4,%sp                                <== NOT EXECUTED
   51da0:	4aaa 0018      	tstl %a2@(24)                               <== NOT EXECUTED
   51da4:	6706           	beqs 51dac <rtems_timer_server_fire_after+0x74><== NOT EXECUTED
          _ISR_Enable( level );                                       
   51da6:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
          _Thread_Enable_dispatch();                                  
   51da8:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   51daa:	602c           	bras 51dd8 <rtems_timer_server_fire_after+0xa0><== NOT EXECUTED
        /*                                                            
         *  OK.  Now we now the timer was not rescheduled by an interrupt
         *  so we can atomically initialize it as in use.             
         */                                                           
                                                                      
        the_timer->the_class = TIMER_INTERVAL_ON_TASK;                
   51dac:	7001           	moveq #1,%d0                                <== NOT EXECUTED
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
  the_watchdog->routine   = routine;                                  
  the_watchdog->id        = id;                                       
  the_watchdog->user_data = user_data;                                
   51dae:	256e 0014 0034 	movel %fp@(20),%a2@(52)                     <== NOT EXECUTED
   51db4:	2540 0038      	movel %d0,%a2@(56)                          <== NOT EXECUTED
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   51db8:	42aa 0018      	clrl %a2@(24)                               <== NOT EXECUTED
  the_watchdog->routine   = routine;                                  
   51dbc:	2544 002c      	movel %d4,%a2@(44)                          <== NOT EXECUTED
  the_watchdog->id        = id;                                       
   51dc0:	2543 0030      	movel %d3,%a2@(48)                          <== NOT EXECUTED
        _Watchdog_Initialize( &the_timer->Ticker, routine, id, user_data );
        the_timer->Ticker.initial = ticks;                            
   51dc4:	2542 001c      	movel %d2,%a2@(28)                          <== NOT EXECUTED
      _ISR_Enable( level );                                           
   51dc8:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
                                                                      
      (*timer_server->schedule_operation)( timer_server, the_timer ); 
   51dca:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   51dcc:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   51dce:	206b 0004      	moveal %a3@(4),%a0                          <== NOT EXECUTED
   51dd2:	4e90           	jsr %a0@                                    <== NOT EXECUTED
                                                                      
      _Thread_Enable_dispatch();                                      
   51dd4:	4e94           	jsr %a4@                                    <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   51dd6:	508f           	addql #8,%sp                                <== NOT EXECUTED
   51dd8:	4280           	clrl %d0                                    <== NOT EXECUTED
   51dda:	600e           	bras 51dea <rtems_timer_server_fire_after+0xb2><== NOT EXECUTED
  Objects_Locations     location;                                     
  ISR_Level             level;                                        
  Timer_server_Control *timer_server = _Timer_server;                 
                                                                      
  if ( !timer_server )                                                
    return RTEMS_INCORRECT_STATE;                                     
   51ddc:	700e           	moveq #14,%d0                               <== NOT EXECUTED
   51dde:	600a           	bras 51dea <rtems_timer_server_fire_after+0xb2><== NOT EXECUTED
                                                                      
  if ( !routine )                                                     
    return RTEMS_INVALID_ADDRESS;                                     
   51de0:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   51de2:	6006           	bras 51dea <rtems_timer_server_fire_after+0xb2><== NOT EXECUTED
                                                                      
  if ( ticks == 0 )                                                   
    return RTEMS_INVALID_NUMBER;                                      
   51de4:	700a           	moveq #10,%d0                               <== NOT EXECUTED
   51de6:	6002           	bras 51dea <rtems_timer_server_fire_after+0xb2><== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   51de8:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   51dea:	4cee 1c1c ffe4 	moveml %fp@(-28),%d2-%d4/%a2-%a4            <== NOT EXECUTED
   51df0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

00051df4 <rtems_timer_server_fire_when>: rtems_id id, rtems_time_of_day *wall_time, rtems_timer_service_routine_entry routine, void *user_data ) {
   51df4:	4e56 ffe8      	linkw %fp,#-24                              <== NOT EXECUTED
   51df8:	48d7 0c1c      	moveml %d2-%d4/%a2-%a3,%sp@                 <== NOT EXECUTED
   51dfc:	262e 0008      	movel %fp@(8),%d3                           <== NOT EXECUTED
   51e00:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
   51e04:	282e 0010      	movel %fp@(16),%d4                          <== NOT EXECUTED
  Timer_Control        *the_timer;                                    
  Objects_Locations     location;                                     
  rtems_interval        seconds;                                      
  Timer_server_Control *timer_server = _Timer_server;                 
   51e08:	2679 0007 5270 	moveal 75270 <_Timer_server>,%a3            <== NOT EXECUTED
                                                                      
  if ( !timer_server )                                                
   51e0e:	4a8b           	tstl %a3                                    <== NOT EXECUTED
   51e10:	6700 0098      	beqw 51eaa <rtems_timer_server_fire_when+0xb6><== NOT EXECUTED
    return RTEMS_INCORRECT_STATE;                                     
                                                                      
  if ( !_TOD_Is_set )                                                 
   51e14:	4a39 0007 5014 	tstb 75014 <_TOD_Is_set>                    <== NOT EXECUTED
   51e1a:	6700 0092      	beqw 51eae <rtems_timer_server_fire_when+0xba><== NOT EXECUTED
    return RTEMS_NOT_DEFINED;                                         
                                                                      
  if ( !routine )                                                     
   51e1e:	4a84           	tstl %d4                                    <== NOT EXECUTED
   51e20:	6700 0090      	beqw 51eb2 <rtems_timer_server_fire_when+0xbe><== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !_TOD_Validate( wall_time ) )                                  
   51e24:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   51e26:	4eb9 0004 f2b0 	jsr 4f2b0 <_TOD_Validate>                   <== NOT EXECUTED
   51e2c:	588f           	addql #4,%sp                                <== NOT EXECUTED
   51e2e:	4a00           	tstb %d0                                    <== NOT EXECUTED
   51e30:	6700 0084      	beqw 51eb6 <rtems_timer_server_fire_when+0xc2><== NOT EXECUTED
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  seconds = _TOD_To_seconds( wall_time );                             
   51e34:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   51e36:	4eb9 0004 f214 	jsr 4f214 <_TOD_To_seconds>                 <== NOT EXECUTED
  if ( seconds <= _TOD_Seconds_since_epoch() )                        
   51e3c:	588f           	addql #4,%sp                                <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !_TOD_Validate( wall_time ) )                                  
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  seconds = _TOD_To_seconds( wall_time );                             
   51e3e:	2400           	movel %d0,%d2                               <== NOT EXECUTED
  if ( seconds <= _TOD_Seconds_since_epoch() )                        
   51e40:	b0b9 0007 50ae 	cmpl 750ae <_TOD_Now>,%d0                   <== NOT EXECUTED
   51e46:	636e           	blss 51eb6 <rtems_timer_server_fire_when+0xc2><== NOT EXECUTED
   51e48:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   51e4c:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   51e4e:	4879 0007 5238 	pea 75238 <_Timer_Information>              <== NOT EXECUTED
   51e54:	4eb9 0005 42c4 	jsr 542c4 <_Objects_Get>                    <== NOT EXECUTED
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
   51e5a:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   51e5e:	2440           	moveal %d0,%a2                              <== NOT EXECUTED
   51e60:	4aae fffc      	tstl %fp@(-4)                               <== NOT EXECUTED
   51e64:	6654           	bnes 51eba <rtems_timer_server_fire_when+0xc6><== NOT EXECUTED
                                                                      
    case OBJECTS_LOCAL:                                               
      (void) _Watchdog_Remove( &the_timer->Ticker );                  
   51e66:	486a 0010      	pea %a2@(16)                                <== NOT EXECUTED
   51e6a:	4eb9 0005 5e40 	jsr 55e40 <_Watchdog_Remove>                <== NOT EXECUTED
  the_watchdog->user_data = user_data;                                
   51e70:	256e 0014 0034 	movel %fp@(20),%a2@(52)                     <== NOT EXECUTED
      the_timer->the_class = TIMER_TIME_OF_DAY_ON_TASK;               
      _Watchdog_Initialize( &the_timer->Ticker, routine, id, user_data );
      the_timer->Ticker.initial = seconds - _TOD_Seconds_since_epoch();
   51e76:	94b9 0007 50ae 	subl 750ae <_TOD_Now>,%d2                   <== NOT EXECUTED
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
                                                                      
    case OBJECTS_LOCAL:                                               
      (void) _Watchdog_Remove( &the_timer->Ticker );                  
      the_timer->the_class = TIMER_TIME_OF_DAY_ON_TASK;               
   51e7c:	7003           	moveq #3,%d0                                <== NOT EXECUTED
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   51e7e:	42aa 0018      	clrl %a2@(24)                               <== NOT EXECUTED
   51e82:	2540 0038      	movel %d0,%a2@(56)                          <== NOT EXECUTED
  the_watchdog->routine   = routine;                                  
   51e86:	2544 002c      	movel %d4,%a2@(44)                          <== NOT EXECUTED
  the_watchdog->id        = id;                                       
   51e8a:	2543 0030      	movel %d3,%a2@(48)                          <== NOT EXECUTED
      _Watchdog_Initialize( &the_timer->Ticker, routine, id, user_data );
      the_timer->Ticker.initial = seconds - _TOD_Seconds_since_epoch();
   51e8e:	2542 001c      	movel %d2,%a2@(28)                          <== NOT EXECUTED
                                                                      
      (*timer_server->schedule_operation)( timer_server, the_timer ); 
   51e92:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   51e94:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   51e96:	206b 0004      	moveal %a3@(4),%a0                          <== NOT EXECUTED
   51e9a:	4e90           	jsr %a0@                                    <== NOT EXECUTED
                                                                      
      _Thread_Enable_dispatch();                                      
   51e9c:	4eb9 0005 4d7a 	jsr 54d7a <_Thread_Enable_dispatch>         <== NOT EXECUTED
      return RTEMS_SUCCESSFUL;                                        
   51ea2:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   51ea6:	4280           	clrl %d0                                    <== NOT EXECUTED
   51ea8:	6012           	bras 51ebc <rtems_timer_server_fire_when+0xc8><== NOT EXECUTED
  Objects_Locations     location;                                     
  rtems_interval        seconds;                                      
  Timer_server_Control *timer_server = _Timer_server;                 
                                                                      
  if ( !timer_server )                                                
    return RTEMS_INCORRECT_STATE;                                     
   51eaa:	700e           	moveq #14,%d0                               <== NOT EXECUTED
   51eac:	600e           	bras 51ebc <rtems_timer_server_fire_when+0xc8><== NOT EXECUTED
                                                                      
  if ( !_TOD_Is_set )                                                 
    return RTEMS_NOT_DEFINED;                                         
   51eae:	700b           	moveq #11,%d0                               <== NOT EXECUTED
   51eb0:	600a           	bras 51ebc <rtems_timer_server_fire_when+0xc8><== NOT EXECUTED
                                                                      
  if ( !routine )                                                     
    return RTEMS_INVALID_ADDRESS;                                     
   51eb2:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   51eb4:	6006           	bras 51ebc <rtems_timer_server_fire_when+0xc8><== NOT EXECUTED
  if ( !_TOD_Validate( wall_time ) )                                  
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  seconds = _TOD_To_seconds( wall_time );                             
  if ( seconds <= _TOD_Seconds_since_epoch() )                        
    return RTEMS_INVALID_CLOCK;                                       
   51eb6:	7014           	moveq #20,%d0                               <== NOT EXECUTED
   51eb8:	6002           	bras 51ebc <rtems_timer_server_fire_when+0xc8><== NOT EXECUTED
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
   51eba:	7004           	moveq #4,%d0                                <== NOT EXECUTED
}                                                                     
   51ebc:	4cee 0c1c ffe8 	moveml %fp@(-24),%d2-%d4/%a2-%a3            <== NOT EXECUTED
   51ec2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

0004608a <rtems_workspace_allocate>: */ bool rtems_workspace_allocate( uintptr_t bytes, void **pointer ) {
   4608a:	4e56 0000      	linkw %fp,#0                                
   4608e:	202e 0008      	movel %fp@(8),%d0                           
   46092:	2f0a           	movel %a2,%sp@-                             
   46094:	246e 000c      	moveal %fp@(12),%a2                         
  void *ptr;                                                          
                                                                      
  /*                                                                  
   * check the arguments                                              
   */                                                                 
  if ( !pointer )                                                     
   46098:	4a8a           	tstl %a2                                    
   4609a:	6724           	beqs 460c0 <rtems_workspace_allocate+0x36>  <== NEVER TAKEN
    return false;                                                     
                                                                      
  if ( !bytes )                                                       
   4609c:	4a80           	tstl %d0                                    
   4609e:	6720           	beqs 460c0 <rtems_workspace_allocate+0x36>  <== NEVER TAKEN
RTEMS_INLINE_ROUTINE void *_Protected_heap_Allocate(                  
  Heap_Control *heap,                                                 
  uintptr_t size                                                      
)                                                                     
{                                                                     
  return _Protected_heap_Allocate_aligned_with_boundary( heap, size, 0, 0 );
   460a0:	42a7           	clrl %sp@-                                  
   460a2:	42a7           	clrl %sp@-                                  
   460a4:	2f00           	movel %d0,%sp@-                             
   460a6:	4879 0005 cff6 	pea 5cff6 <_Workspace_Area>                 
   460ac:	4eb9 0004 7514 	jsr 47514 <_Protected_heap_Allocate_aligned_with_boundary>
                                                                      
  /*                                                                  
   * Allocate the memory                                              
   */                                                                 
  ptr =  _Protected_heap_Allocate( &_Workspace_Area, (intptr_t) bytes );
  if (!ptr)                                                           
   460b2:	4fef 0010      	lea %sp@(16),%sp                            
   460b6:	4a80           	tstl %d0                                    
   460b8:	6706           	beqs 460c0 <rtems_workspace_allocate+0x36>  <== NEVER TAKEN
    return false;                                                     
                                                                      
  *pointer = ptr;                                                     
   460ba:	2480           	movel %d0,%a2@                              
  return true;                                                        
   460bc:	7001           	moveq #1,%d0                                
   460be:	6002           	bras 460c2 <rtems_workspace_allocate+0x38>  
  /*                                                                  
   * Allocate the memory                                              
   */                                                                 
  ptr =  _Protected_heap_Allocate( &_Workspace_Area, (intptr_t) bytes );
  if (!ptr)                                                           
    return false;                                                     
   460c0:	4200           	clrb %d0                                    
                                                                      
  *pointer = ptr;                                                     
  return true;                                                        
}                                                                     
   460c2:	246e fffc      	moveal %fp@(-4),%a2                         
   460c6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      

000460ca <rtems_workspace_free>: * _Workspace_Allocate */ bool rtems_workspace_free( void *pointer ) {
   460ca:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   return _Protected_heap_Free( &_Workspace_Area, pointer );          
   460ce:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   460d2:	4879 0005 cff6 	pea 5cff6 <_Workspace_Area>                 <== NOT EXECUTED
   460d8:	4eb9 0004 7554 	jsr 47554 <_Protected_heap_Free>            <== NOT EXECUTED
}                                                                     
   460de:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      

00046068 <rtems_workspace_get_information>: #include <string.h> /* for memset */ bool rtems_workspace_get_information( Heap_Information_block *the_info ) {
   46068:	4e56 0000      	linkw %fp,#0                                
   4606c:	202e 0008      	movel %fp@(8),%d0                           
  if ( !the_info )                                                    
   46070:	6712           	beqs 46084 <rtems_workspace_get_information+0x1c><== NEVER TAKEN
    return false;                                                     
                                                                      
  return _Protected_heap_Get_information( &_Workspace_Area, the_info );
   46072:	2f00           	movel %d0,%sp@-                             
   46074:	4879 0005 cff6 	pea 5cff6 <_Workspace_Area>                 
   4607a:	4eb9 0004 758c 	jsr 4758c <_Protected_heap_Get_information> 
   46080:	508f           	addql #8,%sp                                
   46082:	6002           	bras 46086 <rtems_workspace_get_information+0x1e>
bool rtems_workspace_get_information(                                 
  Heap_Information_block  *the_info                                   
)                                                                     
{                                                                     
  if ( !the_info )                                                    
    return false;                                                     
   46084:	4200           	clrb %d0                                    
                                                                      
  return _Protected_heap_Get_information( &_Workspace_Area, the_info );
}                                                                     
   46086:	4e5e           	unlk %fp                                    <== NOT EXECUTED