Annotated Report

0004945c <IMFS_Set_handlers>:                                         
{                                                                     
  IMFS_jnode_t    *node = loc->node_access;                           
  IMFS_fs_info_t  *fs_info;                                           
                                                                      
  fs_info = loc->mt_entry->fs_info;                                   
  switch( node->type ) {                                              
   4945c:	7007           	moveq #7,%d0                                
#define MAXSYMLINK 5                                                  
                                                                      
int IMFS_Set_handlers(                                                
  rtems_filesystem_location_info_t   *loc                             
)                                                                     
{                                                                     
   4945e:	4e56 0000      	linkw %fp,#0                                
   49462:	206e 0008      	moveal %fp@(8),%a0                          
  IMFS_jnode_t    *node = loc->node_access;                           
  IMFS_fs_info_t  *fs_info;                                           
                                                                      
  fs_info = loc->mt_entry->fs_info;                                   
   49466:	2268 0010      	moveal %a0@(16),%a1                         
#define MAXSYMLINK 5                                                  
                                                                      
int IMFS_Set_handlers(                                                
  rtems_filesystem_location_info_t   *loc                             
)                                                                     
{                                                                     
   4946a:	2f0a           	movel %a2,%sp@-                             
  IMFS_jnode_t    *node = loc->node_access;                           
  IMFS_fs_info_t  *fs_info;                                           
                                                                      
  fs_info = loc->mt_entry->fs_info;                                   
   4946c:	2469 0034      	moveal %a1@(52),%a2                         
  switch( node->type ) {                                              
   49470:	2250           	moveal %a0@,%a1                             
   49472:	b0a9 0048      	cmpl %a1@(72),%d0                           
   49476:	6526           	bcss 4949e <IMFS_Set_handlers+0x42>         
   49478:	2029 0048      	movel %a1@(72),%d0                          
   4947c:	d080           	addl %d0,%d0                                
   4947e:	303b 0808      	movew %pc@(49488 <IMFS_Set_handlers+0x2c>,%d0:l),%d0
   49482:	48c0           	extl %d0                                    
   49484:	4efb 0802      	jmp %pc@(49488 <IMFS_Set_handlers+0x2c>,%d0:l)
   49488:	0016           	026                                         <== NOT EXECUTED
   4948a:	0010           	020                                         <== NOT EXECUTED
   4948c:	0050           	0120                                        <== NOT EXECUTED
   4948e:	002c           	054                                         <== NOT EXECUTED
   49490:	002c           	054                                         <== NOT EXECUTED
   49492:	001e           	036                                         <== NOT EXECUTED
   49494:	001e           	036                                         <== NOT EXECUTED
   49496:	003e           	076                                         <== NOT EXECUTED
    case IMFS_DIRECTORY:                                              
      loc->handlers = fs_info->directory_handlers;                    
   49498:	216a 000c 0008 	movel %a2@(12),%a0@(8)                      
      loc->handlers = &IMFS_fifo_handlers;                            
      break;                                                          
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   4949e:	245f           	moveal %sp@+,%a2                            
   494a0:	4280           	clrl %d0                                    
   494a2:	4e5e           	unlk %fp                                    
   494a4:	4e75           	rts                                         
   494a6:	4280           	clrl %d0                                    
      break;                                                          
    case IMFS_LINEAR_FILE:                                            
      loc->handlers = fs_info->memfile_handlers;                      
      break;                                                          
    case IMFS_MEMORY_FILE:                                            
      loc->handlers = fs_info->memfile_handlers;                      
   494a8:	216a 0008 0008 	movel %a2@(8),%a0@(8)                       
      loc->handlers = &IMFS_fifo_handlers;                            
      break;                                                          
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   494ae:	245f           	moveal %sp@+,%a2                            
   494b0:	4e5e           	unlk %fp                                    
   494b2:	4e75           	rts                                         
   494b4:	245f           	moveal %sp@+,%a2                            
    case IMFS_DEVICE:                                                 
      loc->handlers = &IMFS_device_handlers;                          
      break;                                                          
    case IMFS_SYM_LINK:                                               
    case IMFS_HARD_LINK:                                              
      loc->handlers = &IMFS_link_handlers;                            
   494b6:	203c 0005 c944 	movel #379204,%d0                           
      loc->handlers = &IMFS_fifo_handlers;                            
      break;                                                          
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   494bc:	4e5e           	unlk %fp                                    
    case IMFS_DEVICE:                                                 
      loc->handlers = &IMFS_device_handlers;                          
      break;                                                          
    case IMFS_SYM_LINK:                                               
    case IMFS_HARD_LINK:                                              
      loc->handlers = &IMFS_link_handlers;                            
   494be:	2140 0008      	movel %d0,%a0@(8)                           
      loc->handlers = &IMFS_fifo_handlers;                            
      break;                                                          
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   494c2:	4280           	clrl %d0                                    
   494c4:	4e75           	rts                                         
   494c6:	245f           	moveal %sp@+,%a2                            
      break;                                                          
    case IMFS_MEMORY_FILE:                                            
      loc->handlers = fs_info->memfile_handlers;                      
      break;                                                          
    case IMFS_FIFO:                                                   
      loc->handlers = &IMFS_fifo_handlers;                            
   494c8:	203c 0005 c868 	movel #378984,%d0                           
      break;                                                          
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   494ce:	4e5e           	unlk %fp                                    
      break;                                                          
    case IMFS_MEMORY_FILE:                                            
      loc->handlers = fs_info->memfile_handlers;                      
      break;                                                          
    case IMFS_FIFO:                                                   
      loc->handlers = &IMFS_fifo_handlers;                            
   494d0:	2140 0008      	movel %d0,%a0@(8)                           
      break;                                                          
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   494d4:	4280           	clrl %d0                                    
   494d6:	4e75           	rts                                         
   494d8:	245f           	moveal %sp@+,%a2                            
  switch( node->type ) {                                              
    case IMFS_DIRECTORY:                                              
      loc->handlers = fs_info->directory_handlers;                    
      break;                                                          
    case IMFS_DEVICE:                                                 
      loc->handlers = &IMFS_device_handlers;                          
   494da:	203c 0005 c90c 	movel #379148,%d0                           
      loc->handlers = &IMFS_fifo_handlers;                            
      break;                                                          
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   494e0:	4e5e           	unlk %fp                                    
  switch( node->type ) {                                              
    case IMFS_DIRECTORY:                                              
      loc->handlers = fs_info->directory_handlers;                    
      break;                                                          
    case IMFS_DEVICE:                                                 
      loc->handlers = &IMFS_device_handlers;                          
   494e2:	2140 0008      	movel %d0,%a0@(8)                           
      loc->handlers = &IMFS_fifo_handlers;                            
      break;                                                          
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   494e6:	4280           	clrl %d0                                    <== NOT EXECUTED
                                                                      
0004e9c4 <IMFS_chown>:                                                
int IMFS_chown(                                                       
  rtems_filesystem_location_info_t  *pathloc,       /* IN */          
  uid_t                              owner,         /* IN */          
  gid_t                              group          /* IN */          
)                                                                     
{                                                                     
   4e9c4:	4e56 ffe8      	linkw %fp,#-24                              
   4e9c8:	206e 0008      	moveal %fp@(8),%a0                          
   4e9cc:	48d7 041c      	moveml %d2-%d4/%a2,%sp@                     
  IMFS_jnode_t  *jnode;                                               
#if defined(RTEMS_POSIX_API)                                          
  uid_t          st_uid;                                              
#endif                                                                
                                                                      
  jnode = (IMFS_jnode_t *) pathloc->node_access;                      
   4e9d0:	2450           	moveal %a0@,%a2                             
   */                                                                 
                                                                      
#if defined(RTEMS_POSIX_API)                                          
  st_uid = geteuid();                                                 
                                                                      
  if ( ( st_uid != jnode->st_uid ) && ( st_uid != 0 ) )               
   4e9d2:	4284           	clrl %d4                                    
int IMFS_chown(                                                       
  rtems_filesystem_location_info_t  *pathloc,       /* IN */          
  uid_t                              owner,         /* IN */          
  gid_t                              group          /* IN */          
)                                                                     
{                                                                     
   4e9d4:	362e 000e      	movew %fp@(14),%d3                          
   4e9d8:	342e 0012      	movew %fp@(18),%d2                          
  /*                                                                  
   *  Verify I am the owner of the node or the super user.            
   */                                                                 
                                                                      
#if defined(RTEMS_POSIX_API)                                          
  st_uid = geteuid();                                                 
   4e9dc:	4eb9 0004 fec4 	jsr 4fec4 <geteuid>                         
                                                                      
  if ( ( st_uid != jnode->st_uid ) && ( st_uid != 0 ) )               
   4e9e2:	4281           	clrl %d1                                    
   4e9e4:	3800           	movew %d0,%d4                               
   4e9e6:	322a 0038      	movew %a2@(56),%d1                          
   4e9ea:	b284           	cmpl %d4,%d1                                
   4e9ec:	6704           	beqs 4e9f2 <IMFS_chown+0x2e>                
   4e9ee:	4a40           	tstw %d0                                    <== NOT EXECUTED
   4e9f0:	6628           	bnes 4ea1a <IMFS_chown+0x56>                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( EPERM );                    
#endif                                                                
                                                                      
  jnode->st_uid = owner;                                              
   4e9f2:	3543 0038      	movew %d3,%a2@(56)                          
  jnode->st_gid = group;                                              
   4e9f6:	3542 003a      	movew %d2,%a2@(58)                          
                                                                      
  IMFS_update_ctime( jnode );                                         
   4e9fa:	42a7           	clrl %sp@-                                  
   4e9fc:	486e fff8      	pea %fp@(-8)                                
   4ea00:	4eb9 0004 4060 	jsr 44060 <gettimeofday>                    
   4ea06:	256e fff8 0044 	movel %fp@(-8),%a2@(68)                     
                                                                      
  return 0;                                                           
   4ea0c:	508f           	addql #8,%sp                                
#endif                                                                
                                                                      
  jnode->st_uid = owner;                                              
  jnode->st_gid = group;                                              
                                                                      
  IMFS_update_ctime( jnode );                                         
   4ea0e:	4280           	clrl %d0                                    
                                                                      
  return 0;                                                           
}                                                                     
   4ea10:	4cee 041c ffe8 	moveml %fp@(-24),%d2-%d4/%a2                
   4ea16:	4e5e           	unlk %fp                                    
   4ea18:	4e75           	rts                                         
                                                                      
#if defined(RTEMS_POSIX_API)                                          
  st_uid = geteuid();                                                 
                                                                      
  if ( ( st_uid != jnode->st_uid ) && ( st_uid != 0 ) )               
    rtems_set_errno_and_return_minus_one( EPERM );                    
   4ea1a:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         <== NOT EXECUTED
   4ea20:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   4ea22:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4ea24:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
  jnode->st_gid = group;                                              
                                                                      
  IMFS_update_ctime( jnode );                                         
                                                                      
  return 0;                                                           
}                                                                     
   4ea26:	4cee 041c ffe8 	moveml %fp@(-24),%d2-%d4/%a2                <== NOT EXECUTED
                                                                      
#if defined(RTEMS_POSIX_API)                                          
  st_uid = geteuid();                                                 
                                                                      
  if ( ( st_uid != jnode->st_uid ) && ( st_uid != 0 ) )               
    rtems_set_errno_and_return_minus_one( EPERM );                    
   4ea2c:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
  jnode->st_gid = group;                                              
                                                                      
  IMFS_update_ctime( jnode );                                         
                                                                      
  return 0;                                                           
}                                                                     
   4ea2e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
0004d22c <IMFS_create_node>:                                          
  IMFS_jnode_types_t                type,                             
  const char                       *name,                             
  mode_t                            mode,                             
  const IMFS_types_union           *info                              
)                                                                     
{                                                                     
   4d22c:	4e56 fffc      	linkw %fp,#-4                               
   4d230:	2f0a           	movel %a2,%sp@-                             
   4d232:	246e 0008      	moveal %fp@(8),%a2                          
   4d236:	2f02           	movel %d2,%sp@-                             
   4d238:	242e 000c      	movel %fp@(12),%d2                          
  IMFS_fs_info_t      *fs_info;                                       
                                                                      
  /*                                                                  
   *  MUST have a parent node to call this routine.                   
   */                                                                 
  if ( parent_loc == NULL )                                           
   4d23c:	4a8a           	tstl %a2                                    
   4d23e:	660e           	bnes 4d24e <IMFS_create_node+0x22>          
   4d240:	4280           	clrl %d0                                    <== NOT EXECUTED
  node->st_ino = ++fs_info->ino_count;                                
                                                                      
  rtems_chain_append( &parent->info.directory.Entries, &node->Node ); 
                                                                      
  return node;                                                        
}                                                                     
   4d242:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   4d246:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   4d24a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4d24c:	4e75           	rts                                         <== NOT EXECUTED
    return NULL;                                                      
                                                                      
  /*                                                                  
   *  Allocate filesystem node and fill in basic information          
   */                                                                 
  node  = IMFS_allocate_node( type, name, mode & ~rtems_filesystem_umask );
   4d24e:	2079 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a0   
   4d254:	2028 002c      	movel %a0@(44),%d0                          
   4d258:	4680           	notl %d0                                    
   4d25a:	c0ae 0014      	andl %fp@(20),%d0                           
   4d25e:	2f00           	movel %d0,%sp@-                             
   4d260:	2f2e 0010      	movel %fp@(16),%sp@-                        
   4d264:	2f02           	movel %d2,%sp@-                             
   4d266:	4eb9 0004 d174 	jsr 4d174 <IMFS_allocate_node>              
  if ( !node )                                                        
   4d26c:	4fef 000c      	lea %sp@(12),%sp                            
   4d270:	4a80           	tstl %d0                                    
   4d272:	67ce           	beqs 4d242 <IMFS_create_node+0x16>          
    return NULL;                                                      
                                                                      
  /*                                                                  
   *  Set the type specific information                               
   */                                                                 
  switch (type) {                                                     
   4d274:	7207           	moveq #7,%d1                                
   4d276:	b282           	cmpl %d2,%d1                                
   4d278:	641c           	bccs 4d296 <IMFS_create_node+0x6a>          
    case IMFS_FIFO:                                                   
      node->info.fifo.pipe = NULL;                                    
      break;                                                          
                                                                      
    default:                                                          
      assert(0);                                                      
   4d27a:	4879 0005 ccb6 	pea 5ccb6 <IMFS_LIMITS_AND_OPTIONS+0x30>    <== NOT EXECUTED
   4d280:	4879 0005 cd01 	pea 5cd01 <__FUNCTION__.5853>               <== NOT EXECUTED
   4d286:	4878 005c      	pea 5c <DBL_MANT_DIG+0x27>                  <== NOT EXECUTED
   4d28a:	4879 0005 ccb8 	pea 5ccb8 <IMFS_LIMITS_AND_OPTIONS+0x32>    <== NOT EXECUTED
   4d290:	4eb9 0004 a508 	jsr 4a508 <__assert_func>                   <== NOT EXECUTED
    return NULL;                                                      
                                                                      
  /*                                                                  
   *  Set the type specific information                               
   */                                                                 
  switch (type) {                                                     
   4d296:	323b 2a08      	movew %pc@(4d2a0 <IMFS_create_node+0x74>,%d2:l:2),%d1
   4d29a:	48c1           	extl %d1                                    
   4d29c:	4efb 1802      	jmp %pc@(4d2a0 <IMFS_create_node+0x74>,%d1:l)
   4d2a0:	ffda           	0177732                                     <== NOT EXECUTED
   4d2a2:	0144           	bchg %d0,%d4                                <== NOT EXECUTED
   4d2a4:	00fc           	0374                                        <== NOT EXECUTED
   4d2a6:	0010           	020                                         <== NOT EXECUTED
   4d2a8:	0010           	020                                         <== NOT EXECUTED
   4d2aa:	006c           	0154                                        <== NOT EXECUTED
   4d2ac:	005a           	0132                                        <== NOT EXECUTED
   4d2ae:	00be 226e 0018 	oril #577634328,%d6                         <== NOT EXECUTED
    case IMFS_HARD_LINK:                                              
      node->info.hard_link.link_node = info->hard_link.link_node;     
      break;                                                          
                                                                      
    case IMFS_SYM_LINK:                                               
      node->info.sym_link.name = info->sym_link.name;                 
   4d2b4:	2040           	moveal %d0,%a0                              
   4d2b6:	2151 004c      	movel %a1@,%a0@(76)                         
   */                                                                 
  parent       = parent_loc->node_access;                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
                                                                      
  node->Parent = parent;                                              
  node->st_ino = ++fs_info->ino_count;                                
   4d2ba:	2240           	moveal %d0,%a1                              
                                                                      
  /*                                                                  
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
   4d2bc:	206a 0010      	moveal %a2@(16),%a0                         
   4d2c0:	2068 0034      	moveal %a0@(52),%a0                         
                                                                      
  node->Parent = parent;                                              
  node->st_ino = ++fs_info->ino_count;                                
   4d2c4:	2228 0004      	movel %a0@(4),%d1                           
   4d2c8:	5281           	addql #1,%d1                                
   4d2ca:	2141 0004      	movel %d1,%a0@(4)                           
  }                                                                   
                                                                      
  /*                                                                  
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
   4d2ce:	2052           	moveal %a2@,%a0                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
                                                                      
  node->Parent = parent;                                              
  node->st_ino = ++fs_info->ino_count;                                
   4d2d0:	2341 0034      	movel %d1,%a1@(52)                          
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
                                                                      
  node->Parent = parent;                                              
   4d2d4:	2348 0008      	movel %a0,%a1@(8)                           
RTEMS_INLINE_ROUTINE void rtems_chain_append(                         
  rtems_chain_control *the_chain,                                     
  rtems_chain_node    *the_node                                       
)                                                                     
{                                                                     
  _Chain_Append( the_chain, the_node );                               
   4d2d8:	2f00           	movel %d0,%sp@-                             
   4d2da:	4868 004c      	pea %a0@(76)                                
   4d2de:	2d40 fffc      	movel %d0,%fp@(-4)                          
   4d2e2:	4eb9 0004 6798 	jsr 46798 <_Chain_Append>                   
  node->st_ino = ++fs_info->ino_count;                                
                                                                      
  rtems_chain_append( &parent->info.directory.Entries, &node->Node ); 
                                                                      
  return node;                                                        
   4d2e8:	202e fffc      	movel %fp@(-4),%d0                          
   4d2ec:	508f           	addql #8,%sp                                
}                                                                     
   4d2ee:	242e fff4      	movel %fp@(-12),%d2                         
   4d2f2:	246e fff8      	moveal %fp@(-8),%a2                         
   4d2f6:	4e5e           	unlk %fp                                    
   4d2f8:	4e75           	rts                                         
      node->info.device.minor = info->device.minor;                   
      break;                                                          
                                                                      
    case IMFS_LINEAR_FILE:                                            
      node->info.linearfile.size      = 0;                            
      node->info.linearfile.direct    = 0;                            
   4d2fa:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
      node->info.device.major = info->device.major;                   
      node->info.device.minor = info->device.minor;                   
      break;                                                          
                                                                      
    case IMFS_LINEAR_FILE:                                            
      node->info.linearfile.size      = 0;                            
   4d2fc:	4281           	clrl %d1                                    <== NOT EXECUTED
   4d2fe:	4282           	clrl %d2                                    <== NOT EXECUTED
      node->info.linearfile.direct    = 0;                            
   4d300:	42a8 0054      	clrl %a0@(84)                               <== NOT EXECUTED
      node->info.device.major = info->device.major;                   
      node->info.device.minor = info->device.minor;                   
      break;                                                          
                                                                      
    case IMFS_LINEAR_FILE:                                            
      node->info.linearfile.size      = 0;                            
   4d304:	2141 004c      	movel %d1,%a0@(76)                          <== NOT EXECUTED
   4d308:	2142 0050      	movel %d2,%a0@(80)                          <== NOT EXECUTED
      node->info.linearfile.direct    = 0;                            
                                                                      
    case IMFS_MEMORY_FILE:                                            
      node->info.file.size            = 0;                            
   4d30c:	2040           	moveal %d0,%a0                              
      node->info.file.indirect        = 0;                            
   4d30e:	2240           	moveal %d0,%a1                              
    case IMFS_LINEAR_FILE:                                            
      node->info.linearfile.size      = 0;                            
      node->info.linearfile.direct    = 0;                            
                                                                      
    case IMFS_MEMORY_FILE:                                            
      node->info.file.size            = 0;                            
   4d310:	4281           	clrl %d1                                    
   4d312:	4282           	clrl %d2                                    
      node->info.file.indirect        = 0;                            
   4d314:	42a9 0054      	clrl %a1@(84)                               
    case IMFS_LINEAR_FILE:                                            
      node->info.linearfile.size      = 0;                            
      node->info.linearfile.direct    = 0;                            
                                                                      
    case IMFS_MEMORY_FILE:                                            
      node->info.file.size            = 0;                            
   4d318:	2141 004c      	movel %d1,%a0@(76)                          
   4d31c:	2142 0050      	movel %d2,%a0@(80)                          
      node->info.file.indirect        = 0;                            
      node->info.file.doubly_indirect = 0;                            
   4d320:	42a9 0058      	clrl %a1@(88)                               
   */                                                                 
  parent       = parent_loc->node_access;                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
                                                                      
  node->Parent = parent;                                              
  node->st_ino = ++fs_info->ino_count;                                
   4d324:	2240           	moveal %d0,%a1                              
                                                                      
    case IMFS_MEMORY_FILE:                                            
      node->info.file.size            = 0;                            
      node->info.file.indirect        = 0;                            
      node->info.file.doubly_indirect = 0;                            
      node->info.file.triply_indirect = 0;                            
   4d326:	42a8 005c      	clrl %a0@(92)                               
                                                                      
  /*                                                                  
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
   4d32a:	206a 0010      	moveal %a2@(16),%a0                         
   4d32e:	2068 0034      	moveal %a0@(52),%a0                         
                                                                      
  node->Parent = parent;                                              
  node->st_ino = ++fs_info->ino_count;                                
   4d332:	2228 0004      	movel %a0@(4),%d1                           
   4d336:	5281           	addql #1,%d1                                
   4d338:	2141 0004      	movel %d1,%a0@(4)                           
  }                                                                   
                                                                      
  /*                                                                  
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
   4d33c:	2052           	moveal %a2@,%a0                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
                                                                      
  node->Parent = parent;                                              
  node->st_ino = ++fs_info->ino_count;                                
   4d33e:	2341 0034      	movel %d1,%a1@(52)                          
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
                                                                      
  node->Parent = parent;                                              
   4d342:	2348 0008      	movel %a0,%a1@(8)                           
   4d346:	2f00           	movel %d0,%sp@-                             
   4d348:	4868 004c      	pea %a0@(76)                                
   4d34c:	2d40 fffc      	movel %d0,%fp@(-4)                          
   4d350:	4eb9 0004 6798 	jsr 46798 <_Chain_Append>                   
  node->st_ino = ++fs_info->ino_count;                                
                                                                      
  rtems_chain_append( &parent->info.directory.Entries, &node->Node ); 
                                                                      
  return node;                                                        
   4d356:	202e fffc      	movel %fp@(-4),%d0                          
   4d35a:	508f           	addql #8,%sp                                
   4d35c:	6090           	bras 4d2ee <IMFS_create_node+0xc2>          
      node->info.file.doubly_indirect = 0;                            
      node->info.file.triply_indirect = 0;                            
      break;                                                          
                                                                      
    case IMFS_FIFO:                                                   
      node->info.fifo.pipe = NULL;                                    
   4d35e:	2240           	moveal %d0,%a1                              
   4d360:	42a9 004c      	clrl %a1@(76)                               
                                                                      
  /*                                                                  
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
   4d364:	206a 0010      	moveal %a2@(16),%a0                         
                                                                      
  node->Parent = parent;                                              
  node->st_ino = ++fs_info->ino_count;                                
   4d368:	2240           	moveal %d0,%a1                              
                                                                      
  /*                                                                  
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
   4d36a:	2068 0034      	moveal %a0@(52),%a0                         
                                                                      
  node->Parent = parent;                                              
  node->st_ino = ++fs_info->ino_count;                                
   4d36e:	2228 0004      	movel %a0@(4),%d1                           
   4d372:	5281           	addql #1,%d1                                
   4d374:	2141 0004      	movel %d1,%a0@(4)                           
  }                                                                   
                                                                      
  /*                                                                  
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
   4d378:	2052           	moveal %a2@,%a0                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
                                                                      
  node->Parent = parent;                                              
  node->st_ino = ++fs_info->ino_count;                                
   4d37a:	2341 0034      	movel %d1,%a1@(52)                          
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
                                                                      
  node->Parent = parent;                                              
   4d37e:	2348 0008      	movel %a0,%a1@(8)                           
   4d382:	2f00           	movel %d0,%sp@-                             
   4d384:	4868 004c      	pea %a0@(76)                                
   4d388:	2d40 fffc      	movel %d0,%fp@(-4)                          
   4d38c:	4eb9 0004 6798 	jsr 46798 <_Chain_Append>                   
  node->st_ino = ++fs_info->ino_count;                                
                                                                      
  rtems_chain_append( &parent->info.directory.Entries, &node->Node ); 
                                                                      
  return node;                                                        
   4d392:	202e fffc      	movel %fp@(-4),%d0                          
   4d396:	508f           	addql #8,%sp                                
   4d398:	6000 ff54      	braw 4d2ee <IMFS_create_node+0xc2>          
    case IMFS_SYM_LINK:                                               
      node->info.sym_link.name = info->sym_link.name;                 
      break;                                                          
                                                                      
    case IMFS_DEVICE:                                                 
      node->info.device.major = info->device.major;                   
   4d39c:	226e 0018      	moveal %fp@(24),%a1                         
   4d3a0:	2040           	moveal %d0,%a0                              
   4d3a2:	2151 004c      	movel %a1@,%a0@(76)                         
      node->info.device.minor = info->device.minor;                   
   4d3a6:	5889           	addql #4,%a1                                
   4d3a8:	2151 0050      	movel %a1@,%a0@(80)                         
   */                                                                 
  parent       = parent_loc->node_access;                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
                                                                      
  node->Parent = parent;                                              
  node->st_ino = ++fs_info->ino_count;                                
   4d3ac:	2240           	moveal %d0,%a1                              
                                                                      
  /*                                                                  
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
   4d3ae:	206a 0010      	moveal %a2@(16),%a0                         
   4d3b2:	2068 0034      	moveal %a0@(52),%a0                         
                                                                      
  node->Parent = parent;                                              
  node->st_ino = ++fs_info->ino_count;                                
   4d3b6:	2228 0004      	movel %a0@(4),%d1                           
   4d3ba:	5281           	addql #1,%d1                                
   4d3bc:	2141 0004      	movel %d1,%a0@(4)                           
  }                                                                   
                                                                      
  /*                                                                  
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
   4d3c0:	2052           	moveal %a2@,%a0                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
                                                                      
  node->Parent = parent;                                              
  node->st_ino = ++fs_info->ino_count;                                
   4d3c2:	2341 0034      	movel %d1,%a1@(52)                          
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
                                                                      
  node->Parent = parent;                                              
   4d3c6:	2348 0008      	movel %a0,%a1@(8)                           
   4d3ca:	2f00           	movel %d0,%sp@-                             
   4d3cc:	4868 004c      	pea %a0@(76)                                
   4d3d0:	2d40 fffc      	movel %d0,%fp@(-4)                          
   4d3d4:	4eb9 0004 6798 	jsr 46798 <_Chain_Append>                   
  node->st_ino = ++fs_info->ino_count;                                
                                                                      
  rtems_chain_append( &parent->info.directory.Entries, &node->Node ); 
                                                                      
  return node;                                                        
   4d3da:	202e fffc      	movel %fp@(-4),%d0                          
   4d3de:	508f           	addql #8,%sp                                
   4d3e0:	6000 ff0c      	braw 4d2ee <IMFS_create_node+0xc2>          
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
   4d3e4:	2240           	moveal %d0,%a1                              
  the_chain->permanent_null = NULL;                                   
   4d3e6:	2040           	moveal %d0,%a0                              
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
   4d3e8:	43e9 0050      	lea %a1@(80),%a1                            
   4d3ec:	2149 004c      	movel %a1,%a0@(76)                          
  the_chain->permanent_null = NULL;                                   
  the_chain->last           = _Chain_Head(the_chain);                 
   4d3f0:	5989           	subql #4,%a1                                
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
  the_chain->permanent_null = NULL;                                   
   4d3f2:	42a8 0050      	clrl %a0@(80)                               
  the_chain->last           = _Chain_Head(the_chain);                 
   4d3f6:	2149 0054      	movel %a1,%a0@(84)                          
                                                                      
  /*                                                                  
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
   4d3fa:	206a 0010      	moveal %a2@(16),%a0                         
                                                                      
  node->Parent = parent;                                              
  node->st_ino = ++fs_info->ino_count;                                
   4d3fe:	2240           	moveal %d0,%a1                              
                                                                      
  /*                                                                  
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
   4d400:	2068 0034      	moveal %a0@(52),%a0                         
                                                                      
  node->Parent = parent;                                              
  node->st_ino = ++fs_info->ino_count;                                
   4d404:	2228 0004      	movel %a0@(4),%d1                           
   4d408:	5281           	addql #1,%d1                                
   4d40a:	2141 0004      	movel %d1,%a0@(4)                           
  }                                                                   
                                                                      
  /*                                                                  
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
   4d40e:	2052           	moveal %a2@,%a0                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
                                                                      
  node->Parent = parent;                                              
  node->st_ino = ++fs_info->ino_count;                                
   4d410:	2341 0034      	movel %d1,%a1@(52)                          
   *  This node MUST have a parent, so put it in that directory list. 
   */                                                                 
  parent       = parent_loc->node_access;                             
  fs_info      = parent_loc->mt_entry->fs_info;                       
                                                                      
  node->Parent = parent;                                              
   4d414:	2348 0008      	movel %a0,%a1@(8)                           
   4d418:	2f00           	movel %d0,%sp@-                             
   4d41a:	4868 004c      	pea %a0@(76)                                
   4d41e:	2d40 fffc      	movel %d0,%fp@(-4)                          
   4d422:	4eb9 0004 6798 	jsr 46798 <_Chain_Append>                   
  node->st_ino = ++fs_info->ino_count;                                
                                                                      
  rtems_chain_append( &parent->info.directory.Entries, &node->Node ); 
                                                                      
  return node;                                                        
   4d428:	202e fffc      	movel %fp@(-4),%d0                          
   4d42c:	508f           	addql #8,%sp                                
   4d42e:	6000 febe      	braw 4d2ee <IMFS_create_node+0xc2>          
	...                                                                  
                                                                      
00043dea <IMFS_dump_directory>:                                       
                                                                      
void IMFS_dump_directory(                                             
  IMFS_jnode_t  *the_directory,                                       
  int            level                                                
)                                                                     
{                                                                     
   43dea:	4e56 ffe0      	linkw %fp,#-32                              
   43dee:	206e 0008      	moveal %fp@(8),%a0                          
   43df2:	48d7 3c3c      	moveml %d2-%d5/%a2-%a5,%sp@                 
   43df6:	262e 000c      	movel %fp@(12),%d3                          
  rtems_chain_node     *the_node;                                     
  rtems_chain_control  *the_chain;                                    
  IMFS_jnode_t         *the_jnode;                                    
  int                   i;                                            
                                                                      
  assert( the_directory );                                            
   43dfa:	4a88           	tstl %a0                                    
   43dfc:	6700 008c      	beqw 43e8a <IMFS_dump_directory+0xa0>       
                                                                      
  assert( level >= 0 );                                               
   43e00:	4a83           	tstl %d3                                    
   43e02:	6d00 00be      	bltw 43ec2 <IMFS_dump_directory+0xd8>       
                                                                      
  assert( the_directory->type == IMFS_DIRECTORY );                    
   43e06:	7001           	moveq #1,%d0                                
   43e08:	b0a8 0048      	cmpl %a0@(72),%d0                           
   43e0c:	6600 0098      	bnew 43ea6 <IMFS_dump_directory+0xbc>       
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Tail(                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
   return (Chain_Node *) &the_chain->permanent_null;                  
   43e10:	2808           	movel %a0,%d4                               
   43e12:	0684 0000 0050 	addil #80,%d4                               
                                                                      
  the_chain = &the_directory->info.directory.Entries;                 
                                                                      
  for ( the_node = the_chain->first;                                  
   43e18:	2668 004c      	moveal %a0@(76),%a3                         
   43e1c:	b88b           	cmpl %a3,%d4                                
   43e1e:	6750           	beqs 43e70 <IMFS_dump_directory+0x86>       
                                                                      
    for ( i=0 ; i<=level ; i++ )                                      
      fprintf(stdout, "...." );                                       
    IMFS_print_jnode( the_jnode );                                    
    if ( the_jnode->type == IMFS_DIRECTORY )                          
      IMFS_dump_directory( the_jnode, level + 1 );                    
   43e20:	2a03           	movel %d3,%d5                               
   43e22:	45f9 0005 4388 	lea 54388 <fwrite>,%a2                      
   43e28:	49f9 0004 3bd2 	lea 43bd2 <IMFS_print_jnode>,%a4            
   43e2e:	5285           	addql #1,%d5                                
   43e30:	4bf9 0004 3dea 	lea 43dea <IMFS_dump_directory>,%a5         
                                                                      
  for ( the_node = the_chain->first;                                  
        !rtems_chain_is_tail( the_chain, the_node );                  
        the_node = the_node->next ) {                                 
                                                                      
    the_jnode = (IMFS_jnode_t *) the_node;                            
   43e36:	4282           	clrl %d2                                    
                                                                      
    for ( i=0 ; i<=level ; i++ )                                      
      fprintf(stdout, "...." );                                       
   43e38:	2079 0006 4290 	moveal 64290 <_impure_ptr>,%a0              
        !rtems_chain_is_tail( the_chain, the_node );                  
        the_node = the_node->next ) {                                 
                                                                      
    the_jnode = (IMFS_jnode_t *) the_node;                            
                                                                      
    for ( i=0 ; i<=level ; i++ )                                      
   43e3e:	5282           	addql #1,%d2                                
      fprintf(stdout, "...." );                                       
   43e40:	2f28 0008      	movel %a0@(8),%sp@-                         
   43e44:	4878 0004      	pea 4 <CONTEXT_ARG>                         
   43e48:	4878 0001      	pea 1 <ADD>                                 
   43e4c:	4879 0006 27a5 	pea 627a5 <IntUartPollCallbacks.6602+0x115> 
   43e52:	4e92           	jsr %a2@                                    
        !rtems_chain_is_tail( the_chain, the_node );                  
        the_node = the_node->next ) {                                 
                                                                      
    the_jnode = (IMFS_jnode_t *) the_node;                            
                                                                      
    for ( i=0 ; i<=level ; i++ )                                      
   43e54:	4fef 0010      	lea %sp@(16),%sp                            
   43e58:	b483           	cmpl %d3,%d2                                
   43e5a:	6fdc           	bles 43e38 <IMFS_dump_directory+0x4e>       
      fprintf(stdout, "...." );                                       
    IMFS_print_jnode( the_jnode );                                    
   43e5c:	2f0b           	movel %a3,%sp@-                             
   43e5e:	4e94           	jsr %a4@                                    
    if ( the_jnode->type == IMFS_DIRECTORY )                          
   43e60:	588f           	addql #4,%sp                                
   43e62:	7001           	moveq #1,%d0                                
   43e64:	b0ab 0048      	cmpl %a3@(72),%d0                           
   43e68:	6710           	beqs 43e7a <IMFS_dump_directory+0x90>       
                                                                      
  the_chain = &the_directory->info.directory.Entries;                 
                                                                      
  for ( the_node = the_chain->first;                                  
        !rtems_chain_is_tail( the_chain, the_node );                  
        the_node = the_node->next ) {                                 
   43e6a:	2653           	moveal %a3@,%a3                             
                                                                      
  assert( the_directory->type == IMFS_DIRECTORY );                    
                                                                      
  the_chain = &the_directory->info.directory.Entries;                 
                                                                      
  for ( the_node = the_chain->first;                                  
   43e6c:	b88b           	cmpl %a3,%d4                                
   43e6e:	66c6           	bnes 43e36 <IMFS_dump_directory+0x4c>       
      fprintf(stdout, "...." );                                       
    IMFS_print_jnode( the_jnode );                                    
    if ( the_jnode->type == IMFS_DIRECTORY )                          
      IMFS_dump_directory( the_jnode, level + 1 );                    
  }                                                                   
}                                                                     
   43e70:	4cee 3c3c ffe0 	moveml %fp@(-32),%d2-%d5/%a2-%a5            
   43e76:	4e5e           	unlk %fp                                    
   43e78:	4e75           	rts                                         
                                                                      
    for ( i=0 ; i<=level ; i++ )                                      
      fprintf(stdout, "...." );                                       
    IMFS_print_jnode( the_jnode );                                    
    if ( the_jnode->type == IMFS_DIRECTORY )                          
      IMFS_dump_directory( the_jnode, level + 1 );                    
   43e7a:	2f05           	movel %d5,%sp@-                             
   43e7c:	2f0b           	movel %a3,%sp@-                             
   43e7e:	4e95           	jsr %a5@                                    
                                                                      
  the_chain = &the_directory->info.directory.Entries;                 
                                                                      
  for ( the_node = the_chain->first;                                  
        !rtems_chain_is_tail( the_chain, the_node );                  
        the_node = the_node->next ) {                                 
   43e80:	2653           	moveal %a3@,%a3                             
                                                                      
    for ( i=0 ; i<=level ; i++ )                                      
      fprintf(stdout, "...." );                                       
    IMFS_print_jnode( the_jnode );                                    
    if ( the_jnode->type == IMFS_DIRECTORY )                          
      IMFS_dump_directory( the_jnode, level + 1 );                    
   43e82:	508f           	addql #8,%sp                                
                                                                      
  assert( the_directory->type == IMFS_DIRECTORY );                    
                                                                      
  the_chain = &the_directory->info.directory.Entries;                 
                                                                      
  for ( the_node = the_chain->first;                                  
   43e84:	b88b           	cmpl %a3,%d4                                
   43e86:	66ae           	bnes 43e36 <IMFS_dump_directory+0x4c>       
   43e88:	60e6           	bras 43e70 <IMFS_dump_directory+0x86>       
  rtems_chain_node     *the_node;                                     
  rtems_chain_control  *the_chain;                                    
  IMFS_jnode_t         *the_jnode;                                    
  int                   i;                                            
                                                                      
  assert( the_directory );                                            
   43e8a:	4879 0006 2766 	pea 62766 <IntUartPollCallbacks.6602+0xd6>  <== NOT EXECUTED
   43e90:	4879 0006 2834 	pea 62834 <__FUNCTION__.6604>               <== NOT EXECUTED
   43e96:	4878 0084      	pea 84 <DBL_MANT_DIG+0x4f>                  <== NOT EXECUTED
   43e9a:	4879 0006 26ba 	pea 626ba <IntUartPollCallbacks.6602+0x2a>  <== NOT EXECUTED
   43ea0:	4eb9 0004 46bc 	jsr 446bc <__assert_func>                   <== NOT EXECUTED
                                                                      
  assert( level >= 0 );                                               
                                                                      
  assert( the_directory->type == IMFS_DIRECTORY );                    
   43ea6:	4879 0006 277f 	pea 6277f <IntUartPollCallbacks.6602+0xef>  <== NOT EXECUTED
   43eac:	4879 0006 2834 	pea 62834 <__FUNCTION__.6604>               <== NOT EXECUTED
   43eb2:	4878 0088      	pea 88 <DBL_MANT_DIG+0x53>                  <== NOT EXECUTED
   43eb6:	4879 0006 26ba 	pea 626ba <IntUartPollCallbacks.6602+0x2a>  <== NOT EXECUTED
   43ebc:	4eb9 0004 46bc 	jsr 446bc <__assert_func>                   <== NOT EXECUTED
  IMFS_jnode_t         *the_jnode;                                    
  int                   i;                                            
                                                                      
  assert( the_directory );                                            
                                                                      
  assert( level >= 0 );                                               
   43ec2:	4879 0006 2774 	pea 62774 <IntUartPollCallbacks.6602+0xe4>  <== NOT EXECUTED
   43ec8:	4879 0006 2834 	pea 62834 <__FUNCTION__.6604>               <== NOT EXECUTED
   43ece:	4878 0086      	pea 86 <DBL_MANT_DIG+0x51>                  <== NOT EXECUTED
   43ed2:	4879 0006 26ba 	pea 626ba <IntUartPollCallbacks.6602+0x2a>  <== NOT EXECUTED
   43ed8:	4eb9 0004 46bc 	jsr 446bc <__assert_func>                   <== NOT EXECUTED
                                                                      
000496e2 <IMFS_eval_path>:                                            
  const char                        *pathname,     /* IN     */       
  int                                pathnamelen,  /* IN     */       
  int                                flags,        /* IN     */       
  rtems_filesystem_location_info_t  *pathloc       /* IN/OUT */       
)                                                                     
{                                                                     
   496e2:	4e56 ffb0      	linkw %fp,#-80                              
   496e6:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 
   496ea:	286e 0014      	moveal %fp@(20),%a4                         
   496ee:	2c0e           	movel %fp,%d6                               
   496f0:	280e           	movel %fp,%d4                               
  /*                                                                  
   *  This was filled in by the caller and is valid in the            
   *  mount table.                                                    
   */                                                                 
                                                                      
  node = pathloc->node_access;                                        
   496f2:	4282           	clrl %d2                                    
   496f4:	5986           	subql #4,%d6                                
   496f6:	0684 ffff ffdb 	addil #-37,%d4                              
   496fc:	2a3c 0004 9fd4 	movel #303060,%d5                           
                                                                      
	/*                                                                   
	 *  Otherwise find the token name in the present location.           
	 */                                                                  
                                                                      
        node = IMFS_find_match_in_dir( node, token );                 
   49702:	2e3c 0004 9f2c 	movel #302892,%d7                           
  const char                        *pathname,     /* IN     */       
  int                                pathnamelen,  /* IN     */       
  int                                flags,        /* IN     */       
  rtems_filesystem_location_info_t  *pathloc       /* IN/OUT */       
)                                                                     
{                                                                     
   49708:	2a6e 0008      	moveal %fp@(8),%a5                          
   4970c:	246e 000c      	moveal %fp@(12),%a2                         
  /*                                                                  
   *  This was filled in by the caller and is valid in the            
   *  mount table.                                                    
   */                                                                 
                                                                      
  node = pathloc->node_access;                                        
   49710:	2654           	moveal %a4@,%a3                             
   *  Evaluate all tokens until we are done or an error occurs.       
   */                                                                 
                                                                      
  while( (type != IMFS_NO_MORE_PATH) && (type != IMFS_INVALID_TOKEN) ) {
                                                                      
    type = IMFS_get_token( &pathname[i], pathnamelen, token, &len );  
   49712:	2f06           	movel %d6,%sp@-                             
   49714:	2045           	moveal %d5,%a0                              
   49716:	2f04           	movel %d4,%sp@-                             
   49718:	2f0a           	movel %a2,%sp@-                             
   4971a:	4875 2800      	pea %a5@(00000000,%d2:l)                    
   4971e:	4e90           	jsr %a0@                                    
    pathnamelen -= len;                                               
    i += len;                                                         
                                                                      
    if ( !pathloc->node_access )                                      
   49720:	2054           	moveal %a4@,%a0                             
   *  Evaluate all tokens until we are done or an error occurs.       
   */                                                                 
                                                                      
  while( (type != IMFS_NO_MORE_PATH) && (type != IMFS_INVALID_TOKEN) ) {
                                                                      
    type = IMFS_get_token( &pathname[i], pathnamelen, token, &len );  
   49722:	2600           	movel %d0,%d3                               
    pathnamelen -= len;                                               
    i += len;                                                         
                                                                      
    if ( !pathloc->node_access )                                      
   49724:	4fef 0010      	lea %sp@(16),%sp                            
   */                                                                 
                                                                      
  while( (type != IMFS_NO_MORE_PATH) && (type != IMFS_INVALID_TOKEN) ) {
                                                                      
    type = IMFS_get_token( &pathname[i], pathnamelen, token, &len );  
    pathnamelen -= len;                                               
   49728:	202e fffc      	movel %fp@(-4),%d0                          
    i += len;                                                         
                                                                      
    if ( !pathloc->node_access )                                      
   4972c:	4a88           	tstl %a0                                    
   4972e:	6700 00f8      	beqw 49828 <IMFS_eval_path+0x146>           
                                                                      
  while( (type != IMFS_NO_MORE_PATH) && (type != IMFS_INVALID_TOKEN) ) {
                                                                      
    type = IMFS_get_token( &pathname[i], pathnamelen, token, &len );  
    pathnamelen -= len;                                               
    i += len;                                                         
   49732:	d480           	addl %d0,%d2                                
   */                                                                 
                                                                      
  while( (type != IMFS_NO_MORE_PATH) && (type != IMFS_INVALID_TOKEN) ) {
                                                                      
    type = IMFS_get_token( &pathname[i], pathnamelen, token, &len );  
    pathnamelen -= len;                                               
   49734:	95c0           	subal %d0,%a2                               
      rtems_set_errno_and_return_minus_one( ENOENT );                 
                                                                      
    /*                                                                
     * I cannot move out of this directory without execute permission.
     */                                                               
    if ( type != IMFS_NO_MORE_PATH )                                  
   49736:	4a83           	tstl %d3                                    
   49738:	6662           	bnes 4979c <IMFS_eval_path+0xba>            
   *  new fs root node and let let the mounted filesystem set the handlers.
   *                                                                  
   *  NOTE: The behavior of stat() on a mount point appears to be questionable.
   */                                                                 
                                                                      
  if ( node->type == IMFS_DIRECTORY ) {                               
   4973a:	7201           	moveq #1,%d1                                
   4973c:	b2a8 0048      	cmpl %a0@(72),%d1                           
   49740:	6600 0132      	bnew 49874 <IMFS_eval_path+0x192>           
    if ( node->info.directory.mt_fs != NULL ) {                       
   49744:	2068 0058      	moveal %a0@(88),%a0                         
   49748:	4a88           	tstl %a0                                    
   4974a:	6700 0128      	beqw 49874 <IMFS_eval_path+0x192>           
      newloc   = node->info.directory.mt_fs->mt_fs_root;              
   4974e:	2268 0028      	moveal %a0@(40),%a1                         
      *pathloc = newloc;                                              
   49752:	2968 002c 0010 	movel %a0@(44),%a4@(16)                     
   *  NOTE: The behavior of stat() on a mount point appears to be questionable.
   */                                                                 
                                                                      
  if ( node->type == IMFS_DIRECTORY ) {                               
    if ( node->info.directory.mt_fs != NULL ) {                       
      newloc   = node->info.directory.mt_fs->mt_fs_root;              
   49758:	2628 0024      	movel %a0@(36),%d3                          
   4975c:	2228 0020      	movel %a0@(32),%d1                          
   49760:	2028 001c      	movel %a0@(28),%d0                          
      *pathloc = newloc;                                              
      return (*pathloc->ops->evalpath_h)( &pathname[i-len],           
   49764:	2f0c           	movel %a4,%sp@-                             
   49766:	206e fffc      	moveal %fp@(-4),%a0                         
   4976a:	9488           	subl %a0,%d2                                
   4976c:	2f2e 0010      	movel %fp@(16),%sp@-                        
   49770:	4872 8800      	pea %a2@(00000000,%a0:l)                    
   49774:	4875 2800      	pea %a5@(00000000,%d2:l)                    
   49778:	2051           	moveal %a1@,%a0                             
   */                                                                 
                                                                      
  if ( node->type == IMFS_DIRECTORY ) {                               
    if ( node->info.directory.mt_fs != NULL ) {                       
      newloc   = node->info.directory.mt_fs->mt_fs_root;              
      *pathloc = newloc;                                              
   4977a:	2943 0008      	movel %d3,%a4@(8)                           
   4977e:	2941 0004      	movel %d1,%a4@(4)                           
   49782:	2880           	movel %d0,%a4@                              
   49784:	2949 000c      	movel %a1,%a4@(12)                          
      return (*pathloc->ops->evalpath_h)( &pathname[i-len],           
   49788:	4e90           	jsr %a0@                                    
   4978a:	4fef 0010      	lea %sp@(16),%sp                            
   4978e:	2600           	movel %d0,%d3                               
                                                                      
  if ( !IMFS_evaluate_permission( pathloc, flags ) )                  
    rtems_set_errno_and_return_minus_one( EACCES );                   
                                                                      
  return result;                                                      
}                                                                     
   49790:	2003           	movel %d3,%d0                               
   49792:	4cee 3cfc ffb0 	moveml %fp@(-80),%d2-%d7/%a2-%a5            
   49798:	4e5e           	unlk %fp                                    
   4979a:	4e75           	rts                                         
                                                                      
    /*                                                                
     * I cannot move out of this directory without execute permission.
     */                                                               
    if ( type != IMFS_NO_MORE_PATH )                                  
      if ( node->type == IMFS_DIRECTORY )                             
   4979c:	7001           	moveq #1,%d0                                
   4979e:	b0ab 0048      	cmpl %a3@(72),%d0                           
   497a2:	6700 00b8      	beqw 4985c <IMFS_eval_path+0x17a>           
        if ( !IMFS_evaluate_permission( pathloc, RTEMS_LIBIO_PERMS_SEARCH ) )
           rtems_set_errno_and_return_minus_one( EACCES );            
                                                                      
    node = pathloc->node_access;                                      
   497a6:	2648           	moveal %a0,%a3                              
                                                                      
    switch( type ) {                                                  
   497a8:	7003           	moveq #3,%d0                                
   497aa:	b083           	cmpl %d3,%d0                                
   497ac:	671c           	beqs 497ca <IMFS_eval_path+0xe8>            
   497ae:	7204           	moveq #4,%d1                                
   497b0:	b283           	cmpl %d3,%d1                                
   497b2:	6700 008e      	beqw 49842 <IMFS_eval_path+0x160>           
   497b6:	103c 0002      	moveb #2,%d0                                
   497ba:	b083           	cmpl %d3,%d0                                
   497bc:	6748           	beqs 49806 <IMFS_eval_path+0x124>           
                                                                      
  /*                                                                  
   *  Evaluate all tokens until we are done or an error occurs.       
   */                                                                 
                                                                      
  while( (type != IMFS_NO_MORE_PATH) && (type != IMFS_INVALID_TOKEN) ) {
   497be:	7004           	moveq #4,%d0                                
   497c0:	b083           	cmpl %d3,%d0                                
   497c2:	6600 ff4e      	bnew 49712 <IMFS_eval_path+0x30>            
   497c6:	6000 ff72      	braw 4973a <IMFS_eval_path+0x58>            <== NOT EXECUTED
      case IMFS_NAME:                                                 
	/*                                                                   
	 *  If we are at a link follow it.                                   
	 */                                                                  
                                                                      
	if ( node->type == IMFS_HARD_LINK ) {                                
   497ca:	2028 0048      	movel %a0@(72),%d0                          
   497ce:	7203           	moveq #3,%d1                                
   497d0:	b280           	cmpl %d0,%d1                                
   497d2:	6700 00d8      	beqw 498ac <IMFS_eval_path+0x1ca>           
                                                                      
          node = pathloc->node_access;                                
          if ( !node )                                                
            rtems_set_errno_and_return_minus_one( ENOTDIR );          
                                                                      
	} else if ( node->type == IMFS_SYM_LINK ) {                          
   497d6:	7204           	moveq #4,%d1                                
   497d8:	b280           	cmpl %d0,%d1                                
   497da:	6700 00ea      	beqw 498c6 <IMFS_eval_path+0x1e4>           
                                                                      
       /*                                                             
        *  Only a directory can be decended into.                     
        */                                                            
                                                                      
       if ( node->type != IMFS_DIRECTORY )                            
   497de:	7201           	moveq #1,%d1                                
   497e0:	b280           	cmpl %d0,%d1                                
   497e2:	6600 0104      	bnew 498e8 <IMFS_eval_path+0x206>           
	/*                                                                   
	 *  If we are at a node that is a mount point. Set loc to the        
	 *  new fs root node and let them finish evaluating the path.        
	 */                                                                  
                                                                      
        if ( node->info.directory.mt_fs != NULL ) {                   
   497e6:	206b 0058      	moveal %a3@(88),%a0                         
   497ea:	4a88           	tstl %a0                                    
   497ec:	6600 ff60      	bnew 4974e <IMFS_eval_path+0x6c>            
                                                                      
	/*                                                                   
	 *  Otherwise find the token name in the present location.           
	 */                                                                  
                                                                      
        node = IMFS_find_match_in_dir( node, token );                 
   497f0:	2f04           	movel %d4,%sp@-                             
   497f2:	2047           	moveal %d7,%a0                              
   497f4:	2f0b           	movel %a3,%sp@-                             
   497f6:	4e90           	jsr %a0@                                    
        if ( !node )                                                  
   497f8:	508f           	addql #8,%sp                                
                                                                      
	/*                                                                   
	 *  Otherwise find the token name in the present location.           
	 */                                                                  
                                                                      
        node = IMFS_find_match_in_dir( node, token );                 
   497fa:	2640           	moveal %d0,%a3                              
        if ( !node )                                                  
   497fc:	4a80           	tstl %d0                                    
   497fe:	6728           	beqs 49828 <IMFS_eval_path+0x146>           
                                                                      
	/*                                                                   
	 *  Set the node access to the point we have found.                  
	 */                                                                  
                                                                      
        pathloc->node_access = node;                                  
   49800:	288b           	movel %a3,%a4@                              
        break;                                                        
   49802:	6000 ff0e      	braw 49712 <IMFS_eval_path+0x30>            
      case IMFS_UP_DIR:                                               
       /*                                                             
        *  Am I at the root of all filesystems? (chroot'ed?)          
	*/                                                                   
                                                                      
       if ( pathloc->node_access == rtems_filesystem_root.node_access )
   49806:	2279 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a1   
   4980c:	b1e9 0018      	cmpal %a1@(24),%a0                          
   49810:	6700 ff00      	beqw 49712 <IMFS_eval_path+0x30>            
	/*                                                                   
	 *  Am I at the root of this mounted filesystem?                     
	 */                                                                  
                                                                      
        if (pathloc->node_access ==                                   
            pathloc->mt_entry->mt_fs_root.node_access) {              
   49814:	226c 0010      	moveal %a4@(16),%a1                         
                                                                      
	/*                                                                   
	 *  Am I at the root of this mounted filesystem?                     
	 */                                                                  
                                                                      
        if (pathloc->node_access ==                                   
   49818:	b1e9 001c      	cmpal %a1@(28),%a0                          
   4981c:	6700 00e4      	beqw 49902 <IMFS_eval_path+0x220>           
                                               pathnamelen+len,       
                                               flags,pathloc);        
	  }                                                                  
	} else {                                                             
                                                                      
          if ( !node->Parent )                                        
   49820:	2668 0008      	moveal %a0@(8),%a3                          
   49824:	4a8b           	tstl %a3                                    
   49826:	66d8           	bnes 49800 <IMFS_eval_path+0x11e>           
	 *  Otherwise find the token name in the present location.           
	 */                                                                  
                                                                      
        node = IMFS_find_match_in_dir( node, token );                 
        if ( !node )                                                  
          rtems_set_errno_and_return_minus_one( ENOENT );             
   49828:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   4982e:	76ff           	moveq #-1,%d3                               
   49830:	7c02           	moveq #2,%d6                                
   49832:	2040           	moveal %d0,%a0                              
                                                                      
  if ( !IMFS_evaluate_permission( pathloc, flags ) )                  
    rtems_set_errno_and_return_minus_one( EACCES );                   
                                                                      
  return result;                                                      
}                                                                     
   49834:	2003           	movel %d3,%d0                               
	 *  Otherwise find the token name in the present location.           
	 */                                                                  
                                                                      
        node = IMFS_find_match_in_dir( node, token );                 
        if ( !node )                                                  
          rtems_set_errno_and_return_minus_one( ENOENT );             
   49836:	2086           	movel %d6,%a0@                              
                                                                      
  if ( !IMFS_evaluate_permission( pathloc, flags ) )                  
    rtems_set_errno_and_return_minus_one( EACCES );                   
                                                                      
  return result;                                                      
}                                                                     
   49838:	4cee 3cfc ffb0 	moveml %fp@(-80),%d2-%d7/%a2-%a5            
   4983e:	4e5e           	unlk %fp                                    
   49840:	4e75           	rts                                         
      case IMFS_NO_MORE_PATH:                                         
      case IMFS_CURRENT_DIR:                                          
        break;                                                        
                                                                      
      case IMFS_INVALID_TOKEN:                                        
        rtems_set_errno_and_return_minus_one( ENAMETOOLONG );         
   49842:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   49848:	76ff           	moveq #-1,%d3                               
   4984a:	7a5b           	moveq #91,%d5                               
   4984c:	2040           	moveal %d0,%a0                              
                                                                      
  if ( !IMFS_evaluate_permission( pathloc, flags ) )                  
    rtems_set_errno_and_return_minus_one( EACCES );                   
                                                                      
  return result;                                                      
}                                                                     
   4984e:	2003           	movel %d3,%d0                               
      case IMFS_NO_MORE_PATH:                                         
      case IMFS_CURRENT_DIR:                                          
        break;                                                        
                                                                      
      case IMFS_INVALID_TOKEN:                                        
        rtems_set_errno_and_return_minus_one( ENAMETOOLONG );         
   49850:	2085           	movel %d5,%a0@                              
                                                                      
  if ( !IMFS_evaluate_permission( pathloc, flags ) )                  
    rtems_set_errno_and_return_minus_one( EACCES );                   
                                                                      
  return result;                                                      
}                                                                     
   49852:	4cee 3cfc ffb0 	moveml %fp@(-80),%d2-%d7/%a2-%a5            
   49858:	4e5e           	unlk %fp                                    
   4985a:	4e75           	rts                                         
    /*                                                                
     * I cannot move out of this directory without execute permission.
     */                                                               
    if ( type != IMFS_NO_MORE_PATH )                                  
      if ( node->type == IMFS_DIRECTORY )                             
        if ( !IMFS_evaluate_permission( pathloc, RTEMS_LIBIO_PERMS_SEARCH ) )
   4985c:	4878 0001      	pea 1 <ADD>                                 
   49860:	2f0c           	movel %a4,%sp@-                             
   49862:	4eb9 0004 94ea 	jsr 494ea <IMFS_evaluate_permission>        
   49868:	508f           	addql #8,%sp                                
   4986a:	4a80           	tstl %d0                                    
   4986c:	6724           	beqs 49892 <IMFS_eval_path+0x1b0>           
   4986e:	2054           	moveal %a4@,%a0                             
   49870:	6000 ff34      	braw 497a6 <IMFS_eval_path+0xc4>            
                                          flags, pathloc );           
    } else {                                                          
      result = IMFS_Set_handlers( pathloc );                          
    }                                                                 
  } else {                                                            
    result = IMFS_Set_handlers( pathloc );                            
   49874:	2f0c           	movel %a4,%sp@-                             
   49876:	4eb9 0004 945c 	jsr 4945c <IMFS_Set_handlers>               
                                                                      
  /*                                                                  
   * Verify we have the correct permissions for this node.            
   */                                                                 
                                                                      
  if ( !IMFS_evaluate_permission( pathloc, flags ) )                  
   4987c:	2eae 0010      	movel %fp@(16),%sp@                         
                                          flags, pathloc );           
    } else {                                                          
      result = IMFS_Set_handlers( pathloc );                          
    }                                                                 
  } else {                                                            
    result = IMFS_Set_handlers( pathloc );                            
   49880:	2600           	movel %d0,%d3                               
                                                                      
  /*                                                                  
   * Verify we have the correct permissions for this node.            
   */                                                                 
                                                                      
  if ( !IMFS_evaluate_permission( pathloc, flags ) )                  
   49882:	2f0c           	movel %a4,%sp@-                             
   49884:	4eb9 0004 94ea 	jsr 494ea <IMFS_evaluate_permission>        
   4988a:	508f           	addql #8,%sp                                
   4988c:	4a80           	tstl %d0                                    
   4988e:	6600 ff00      	bnew 49790 <IMFS_eval_path+0xae>            
    rtems_set_errno_and_return_minus_one( EACCES );                   
   49892:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   49898:	76ff           	moveq #-1,%d3                               
   4989a:	780d           	moveq #13,%d4                               
   4989c:	2040           	moveal %d0,%a0                              
                                                                      
  return result;                                                      
}                                                                     
   4989e:	2003           	movel %d3,%d0                               
  /*                                                                  
   * Verify we have the correct permissions for this node.            
   */                                                                 
                                                                      
  if ( !IMFS_evaluate_permission( pathloc, flags ) )                  
    rtems_set_errno_and_return_minus_one( EACCES );                   
   498a0:	2084           	movel %d4,%a0@                              
                                                                      
  return result;                                                      
}                                                                     
   498a2:	4cee 3cfc ffb0 	moveml %fp@(-80),%d2-%d7/%a2-%a5            
   498a8:	4e5e           	unlk %fp                                    
   498aa:	4e75           	rts                                         
	 *  If we are at a link follow it.                                   
	 */                                                                  
                                                                      
	if ( node->type == IMFS_HARD_LINK ) {                                
                                                                      
          IMFS_evaluate_hard_link( pathloc, 0 );                      
   498ac:	42a7           	clrl %sp@-                                  
   498ae:	2f0c           	movel %a4,%sp@-                             
   498b0:	4eb9 0004 9576 	jsr 49576 <IMFS_evaluate_hard_link>         
                                                                      
          node = pathloc->node_access;                                
   498b6:	2654           	moveal %a4@,%a3                             
          if ( !node )                                                
   498b8:	508f           	addql #8,%sp                                
   498ba:	4a8b           	tstl %a3                                    
   498bc:	672a           	beqs 498e8 <IMFS_eval_path+0x206>           
                                                                      
	} else if ( node->type == IMFS_SYM_LINK ) {                          
                                                                      
          result = IMFS_evaluate_sym_link( pathloc, 0 );              
                                                                      
          node = pathloc->node_access;                                
   498be:	202b 0048      	movel %a3@(72),%d0                          
   498c2:	6000 ff1a      	braw 497de <IMFS_eval_path+0xfc>            
          if ( !node )                                                
            rtems_set_errno_and_return_minus_one( ENOTDIR );          
                                                                      
	} else if ( node->type == IMFS_SYM_LINK ) {                          
                                                                      
          result = IMFS_evaluate_sym_link( pathloc, 0 );              
   498c6:	42a7           	clrl %sp@-                                  
   498c8:	2f0c           	movel %a4,%sp@-                             
   498ca:	4eb9 0004 95d6 	jsr 495d6 <IMFS_evaluate_sym_link>          
                                                                      
          node = pathloc->node_access;                                
   498d0:	2654           	moveal %a4@,%a3                             
          if ( result == -1 )                                         
   498d2:	508f           	addql #8,%sp                                
   498d4:	72ff           	moveq #-1,%d1                               
   498d6:	b280           	cmpl %d0,%d1                                
   498d8:	66e4           	bnes 498be <IMFS_eval_path+0x1dc>           
   498da:	2600           	movel %d0,%d3                               <== NOT EXECUTED
                                                                      
  if ( !IMFS_evaluate_permission( pathloc, flags ) )                  
    rtems_set_errno_and_return_minus_one( EACCES );                   
                                                                      
  return result;                                                      
}                                                                     
   498dc:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   498de:	4cee 3cfc ffb0 	moveml %fp@(-80),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   498e4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   498e6:	4e75           	rts                                         <== NOT EXECUTED
       /*                                                             
        *  Only a directory can be decended into.                     
        */                                                            
                                                                      
       if ( node->type != IMFS_DIRECTORY )                            
          rtems_set_errno_and_return_minus_one( ENOTDIR );            
   498e8:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   498ee:	76ff           	moveq #-1,%d3                               
   498f0:	7e14           	moveq #20,%d7                               
   498f2:	2040           	moveal %d0,%a0                              
                                                                      
  if ( !IMFS_evaluate_permission( pathloc, flags ) )                  
    rtems_set_errno_and_return_minus_one( EACCES );                   
                                                                      
  return result;                                                      
}                                                                     
   498f4:	2003           	movel %d3,%d0                               
       /*                                                             
        *  Only a directory can be decended into.                     
        */                                                            
                                                                      
       if ( node->type != IMFS_DIRECTORY )                            
          rtems_set_errno_and_return_minus_one( ENOTDIR );            
   498f6:	2087           	movel %d7,%a0@                              
                                                                      
  if ( !IMFS_evaluate_permission( pathloc, flags ) )                  
    rtems_set_errno_and_return_minus_one( EACCES );                   
                                                                      
  return result;                                                      
}                                                                     
   498f8:	4cee 3cfc ffb0 	moveml %fp@(-80),%d2-%d7/%a2-%a5            
   498fe:	4e5e           	unlk %fp                                    
   49900:	4e75           	rts                                         
	   */                                                                
                                                                      
          if ( pathloc->node_access == rtems_filesystem_root.node_access ) {
            break;       /* Throw out the .. in this case */          
	  } else {                                                           
            newloc = pathloc->mt_entry->mt_point_node;                
   49902:	2069 0014      	moveal %a1@(20),%a0                         
            *pathloc = newloc;                                        
   49906:	2969 0018 0010 	movel %a1@(24),%a4@(16)                     
	   */                                                                
                                                                      
          if ( pathloc->node_access == rtems_filesystem_root.node_access ) {
            break;       /* Throw out the .. in this case */          
	  } else {                                                           
            newloc = pathloc->mt_entry->mt_point_node;                
   4990c:	2829 0010      	movel %a1@(16),%d4                          
   49910:	2629 000c      	movel %a1@(12),%d3                          
   49914:	2229 0008      	movel %a1@(8),%d1                           
            *pathloc = newloc;                                        
            return (*pathloc->ops->evalpath_h)(&(pathname[i-len]),    
   49918:	2f0c           	movel %a4,%sp@-                             
   4991a:	226e fffc      	moveal %fp@(-4),%a1                         
   4991e:	9489           	subl %a1,%d2                                
   49920:	2f2e 0010      	movel %fp@(16),%sp@-                        
   49924:	4872 9800      	pea %a2@(00000000,%a1:l)                    
   49928:	4875 2800      	pea %a5@(00000000,%d2:l)                    
   4992c:	2010           	movel %a0@,%d0                              
                                                                      
          if ( pathloc->node_access == rtems_filesystem_root.node_access ) {
            break;       /* Throw out the .. in this case */          
	  } else {                                                           
            newloc = pathloc->mt_entry->mt_point_node;                
            *pathloc = newloc;                                        
   4992e:	2943 0004      	movel %d3,%a4@(4)                           
   49932:	2948 000c      	movel %a0,%a4@(12)                          
            return (*pathloc->ops->evalpath_h)(&(pathname[i-len]),    
   49936:	2040           	moveal %d0,%a0                              
                                                                      
          if ( pathloc->node_access == rtems_filesystem_root.node_access ) {
            break;       /* Throw out the .. in this case */          
	  } else {                                                           
            newloc = pathloc->mt_entry->mt_point_node;                
            *pathloc = newloc;                                        
   49938:	2944 0008      	movel %d4,%a4@(8)                           
   4993c:	2881           	movel %d1,%a4@                              
            return (*pathloc->ops->evalpath_h)(&(pathname[i-len]),    
   4993e:	4e90           	jsr %a0@                                    
   49940:	4fef 0010      	lea %sp@(16),%sp                            
   49944:	2600           	movel %d0,%d3                               
                                                                      
  if ( !IMFS_evaluate_permission( pathloc, flags ) )                  
    rtems_set_errno_and_return_minus_one( EACCES );                   
                                                                      
  return result;                                                      
}                                                                     
   49946:	2003           	movel %d3,%d0                               
   49948:	4cee 3cfc ffb0 	moveml %fp@(-80),%d2-%d7/%a2-%a5            
   4994e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00049576 <IMFS_evaluate_hard_link>:                                   
                                                                      
  /*                                                                  
   * Check for things that should never happen.                       
   */                                                                 
                                                                      
  if ( jnode->type != IMFS_HARD_LINK )                                
   49576:	7003           	moveq #3,%d0                                
                                                                      
int IMFS_evaluate_hard_link(                                          
  rtems_filesystem_location_info_t  *node,   /* IN/OUT */             
  int                                flags   /* IN     */             
)                                                                     
{                                                                     
   49578:	4e56 0000      	linkw %fp,#0                                
   4957c:	2f0a           	movel %a2,%sp@-                             
   4957e:	246e 0008      	moveal %fp@(8),%a2                          
  IMFS_jnode_t                     *jnode  = node->node_access;       
   49582:	2052           	moveal %a2@,%a0                             
                                                                      
  /*                                                                  
   * Check for things that should never happen.                       
   */                                                                 
                                                                      
  if ( jnode->type != IMFS_HARD_LINK )                                
   49584:	b0a8 0048      	cmpl %a0@(72),%d0                           
   49588:	6640           	bnes 495ca <IMFS_evaluate_hard_link+0x54>   
                                                                      
  /*                                                                  
   * Set the hard link value and the handlers.                        
   */                                                                 
                                                                      
  node->node_access = jnode->info.hard_link.link_node;                
   4958a:	24a8 004c      	movel %a0@(76),%a2@                         
                                                                      
  IMFS_Set_handlers( node );                                          
   4958e:	2f0a           	movel %a2,%sp@-                             
   49590:	4eb9 0004 945c 	jsr 4945c <IMFS_Set_handlers>               
                                                                      
  /*                                                                  
   * Verify we have the correct permissions for this node.            
   */                                                                 
                                                                      
  if ( !IMFS_evaluate_permission( node, flags ) )                     
   49596:	2f2e 000c      	movel %fp@(12),%sp@-                        
   4959a:	2f0a           	movel %a2,%sp@-                             
   4959c:	4eb9 0004 94ea 	jsr 494ea <IMFS_evaluate_permission>        
   495a2:	4fef 000c      	lea %sp@(12),%sp                            
   495a6:	4a80           	tstl %d0                                    
   495a8:	670a           	beqs 495b4 <IMFS_evaluate_hard_link+0x3e>   
    rtems_set_errno_and_return_minus_one( EACCES );                   
                                                                      
  return result;                                                      
}                                                                     
   495aa:	246e fffc      	moveal %fp@(-4),%a2                         
                                                                      
  /*                                                                  
   * Verify we have the correct permissions for this node.            
   */                                                                 
                                                                      
  if ( !IMFS_evaluate_permission( node, flags ) )                     
   495ae:	4280           	clrl %d0                                    
    rtems_set_errno_and_return_minus_one( EACCES );                   
                                                                      
  return result;                                                      
}                                                                     
   495b0:	4e5e           	unlk %fp                                    
   495b2:	4e75           	rts                                         
  /*                                                                  
   * Verify we have the correct permissions for this node.            
   */                                                                 
                                                                      
  if ( !IMFS_evaluate_permission( node, flags ) )                     
    rtems_set_errno_and_return_minus_one( EACCES );                   
   495b4:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
                                                                      
  return result;                                                      
}                                                                     
   495ba:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
  /*                                                                  
   * Verify we have the correct permissions for this node.            
   */                                                                 
                                                                      
  if ( !IMFS_evaluate_permission( node, flags ) )                     
    rtems_set_errno_and_return_minus_one( EACCES );                   
   495be:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   495c0:	720d           	moveq #13,%d1                               <== NOT EXECUTED
   495c2:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  return result;                                                      
}                                                                     
   495c4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  /*                                                                  
   * Verify we have the correct permissions for this node.            
   */                                                                 
                                                                      
  if ( !IMFS_evaluate_permission( node, flags ) )                     
    rtems_set_errno_and_return_minus_one( EACCES );                   
   495c6:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
                                                                      
  return result;                                                      
}                                                                     
   495c8:	4e75           	rts                                         <== NOT EXECUTED
  /*                                                                  
   * Check for things that should never happen.                       
   */                                                                 
                                                                      
  if ( jnode->type != IMFS_HARD_LINK )                                
    rtems_fatal_error_occurred (0xABCD0000);                          
   495ca:	2f3c abcd 0000 	movel #-1412628480,%sp@-                    <== NOT EXECUTED
   495d0:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
                                                                      
00049952 <IMFS_evaluate_link>:                                        
                                                                      
int IMFS_evaluate_link(                                               
  rtems_filesystem_location_info_t  *node,   /* IN/OUT */             
  int                                flags   /* IN     */             
)                                                                     
{                                                                     
   49952:	4e56 ffec      	linkw %fp,#-20                              
   49956:	2079 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a0   
   4995c:	48d7 3c04      	moveml %d2/%a2-%a5,%sp@                     
   49960:	266e 0008      	moveal %fp@(8),%a3                          
                                                                      
    if ( jnode->type == IMFS_HARD_LINK )                              
      result = IMFS_evaluate_hard_link( node, flags );                
                                                                      
    else if (jnode->type == IMFS_SYM_LINK )                           
      result = IMFS_evaluate_sym_link( node, flags );                 
   49964:	4bf9 0004 95d6 	lea 495d6 <IMFS_evaluate_sym_link>,%a5      
    /*                                                                
     *  Follow the Link node.                                         
     */                                                               
                                                                      
    if ( jnode->type == IMFS_HARD_LINK )                              
      result = IMFS_evaluate_hard_link( node, flags );                
   4996a:	49f9 0004 9576 	lea 49576 <IMFS_evaluate_hard_link>,%a4     
                                                                      
int IMFS_evaluate_link(                                               
  rtems_filesystem_location_info_t  *node,   /* IN/OUT */             
  int                                flags   /* IN     */             
)                                                                     
{                                                                     
   49970:	242e 000c      	movel %fp@(12),%d2                          
    /*                                                                
     * Increment and check the link counter.                          
     */                                                               
                                                                      
    rtems_filesystem_link_counts ++;                                  
    if ( rtems_filesystem_link_counts > MAXSYMLINK ) {                
   49974:	4281           	clrl %d1                                    
                                                                      
    /*                                                                
     * Increment and check the link counter.                          
     */                                                               
                                                                      
    rtems_filesystem_link_counts ++;                                  
   49976:	3028 0030      	movew %a0@(48),%d0                          
{                                                                     
  IMFS_jnode_t                     *jnode;                            
  int                               result = 0;                       
                                                                      
  do {                                                                
    jnode  = node->node_access;                                       
   4997a:	2453           	moveal %a3@,%a2                             
                                                                      
    /*                                                                
     * Increment and check the link counter.                          
     */                                                               
                                                                      
    rtems_filesystem_link_counts ++;                                  
   4997c:	5280           	addql #1,%d0                                
    if ( rtems_filesystem_link_counts > MAXSYMLINK ) {                
   4997e:	3200           	movew %d0,%d1                               
                                                                      
    /*                                                                
     * Increment and check the link counter.                          
     */                                                               
                                                                      
    rtems_filesystem_link_counts ++;                                  
   49980:	3140 0030      	movew %d0,%a0@(48)                          
    if ( rtems_filesystem_link_counts > MAXSYMLINK ) {                
   49984:	7005           	moveq #5,%d0                                
   49986:	b081           	cmpl %d1,%d0                                
   49988:	6564           	bcss 499ee <IMFS_evaluate_link+0x9c>        
                                                                      
    /*                                                                
     *  Follow the Link node.                                         
     */                                                               
                                                                      
    if ( jnode->type == IMFS_HARD_LINK )                              
   4998a:	202a 0048      	movel %a2@(72),%d0                          
   4998e:	7203           	moveq #3,%d1                                
   49990:	b280           	cmpl %d0,%d1                                
   49992:	6740           	beqs 499d4 <IMFS_evaluate_link+0x82>        
      result = IMFS_evaluate_hard_link( node, flags );                
                                                                      
    else if (jnode->type == IMFS_SYM_LINK )                           
   49994:	7204           	moveq #4,%d1                                
   49996:	b280           	cmpl %d0,%d1                                
   49998:	671a           	beqs 499b4 <IMFS_evaluate_link+0x62>        
      result = IMFS_evaluate_sym_link( node, flags );                 
                                                                      
  } while ( ( result == 0 ) && ( ( jnode->type == IMFS_SYM_LINK  ) || 
                                 ( jnode->type == IMFS_HARD_LINK ) ) );
   4999a:	5780           	subql #3,%d0                                
   4999c:	7201           	moveq #1,%d1                                
   4999e:	b280           	cmpl %d0,%d1                                
   499a0:	64d2           	bccs 49974 <IMFS_evaluate_link+0x22>        
   499a2:	4280           	clrl %d0                                    
                                                                      
  /*                                                                  
   * Clear link counter.                                              
   */                                                                 
                                                                      
  rtems_filesystem_link_counts = 0;                                   
   499a4:	4241           	clrw %d1                                    
   499a6:	3141 0030      	movew %d1,%a0@(48)                          
                                                                      
  return result;                                                      
}                                                                     
   499aa:	4cee 3c04 ffec 	moveml %fp@(-20),%d2/%a2-%a5                
   499b0:	4e5e           	unlk %fp                                    
   499b2:	4e75           	rts                                         
                                                                      
    if ( jnode->type == IMFS_HARD_LINK )                              
      result = IMFS_evaluate_hard_link( node, flags );                
                                                                      
    else if (jnode->type == IMFS_SYM_LINK )                           
      result = IMFS_evaluate_sym_link( node, flags );                 
   499b4:	2f02           	movel %d2,%sp@-                             
   499b6:	2f0b           	movel %a3,%sp@-                             
   499b8:	4e95           	jsr %a5@                                    
   499ba:	508f           	addql #8,%sp                                
                                                                      
  } while ( ( result == 0 ) && ( ( jnode->type == IMFS_SYM_LINK  ) || 
                                 ( jnode->type == IMFS_HARD_LINK ) ) );
   499bc:	4a80           	tstl %d0                                    
   499be:	6620           	bnes 499e0 <IMFS_evaluate_link+0x8e>        
   499c0:	202a 0048      	movel %a2@(72),%d0                          
   499c4:	7201           	moveq #1,%d1                                
   499c6:	5780           	subql #3,%d0                                
   499c8:	2079 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a0   
   499ce:	b280           	cmpl %d0,%d1                                
   499d0:	64a2           	bccs 49974 <IMFS_evaluate_link+0x22>        
   499d2:	60ce           	bras 499a2 <IMFS_evaluate_link+0x50>        <== NOT EXECUTED
    /*                                                                
     *  Follow the Link node.                                         
     */                                                               
                                                                      
    if ( jnode->type == IMFS_HARD_LINK )                              
      result = IMFS_evaluate_hard_link( node, flags );                
   499d4:	2f02           	movel %d2,%sp@-                             
   499d6:	2f0b           	movel %a3,%sp@-                             
   499d8:	4e94           	jsr %a4@                                    
   499da:	508f           	addql #8,%sp                                
                                                                      
    else if (jnode->type == IMFS_SYM_LINK )                           
      result = IMFS_evaluate_sym_link( node, flags );                 
                                                                      
  } while ( ( result == 0 ) && ( ( jnode->type == IMFS_SYM_LINK  ) || 
                                 ( jnode->type == IMFS_HARD_LINK ) ) );
   499dc:	4a80           	tstl %d0                                    
   499de:	67e0           	beqs 499c0 <IMFS_evaluate_link+0x6e>        
   499e0:	2079 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a0   
                                                                      
  /*                                                                  
   * Clear link counter.                                              
   */                                                                 
                                                                      
  rtems_filesystem_link_counts = 0;                                   
   499e6:	4241           	clrw %d1                                    
   499e8:	3141 0030      	movew %d1,%a0@(48)                          
   499ec:	60bc           	bras 499aa <IMFS_evaluate_link+0x58>        
     * Increment and check the link counter.                          
     */                                                               
                                                                      
    rtems_filesystem_link_counts ++;                                  
    if ( rtems_filesystem_link_counts > MAXSYMLINK ) {                
      rtems_filesystem_link_counts = 0;                               
   499ee:	4241           	clrw %d1                                    
   499f0:	3141 0030      	movew %d1,%a0@(48)                          
      rtems_set_errno_and_return_minus_one( ELOOP );                  
   499f4:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   499fa:	725c           	moveq #92,%d1                               
   499fc:	2040           	moveal %d0,%a0                              
   499fe:	70ff           	moveq #-1,%d0                               
   */                                                                 
                                                                      
  rtems_filesystem_link_counts = 0;                                   
                                                                      
  return result;                                                      
}                                                                     
   49a00:	4cee 3c04 ffec 	moveml %fp@(-20),%d2/%a2-%a5                
     */                                                               
                                                                      
    rtems_filesystem_link_counts ++;                                  
    if ( rtems_filesystem_link_counts > MAXSYMLINK ) {                
      rtems_filesystem_link_counts = 0;                               
      rtems_set_errno_and_return_minus_one( ELOOP );                  
   49a06:	2081           	movel %d1,%a0@                              
   */                                                                 
                                                                      
  rtems_filesystem_link_counts = 0;                                   
                                                                      
  return result;                                                      
}                                                                     
   49a08:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000494ea <IMFS_evaluate_permission>:                                  
                                                                      
int IMFS_evaluate_permission(                                         
  rtems_filesystem_location_info_t  *node,                            
  int                                flags                            
)                                                                     
{                                                                     
   494ea:	4e56 fff4      	linkw %fp,#-12                              
   494ee:	206e 0008      	moveal %fp@(8),%a0                          
   494f2:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
  if ( !rtems_libio_is_valid_perms( flags ) ) {                       
    assert( 0 );                                                      
    rtems_set_errno_and_return_minus_one( EIO );                      
  }                                                                   
                                                                      
  jnode = node->node_access;                                          
   494f6:	2450           	moveal %a0@,%a2                             
                                                                      
int IMFS_evaluate_permission(                                         
  rtems_filesystem_location_info_t  *node,                            
  int                                flags                            
)                                                                     
{                                                                     
   494f8:	262e 000c      	movel %fp@(12),%d3                          
  }                                                                   
                                                                      
  jnode = node->node_access;                                          
                                                                      
#if defined(RTEMS_POSIX_API)                                          
  st_uid = geteuid();                                                 
   494fc:	4eb9 0004 a880 	jsr 4a880 <geteuid>                         
   49502:	3400           	movew %d0,%d2                               
  st_gid = getegid();                                                 
   49504:	4eb9 0004 a86c 	jsr 4a86c <getegid>                         
   * Check if I am owner or a group member or someone else.           
   */                                                                 
                                                                      
  flags_to_test = flags;                                              
                                                                      
  if ( st_uid == jnode->st_uid )                                      
   4950a:	4281           	clrl %d1                                    
   4950c:	0282 0000 ffff 	andil #65535,%d2                            
   49512:	322a 0038      	movew %a2@(56),%d1                          
   49516:	b282           	cmpl %d2,%d1                                
   49518:	6742           	beqs 4955c <IMFS_evaluate_permission+0x72>  
    flags_to_test <<= 6;                                              
  else if ( st_gid == jnode->st_gid )                                 
   4951a:	4281           	clrl %d1                                    
   4951c:	0280 0000 ffff 	andil #65535,%d0                            
   49522:	322a 003a      	movew %a2@(58),%d1                          
   49526:	b280           	cmpl %d0,%d1                                
   49528:	6718           	beqs 49542 <IMFS_evaluate_permission+0x58>  
                                                                      
  /*                                                                  
   * If all of the flags are set we have permission                   
   * to do this.                                                      
   */                                                                 
  if ( ( flags_to_test & jnode->st_mode) == flags_to_test )           
   4952a:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   4952c:	c0aa 002e      	andl %a2@(46),%d0                           <== NOT EXECUTED
   49530:	b083           	cmpl %d3,%d0                                <== NOT EXECUTED
   49532:	57c0           	seq %d0                                     <== NOT EXECUTED
    return 1;                                                         
                                                                      
  return 0;                                                           
}                                                                     
   49534:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   4953a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
  /*                                                                  
   * If all of the flags are set we have permission                   
   * to do this.                                                      
   */                                                                 
  if ( ( flags_to_test & jnode->st_mode) == flags_to_test )           
   4953c:	49c0           	extbl %d0                                   <== NOT EXECUTED
    return 1;                                                         
                                                                      
  return 0;                                                           
}                                                                     
   4953e:	4480           	negl %d0                                    <== NOT EXECUTED
   49540:	4e75           	rts                                         <== NOT EXECUTED
  flags_to_test = flags;                                              
                                                                      
  if ( st_uid == jnode->st_uid )                                      
    flags_to_test <<= 6;                                              
  else if ( st_gid == jnode->st_gid )                                 
    flags_to_test <<= 3;                                              
   49542:	e78b           	lsll #3,%d3                                 
                                                                      
  /*                                                                  
   * If all of the flags are set we have permission                   
   * to do this.                                                      
   */                                                                 
  if ( ( flags_to_test & jnode->st_mode) == flags_to_test )           
   49544:	2003           	movel %d3,%d0                               
   49546:	c0aa 002e      	andl %a2@(46),%d0                           
   4954a:	b083           	cmpl %d3,%d0                                
   4954c:	57c0           	seq %d0                                     
    return 1;                                                         
                                                                      
  return 0;                                                           
}                                                                     
   4954e:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   49554:	4e5e           	unlk %fp                                    
                                                                      
  /*                                                                  
   * If all of the flags are set we have permission                   
   * to do this.                                                      
   */                                                                 
  if ( ( flags_to_test & jnode->st_mode) == flags_to_test )           
   49556:	49c0           	extbl %d0                                   
    return 1;                                                         
                                                                      
  return 0;                                                           
}                                                                     
   49558:	4480           	negl %d0                                    
   4955a:	4e75           	rts                                         
   */                                                                 
                                                                      
  flags_to_test = flags;                                              
                                                                      
  if ( st_uid == jnode->st_uid )                                      
    flags_to_test <<= 6;                                              
   4955c:	ed8b           	lsll #6,%d3                                 
                                                                      
  /*                                                                  
   * If all of the flags are set we have permission                   
   * to do this.                                                      
   */                                                                 
  if ( ( flags_to_test & jnode->st_mode) == flags_to_test )           
   4955e:	2003           	movel %d3,%d0                               
   49560:	c0aa 002e      	andl %a2@(46),%d0                           
   49564:	b083           	cmpl %d3,%d0                                
   49566:	57c0           	seq %d0                                     
    return 1;                                                         
                                                                      
  return 0;                                                           
}                                                                     
   49568:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   4956e:	4e5e           	unlk %fp                                    
                                                                      
  /*                                                                  
   * If all of the flags are set we have permission                   
   * to do this.                                                      
   */                                                                 
  if ( ( flags_to_test & jnode->st_mode) == flags_to_test )           
   49570:	49c0           	extbl %d0                                   
    return 1;                                                         
                                                                      
  return 0;                                                           
}                                                                     
   49572:	4480           	negl %d0                                    <== NOT EXECUTED
                                                                      
000495d6 <IMFS_evaluate_sym_link>:                                    
                                                                      
  /*                                                                  
   * Check for things that should never happen.                       
   */                                                                 
                                                                      
  if ( jnode->type != IMFS_SYM_LINK )                                 
   495d6:	7004           	moveq #4,%d0                                
                                                                      
int IMFS_evaluate_sym_link(                                           
  rtems_filesystem_location_info_t  *node,   /* IN/OUT */             
  int                                flags   /* IN     */             
)                                                                     
{                                                                     
   495d8:	4e56 fff0      	linkw %fp,#-16                              
   495dc:	48d7 0c0c      	moveml %d2-%d3/%a2-%a3,%sp@                 
   495e0:	246e 0008      	moveal %fp@(8),%a2                          
   495e4:	242e 000c      	movel %fp@(12),%d2                          
  IMFS_jnode_t                     *jnode  = node->node_access;       
   495e8:	2252           	moveal %a2@,%a1                             
                                                                      
  /*                                                                  
   * Check for things that should never happen.                       
   */                                                                 
                                                                      
  if ( jnode->type != IMFS_SYM_LINK )                                 
   495ea:	b0a9 0048      	cmpl %a1@(72),%d0                           
   495ee:	6600 00e6      	bnew 496d6 <IMFS_evaluate_sym_link+0x100>   
    rtems_fatal_error_occurred (0xABCD0000);                          
                                                                      
  if ( !jnode->Parent )                                               
   495f2:	2029 0008      	movel %a1@(8),%d0                           
   495f6:	6700 00d2      	beqw 496ca <IMFS_evaluate_sym_link+0xf4>    
  /*                                                                  
   * Move the node_access to either the symbolic links parent or      
   * root depending on the symbolic links path.                       
   */                                                                 
                                                                      
  node->node_access = jnode->Parent;                                  
   495fa:	2480           	movel %d0,%a2@                              
                                                                      
  rtems_filesystem_get_sym_start_loc(                                 
   495fc:	2069 004c      	moveal %a1@(76),%a0                         
   49600:	762f           	moveq #47,%d3                               
   49602:	1210           	moveb %a0@,%d1                              
   49604:	1001           	moveb %d1,%d0                               
   49606:	49c0           	extbl %d0                                   
   49608:	b680           	cmpl %d0,%d3                                
   4960a:	670c           	beqs 49618 <IMFS_evaluate_sym_link+0x42>    
   4960c:	163c 005c      	moveb #92,%d3                               
   49610:	b680           	cmpl %d0,%d3                                
   49612:	6704           	beqs 49618 <IMFS_evaluate_sym_link+0x42>    
   49614:	4a01           	tstb %d1                                    
   49616:	6662           	bnes 4967a <IMFS_evaluate_sym_link+0xa4>    
   49618:	2679 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a3   
   4961e:	204a           	moveal %a2,%a0                              
   49620:	7601           	moveq #1,%d3                                
   49622:	20eb 0018      	movel %a3@(24),%a0@+                        
   49626:	20eb 001c      	movel %a3@(28),%a0@+                        
   4962a:	20eb 0020      	movel %a3@(32),%a0@+                        
   4962e:	20eb 0024      	movel %a3@(36),%a0@+                        
   49632:	20ab 0028      	movel %a3@(40),%a0@                         
   49636:	2069 004c      	moveal %a1@(76),%a0                         
   * Use eval path to evaluate the path of the symbolic link.         
   */                                                                 
                                                                      
  result = IMFS_eval_path(                                            
    &jnode->info.sym_link.name[i],                                    
    strlen( &jnode->info.sym_link.name[i] ),                          
   4963a:	d688           	addl %a0,%d3                                
   4963c:	2f03           	movel %d3,%sp@-                             
   4963e:	4eb9 0004 ffc0 	jsr 4ffc0 <strlen>                          
                                                                      
  /*                                                                  
   * Use eval path to evaluate the path of the symbolic link.         
   */                                                                 
                                                                      
  result = IMFS_eval_path(                                            
   49644:	2e8a           	movel %a2,%sp@                              
   49646:	2f02           	movel %d2,%sp@-                             
   49648:	2f00           	movel %d0,%sp@-                             
   4964a:	2f03           	movel %d3,%sp@-                             
   4964c:	4eb9 0004 96e2 	jsr 496e2 <IMFS_eval_path>                  
   49652:	2600           	movel %d0,%d3                               
    strlen( &jnode->info.sym_link.name[i] ),                          
    flags,                                                            
    node                                                              
  );                                                                  
                                                                      
  IMFS_Set_handlers( node );                                          
   49654:	2f0a           	movel %a2,%sp@-                             
   49656:	4eb9 0004 945c 	jsr 4945c <IMFS_Set_handlers>               
                                                                      
  /*                                                                  
   * Verify we have the correct permissions for this node.            
   */                                                                 
                                                                      
  if ( !IMFS_evaluate_permission( node, flags ) )                     
   4965c:	2f02           	movel %d2,%sp@-                             
   4965e:	2f0a           	movel %a2,%sp@-                             
   49660:	4eb9 0004 94ea 	jsr 494ea <IMFS_evaluate_permission>        
   49666:	4fef 001c      	lea %sp@(28),%sp                            
   4966a:	4a80           	tstl %d0                                    
   4966c:	6742           	beqs 496b0 <IMFS_evaluate_sym_link+0xda>    
    rtems_set_errno_and_return_minus_one( EACCES );                   
                                                                      
  return result;                                                      
}                                                                     
   4966e:	2003           	movel %d3,%d0                               
   49670:	4cee 0c0c fff0 	moveml %fp@(-16),%d2-%d3/%a2-%a3            
   49676:	4e5e           	unlk %fp                                    
   49678:	4e75           	rts                                         
   * root depending on the symbolic links path.                       
   */                                                                 
                                                                      
  node->node_access = jnode->Parent;                                  
                                                                      
  rtems_filesystem_get_sym_start_loc(                                 
   4967a:	4203           	clrb %d3                                    
   * Use eval path to evaluate the path of the symbolic link.         
   */                                                                 
                                                                      
  result = IMFS_eval_path(                                            
    &jnode->info.sym_link.name[i],                                    
    strlen( &jnode->info.sym_link.name[i] ),                          
   4967c:	d688           	addl %a0,%d3                                
   4967e:	2f03           	movel %d3,%sp@-                             
   49680:	4eb9 0004 ffc0 	jsr 4ffc0 <strlen>                          
                                                                      
  /*                                                                  
   * Use eval path to evaluate the path of the symbolic link.         
   */                                                                 
                                                                      
  result = IMFS_eval_path(                                            
   49686:	2e8a           	movel %a2,%sp@                              
   49688:	2f02           	movel %d2,%sp@-                             
   4968a:	2f00           	movel %d0,%sp@-                             
   4968c:	2f03           	movel %d3,%sp@-                             
   4968e:	4eb9 0004 96e2 	jsr 496e2 <IMFS_eval_path>                  
   49694:	2600           	movel %d0,%d3                               
    strlen( &jnode->info.sym_link.name[i] ),                          
    flags,                                                            
    node                                                              
  );                                                                  
                                                                      
  IMFS_Set_handlers( node );                                          
   49696:	2f0a           	movel %a2,%sp@-                             
   49698:	4eb9 0004 945c 	jsr 4945c <IMFS_Set_handlers>               
                                                                      
  /*                                                                  
   * Verify we have the correct permissions for this node.            
   */                                                                 
                                                                      
  if ( !IMFS_evaluate_permission( node, flags ) )                     
   4969e:	2f02           	movel %d2,%sp@-                             
   496a0:	2f0a           	movel %a2,%sp@-                             
   496a2:	4eb9 0004 94ea 	jsr 494ea <IMFS_evaluate_permission>        
   496a8:	4fef 001c      	lea %sp@(28),%sp                            
   496ac:	4a80           	tstl %d0                                    
   496ae:	66be           	bnes 4966e <IMFS_evaluate_sym_link+0x98>    
    rtems_set_errno_and_return_minus_one( EACCES );                   
   496b0:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   496b6:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
   496b8:	740d           	moveq #13,%d2                               <== NOT EXECUTED
   496ba:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
                                                                      
  return result;                                                      
}                                                                     
   496bc:	2003           	movel %d3,%d0                               <== NOT EXECUTED
  /*                                                                  
   * Verify we have the correct permissions for this node.            
   */                                                                 
                                                                      
  if ( !IMFS_evaluate_permission( node, flags ) )                     
    rtems_set_errno_and_return_minus_one( EACCES );                   
   496be:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
                                                                      
  return result;                                                      
}                                                                     
   496c0:	4cee 0c0c fff0 	moveml %fp@(-16),%d2-%d3/%a2-%a3            <== NOT EXECUTED
   496c6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   496c8:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  if ( jnode->type != IMFS_SYM_LINK )                                 
    rtems_fatal_error_occurred (0xABCD0000);                          
                                                                      
  if ( !jnode->Parent )                                               
    rtems_fatal_error_occurred( 0xBAD00000 );                         
   496ca:	2f3c bad0 0000 	movel #-1160773632,%sp@-                    <== NOT EXECUTED
   496d0:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
  /*                                                                  
   * Check for things that should never happen.                       
   */                                                                 
                                                                      
  if ( jnode->type != IMFS_SYM_LINK )                                 
    rtems_fatal_error_occurred (0xABCD0000);                          
   496d6:	2f3c abcd 0000 	movel #-1412628480,%sp@-                    <== NOT EXECUTED
   496dc:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
                                                                      
0004d434 <IMFS_fchmod>:                                               
                                                                      
int IMFS_fchmod(                                                      
  rtems_filesystem_location_info_t *loc,                              
  mode_t                            mode                              
)                                                                     
{                                                                     
   4d434:	4e56 fff8      	linkw %fp,#-8                               
   4d438:	206e 0008      	moveal %fp@(8),%a0                          
   4d43c:	2f0a           	movel %a2,%sp@-                             
  IMFS_jnode_t  *jnode;                                               
#if defined(RTEMS_POSIX_API)                                          
  uid_t          st_uid;                                              
#endif                                                                
                                                                      
  jnode = loc->node_access;                                           
   4d43e:	2450           	moveal %a0@,%a2                             
                                                                      
int IMFS_fchmod(                                                      
  rtems_filesystem_location_info_t *loc,                              
  mode_t                            mode                              
)                                                                     
{                                                                     
   4d440:	2f02           	movel %d2,%sp@-                             
   *  Verify I am the owner of the node or the super user.            
   */                                                                 
#if defined(RTEMS_POSIX_API)                                          
  st_uid = geteuid();                                                 
                                                                      
  if ( ( st_uid != jnode->st_uid ) && ( st_uid != 0 ) )               
   4d442:	4282           	clrl %d2                                    
                                                                      
  /*                                                                  
   *  Verify I am the owner of the node or the super user.            
   */                                                                 
#if defined(RTEMS_POSIX_API)                                          
  st_uid = geteuid();                                                 
   4d444:	4eb9 0004 a880 	jsr 4a880 <geteuid>                         
                                                                      
  if ( ( st_uid != jnode->st_uid ) && ( st_uid != 0 ) )               
   4d44a:	4281           	clrl %d1                                    
   4d44c:	3400           	movew %d0,%d2                               
   4d44e:	322a 0038      	movew %a2@(56),%d1                          
   4d452:	b282           	cmpl %d2,%d1                                
   4d454:	6704           	beqs 4d45a <IMFS_fchmod+0x26>               
   4d456:	4a40           	tstw %d0                                    <== NOT EXECUTED
   4d458:	663c           	bnes 4d496 <IMFS_fchmod+0x62>               <== NOT EXECUTED
  /*                                                                  
   * Change only the RWX permissions on the jnode to mode.            
   */                                                                 
                                                                      
  jnode->st_mode &= ~(S_IRWXU | S_IRWXG | S_IRWXO | S_ISUID | S_ISGID | S_ISVTX);
  jnode->st_mode |= mode & (S_IRWXU | S_IRWXG | S_IRWXO | S_ISUID | S_ISGID | S_ISVTX);
   4d45a:	222e 000c      	movel %fp@(12),%d1                          
   4d45e:	202a 002e      	movel %a2@(46),%d0                          
   4d462:	0281 0000 0fff 	andil #4095,%d1                             
   4d468:	0280 ffff f000 	andil #-4096,%d0                            
   4d46e:	8280           	orl %d0,%d1                                 
   4d470:	2541 002e      	movel %d1,%a2@(46)                          
                                                                      
  IMFS_update_ctime( jnode );                                         
   4d474:	42a7           	clrl %sp@-                                  
   4d476:	486e fff8      	pea %fp@(-8)                                
   4d47a:	4eb9 0004 a894 	jsr 4a894 <gettimeofday>                    
   4d480:	256e fff8 0044 	movel %fp@(-8),%a2@(68)                     
                                                                      
  return 0;                                                           
   4d486:	508f           	addql #8,%sp                                
   */                                                                 
                                                                      
  jnode->st_mode &= ~(S_IRWXU | S_IRWXG | S_IRWXO | S_ISUID | S_ISGID | S_ISVTX);
  jnode->st_mode |= mode & (S_IRWXU | S_IRWXG | S_IRWXO | S_ISUID | S_ISGID | S_ISVTX);
                                                                      
  IMFS_update_ctime( jnode );                                         
   4d488:	4280           	clrl %d0                                    
                                                                      
  return 0;                                                           
}                                                                     
   4d48a:	242e fff0      	movel %fp@(-16),%d2                         
   4d48e:	246e fff4      	moveal %fp@(-12),%a2                        
   4d492:	4e5e           	unlk %fp                                    
   4d494:	4e75           	rts                                         
   */                                                                 
#if defined(RTEMS_POSIX_API)                                          
  st_uid = geteuid();                                                 
                                                                      
  if ( ( st_uid != jnode->st_uid ) && ( st_uid != 0 ) )               
    rtems_set_errno_and_return_minus_one( EPERM );                    
   4d496:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
  jnode->st_mode |= mode & (S_IRWXU | S_IRWXG | S_IRWXO | S_ISUID | S_ISGID | S_ISVTX);
                                                                      
  IMFS_update_ctime( jnode );                                         
                                                                      
  return 0;                                                           
}                                                                     
   4d49c:	242e fff0      	movel %fp@(-16),%d2                         <== NOT EXECUTED
   */                                                                 
#if defined(RTEMS_POSIX_API)                                          
  st_uid = geteuid();                                                 
                                                                      
  if ( ( st_uid != jnode->st_uid ) && ( st_uid != 0 ) )               
    rtems_set_errno_and_return_minus_one( EPERM );                    
   4d4a0:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4d4a2:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   4d4a4:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
  jnode->st_mode |= mode & (S_IRWXU | S_IRWXG | S_IRWXO | S_ISUID | S_ISGID | S_ISVTX);
                                                                      
  IMFS_update_ctime( jnode );                                         
                                                                      
  return 0;                                                           
}                                                                     
   4d4a6:	246e fff4      	moveal %fp@(-12),%a2                        <== NOT EXECUTED
   4d4aa:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   */                                                                 
#if defined(RTEMS_POSIX_API)                                          
  st_uid = geteuid();                                                 
                                                                      
  if ( ( st_uid != jnode->st_uid ) && ( st_uid != 0 ) )               
    rtems_set_errno_and_return_minus_one( EPERM );                    
   4d4ac:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
  jnode->st_mode |= mode & (S_IRWXU | S_IRWXG | S_IRWXO | S_ISUID | S_ISGID | S_ISVTX);
                                                                      
  IMFS_update_ctime( jnode );                                         
                                                                      
  return 0;                                                           
}                                                                     
                                                                      
00049e68 <IMFS_fifo_close>:                                           
}                                                                     
                                                                      
int IMFS_fifo_close(                                                  
  rtems_libio_t *iop                                                  
)                                                                     
{                                                                     
   49e68:	4e56 fff4      	linkw %fp,#-12                              <== NOT EXECUTED
   49e6c:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     <== NOT EXECUTED
   49e70:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
  IMFS_jnode_t *jnode = iop->file_info;                               
   49e74:	266a 0038      	moveal %a2@(56),%a3                         <== NOT EXECUTED
                                                                      
  int err = pipe_release(&JNODE2PIPE(jnode), iop);                    
   49e78:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   49e7a:	486b 004c      	pea %a3@(76)                                <== NOT EXECUTED
   49e7e:	4eb9 0004 cbc8 	jsr 4cbc8 <pipe_release>                    <== NOT EXECUTED
                                                                      
  if (! err) {                                                        
   49e84:	508f           	addql #8,%sp                                <== NOT EXECUTED
  rtems_libio_t *iop                                                  
)                                                                     
{                                                                     
  IMFS_jnode_t *jnode = iop->file_info;                               
                                                                      
  int err = pipe_release(&JNODE2PIPE(jnode), iop);                    
   49e86:	2400           	movel %d0,%d2                               <== NOT EXECUTED
                                                                      
  if (! err) {                                                        
   49e88:	670e           	beqs 49e98 <IMFS_fifo_close+0x30>           <== NOT EXECUTED
    /* Free jnode if file is already unlinked and no one opens it */  
    if (! rtems_libio_is_file_open(jnode) && jnode->st_nlink < 1)     
      free(jnode);                                                    
  }                                                                   
                                                                      
  IMFS_FIFO_RETURN(err);                                              
   49e8a:	6d40           	blts 49ecc <IMFS_fifo_close+0x64>           <== NOT EXECUTED
}                                                                     
   49e8c:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   49e8e:	4cee 0c04 fff4 	moveml %fp@(-12),%d2/%a2-%a3                <== NOT EXECUTED
   49e94:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   49e96:	4e75           	rts                                         <== NOT EXECUTED
  IMFS_jnode_t *jnode = iop->file_info;                               
                                                                      
  int err = pipe_release(&JNODE2PIPE(jnode), iop);                    
                                                                      
  if (! err) {                                                        
    iop->flags &= ~LIBIO_FLAGS_OPEN;                                  
   49e98:	203c ffff feff 	movel #-257,%d0                             <== NOT EXECUTED
    /* Free jnode if file is already unlinked and no one opens it */  
    if (! rtems_libio_is_file_open(jnode) && jnode->st_nlink < 1)     
   49e9e:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
  IMFS_jnode_t *jnode = iop->file_info;                               
                                                                      
  int err = pipe_release(&JNODE2PIPE(jnode), iop);                    
                                                                      
  if (! err) {                                                        
    iop->flags &= ~LIBIO_FLAGS_OPEN;                                  
   49ea0:	c1aa 0014      	andl %d0,%a2@(20)                           <== NOT EXECUTED
    /* Free jnode if file is already unlinked and no one opens it */  
    if (! rtems_libio_is_file_open(jnode) && jnode->st_nlink < 1)     
   49ea4:	4eb9 0004 a96e 	jsr 4a96e <rtems_libio_is_file_open>        <== NOT EXECUTED
   49eaa:	588f           	addql #4,%sp                                <== NOT EXECUTED
   49eac:	4a80           	tstl %d0                                    <== NOT EXECUTED
   49eae:	66dc           	bnes 49e8c <IMFS_fifo_close+0x24>           <== NOT EXECUTED
   49eb0:	4a6b 0032      	tstw %a3@(50)                               <== NOT EXECUTED
   49eb4:	66d6           	bnes 49e8c <IMFS_fifo_close+0x24>           <== NOT EXECUTED
      free(jnode);                                                    
   49eb6:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   49eb8:	4eb9 0004 a6f4 	jsr 4a6f4 <free>                            <== NOT EXECUTED
   49ebe:	588f           	addql #4,%sp                                <== NOT EXECUTED
  }                                                                   
                                                                      
  IMFS_FIFO_RETURN(err);                                              
}                                                                     
   49ec0:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   49ec2:	4cee 0c04 fff4 	moveml %fp@(-12),%d2/%a2-%a3                <== NOT EXECUTED
   49ec8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   49eca:	4e75           	rts                                         <== NOT EXECUTED
    /* Free jnode if file is already unlinked and no one opens it */  
    if (! rtems_libio_is_file_open(jnode) && jnode->st_nlink < 1)     
      free(jnode);                                                    
  }                                                                   
                                                                      
  IMFS_FIFO_RETURN(err);                                              
   49ecc:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   49ed2:	4482           	negl %d2                                    <== NOT EXECUTED
   49ed4:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   49ed6:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
   49ed8:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
}                                                                     
   49eda:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   49edc:	4cee 0c04 fff4 	moveml %fp@(-12),%d2/%a2-%a3                <== NOT EXECUTED
   49ee2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00049cf8 <IMFS_fifo_ioctl>:                                           
int IMFS_fifo_ioctl(                                                  
  rtems_libio_t *iop,                                                 
  uint32_t       command,                                             
  void          *buffer                                               
)                                                                     
{                                                                     
   49cf8:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   49cfc:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   49d00:	202e 000c      	movel %fp@(12),%d0                          <== NOT EXECUTED
   49d04:	226e 0010      	moveal %fp@(16),%a1                         <== NOT EXECUTED
   49d08:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  int err;                                                            
                                                                      
  if (command == FIONBIO) {                                           
   49d0a:	0c80 8004 667e 	cmpil #-2147195266,%d0                      <== NOT EXECUTED
   49d10:	6724           	beqs 49d36 <IMFS_fifo_ioctl+0x3e>           <== NOT EXECUTED
        iop->flags &= ~LIBIO_FLAGS_NO_DELAY;                          
      return 0;                                                       
    }                                                                 
  }                                                                   
  else                                                                
    err = pipe_ioctl(LIBIO2PIPE(iop), command, buffer, iop);          
   49d12:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   49d14:	2068 0038      	moveal %a0@(56),%a0                         <== NOT EXECUTED
   49d18:	2f09           	movel %a1,%sp@-                             <== NOT EXECUTED
   49d1a:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   49d1c:	2f28 004c      	movel %a0@(76),%sp@-                        <== NOT EXECUTED
   49d20:	4eb9 0004 c762 	jsr 4c762 <pipe_ioctl>                      <== NOT EXECUTED
                                                                      
  IMFS_FIFO_RETURN(err);                                              
   49d26:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   49d2a:	4a80           	tstl %d0                                    <== NOT EXECUTED
   49d2c:	6d46           	blts 49d74 <IMFS_fifo_ioctl+0x7c>           <== NOT EXECUTED
}                                                                     
   49d2e:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
   49d32:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   49d34:	4e75           	rts                                         <== NOT EXECUTED
)                                                                     
{                                                                     
  int err;                                                            
                                                                      
  if (command == FIONBIO) {                                           
    if (buffer == NULL)                                               
   49d36:	4a89           	tstl %a1                                    <== NOT EXECUTED
   49d38:	6724           	beqs 49d5e <IMFS_fifo_ioctl+0x66>           <== NOT EXECUTED
      err = -EFAULT;                                                  
    else {                                                            
      if (*(int *)buffer)                                             
   49d3a:	4a91           	tstl %a1@                                   <== NOT EXECUTED
   49d3c:	6710           	beqs 49d4e <IMFS_fifo_ioctl+0x56>           <== NOT EXECUTED
        iop->flags |= LIBIO_FLAGS_NO_DELAY;                           
   49d3e:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   49d40:	4280           	clrl %d0                                    <== NOT EXECUTED
  }                                                                   
  else                                                                
    err = pipe_ioctl(LIBIO2PIPE(iop), command, buffer, iop);          
                                                                      
  IMFS_FIFO_RETURN(err);                                              
}                                                                     
   49d42:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
   49d46:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  if (command == FIONBIO) {                                           
    if (buffer == NULL)                                               
      err = -EFAULT;                                                  
    else {                                                            
      if (*(int *)buffer)                                             
        iop->flags |= LIBIO_FLAGS_NO_DELAY;                           
   49d48:	83a8 0014      	orl %d1,%a0@(20)                            <== NOT EXECUTED
  }                                                                   
  else                                                                
    err = pipe_ioctl(LIBIO2PIPE(iop), command, buffer, iop);          
                                                                      
  IMFS_FIFO_RETURN(err);                                              
}                                                                     
   49d4c:	4e75           	rts                                         <== NOT EXECUTED
      err = -EFAULT;                                                  
    else {                                                            
      if (*(int *)buffer)                                             
        iop->flags |= LIBIO_FLAGS_NO_DELAY;                           
      else                                                            
        iop->flags &= ~LIBIO_FLAGS_NO_DELAY;                          
   49d4e:	72fe           	moveq #-2,%d1                               <== NOT EXECUTED
   49d50:	4280           	clrl %d0                                    <== NOT EXECUTED
  }                                                                   
  else                                                                
    err = pipe_ioctl(LIBIO2PIPE(iop), command, buffer, iop);          
                                                                      
  IMFS_FIFO_RETURN(err);                                              
}                                                                     
   49d52:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
   49d56:	4e5e           	unlk %fp                                    <== NOT EXECUTED
      err = -EFAULT;                                                  
    else {                                                            
      if (*(int *)buffer)                                             
        iop->flags |= LIBIO_FLAGS_NO_DELAY;                           
      else                                                            
        iop->flags &= ~LIBIO_FLAGS_NO_DELAY;                          
   49d58:	c3a8 0014      	andl %d1,%a0@(20)                           <== NOT EXECUTED
  }                                                                   
  else                                                                
    err = pipe_ioctl(LIBIO2PIPE(iop), command, buffer, iop);          
                                                                      
  IMFS_FIFO_RETURN(err);                                              
}                                                                     
   49d5c:	4e75           	rts                                         <== NOT EXECUTED
    }                                                                 
  }                                                                   
  else                                                                
    err = pipe_ioctl(LIBIO2PIPE(iop), command, buffer, iop);          
                                                                      
  IMFS_FIFO_RETURN(err);                                              
   49d5e:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
)                                                                     
{                                                                     
  int err;                                                            
                                                                      
  if (command == FIONBIO) {                                           
    if (buffer == NULL)                                               
   49d64:	740e           	moveq #14,%d2                               <== NOT EXECUTED
    }                                                                 
  }                                                                   
  else                                                                
    err = pipe_ioctl(LIBIO2PIPE(iop), command, buffer, iop);          
                                                                      
  IMFS_FIFO_RETURN(err);                                              
   49d66:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   49d68:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   49d6a:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
}                                                                     
   49d6c:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
   49d70:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   49d72:	4e75           	rts                                         <== NOT EXECUTED
    }                                                                 
  }                                                                   
  else                                                                
    err = pipe_ioctl(LIBIO2PIPE(iop), command, buffer, iop);          
                                                                      
  IMFS_FIFO_RETURN(err);                                              
   49d74:	2400           	movel %d0,%d2                               <== NOT EXECUTED
   49d76:	4482           	negl %d2                                    <== NOT EXECUTED
   49d78:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   49d7e:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   49d80:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   49d82:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
   49d84:	60e6           	bras 49d6c <IMFS_fifo_ioctl+0x74>           <== NOT EXECUTED
                                                                      
00049c94 <IMFS_fifo_lseek>:                                           
rtems_off64_t IMFS_fifo_lseek(                                        
  rtems_libio_t *iop,                                                 
  rtems_off64_t  offset,                                              
  int            whence                                               
)                                                                     
{                                                                     
   49c94:	4e56 fff4      	linkw %fp,#-12                              <== NOT EXECUTED
   49c98:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   49c9c:	48d7 001c      	moveml %d2-%d4,%sp@                         <== NOT EXECUTED
  off_t err = pipe_lseek(LIBIO2PIPE(iop), offset, whence, iop);       
   49ca0:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   49ca2:	2f2e 0014      	movel %fp@(20),%sp@-                        <== NOT EXECUTED
   49ca6:	2068 0038      	moveal %a0@(56),%a0                         <== NOT EXECUTED
   49caa:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   49cae:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   49cb2:	2f28 004c      	movel %a0@(76),%sp@-                        <== NOT EXECUTED
   49cb6:	4eb9 0004 c704 	jsr 4c704 <pipe_lseek>                      <== NOT EXECUTED
  IMFS_FIFO_RETURN(err);                                              
   49cbc:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
  rtems_libio_t *iop,                                                 
  rtems_off64_t  offset,                                              
  int            whence                                               
)                                                                     
{                                                                     
  off_t err = pipe_lseek(LIBIO2PIPE(iop), offset, whence, iop);       
   49cc0:	2800           	movel %d0,%d4                               <== NOT EXECUTED
   49cc2:	2600           	movel %d0,%d3                               <== NOT EXECUTED
   49cc4:	5bc2           	smi %d2                                     <== NOT EXECUTED
   49cc6:	49c2           	extbl %d2                                   <== NOT EXECUTED
  IMFS_FIFO_RETURN(err);                                              
   49cc8:	4a82           	tstl %d2                                    <== NOT EXECUTED
   49cca:	6b0e           	bmis 49cda <IMFS_fifo_lseek+0x46>           <== NOT EXECUTED
}                                                                     
   49ccc:	2203           	movel %d3,%d1                               <== NOT EXECUTED
   49cce:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   49cd0:	4cee 001c fff4 	moveml %fp@(-12),%d2-%d4                    <== NOT EXECUTED
   49cd6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   49cd8:	4e75           	rts                                         <== NOT EXECUTED
  rtems_off64_t  offset,                                              
  int            whence                                               
)                                                                     
{                                                                     
  off_t err = pipe_lseek(LIBIO2PIPE(iop), offset, whence, iop);       
  IMFS_FIFO_RETURN(err);                                              
   49cda:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   49ce0:	4484           	negl %d4                                    <== NOT EXECUTED
   49ce2:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   49ce4:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
   49ce6:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
   49ce8:	2084           	movel %d4,%a0@                              <== NOT EXECUTED
}                                                                     
   49cea:	2203           	movel %d3,%d1                               <== NOT EXECUTED
   49cec:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   49cee:	4cee 001c fff4 	moveml %fp@(-12),%d2-%d4                    <== NOT EXECUTED
   49cf4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00049ee6 <IMFS_fifo_open>:                                            
  rtems_libio_t *iop,                                                 
  const char    *pathname,                                            
  uint32_t       flag,                                                
  uint32_t       mode                                                 
)                                                                     
{                                                                     
   49ee6:	4e56 0000      	linkw %fp,#0                                
   49eea:	206e 0008      	moveal %fp@(8),%a0                          
   49eee:	2f02           	movel %d2,%sp@-                             
  IMFS_jnode_t *jnode = iop->file_info;                               
                                                                      
  int err = fifo_open(&JNODE2PIPE(jnode), iop);                       
   49ef0:	2f08           	movel %a0,%sp@-                             
   49ef2:	2068 0038      	moveal %a0@(56),%a0                         
   49ef6:	41e8 004c      	lea %a0@(76),%a0                            
   49efa:	2f08           	movel %a0,%sp@-                             
   49efc:	4eb9 0004 cce8 	jsr 4cce8 <fifo_open>                       
  IMFS_FIFO_RETURN(err);                                              
   49f02:	508f           	addql #8,%sp                                
  uint32_t       mode                                                 
)                                                                     
{                                                                     
  IMFS_jnode_t *jnode = iop->file_info;                               
                                                                      
  int err = fifo_open(&JNODE2PIPE(jnode), iop);                       
   49f04:	2400           	movel %d0,%d2                               
  IMFS_FIFO_RETURN(err);                                              
   49f06:	6d0a           	blts 49f12 <IMFS_fifo_open+0x2c>            
}                                                                     
   49f08:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   49f0a:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
   49f0e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   49f10:	4e75           	rts                                         <== NOT EXECUTED
)                                                                     
{                                                                     
  IMFS_jnode_t *jnode = iop->file_info;                               
                                                                      
  int err = fifo_open(&JNODE2PIPE(jnode), iop);                       
  IMFS_FIFO_RETURN(err);                                              
   49f12:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   49f18:	4482           	negl %d2                                    
   49f1a:	2040           	moveal %d0,%a0                              
   49f1c:	2082           	movel %d2,%a0@                              
   49f1e:	74ff           	moveq #-1,%d2                               
}                                                                     
   49f20:	2002           	movel %d2,%d0                               
   49f22:	242e fffc      	movel %fp@(-4),%d2                          
   49f26:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      
00049dfa <IMFS_fifo_read>:                                            
ssize_t IMFS_fifo_read(                                               
  rtems_libio_t *iop,                                                 
  void          *buffer,                                              
  size_t         count                                                
)                                                                     
{                                                                     
   49dfa:	4e56 fff8      	linkw %fp,#-8                               <== NOT EXECUTED
   49dfe:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   49e02:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   49e04:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  IMFS_jnode_t *jnode = iop->file_info;                               
                                                                      
  int err = pipe_read(JNODE2PIPE(jnode), buffer, count, iop);         
   49e06:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   49e08:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   49e0c:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
  rtems_libio_t *iop,                                                 
  void          *buffer,                                              
  size_t         count                                                
)                                                                     
{                                                                     
  IMFS_jnode_t *jnode = iop->file_info;                               
   49e10:	2468 0038      	moveal %a0@(56),%a2                         <== NOT EXECUTED
                                                                      
  int err = pipe_read(JNODE2PIPE(jnode), buffer, count, iop);         
   49e14:	2f2a 004c      	movel %a2@(76),%sp@-                        <== NOT EXECUTED
   49e18:	4eb9 0004 c7c2 	jsr 4c7c2 <pipe_read>                       <== NOT EXECUTED
  if (err > 0)                                                        
   49e1e:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
  size_t         count                                                
)                                                                     
{                                                                     
  IMFS_jnode_t *jnode = iop->file_info;                               
                                                                      
  int err = pipe_read(JNODE2PIPE(jnode), buffer, count, iop);         
   49e22:	2400           	movel %d0,%d2                               <== NOT EXECUTED
  if (err > 0)                                                        
   49e24:	6f22           	bles 49e48 <IMFS_fifo_read+0x4e>            <== NOT EXECUTED
    IMFS_update_atime(jnode);                                         
   49e26:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   49e28:	486e fff8      	pea %fp@(-8)                                <== NOT EXECUTED
   49e2c:	4eb9 0004 a894 	jsr 4a894 <gettimeofday>                    <== NOT EXECUTED
   49e32:	256e fff8 003c 	movel %fp@(-8),%a2@(60)                     <== NOT EXECUTED
   49e38:	508f           	addql #8,%sp                                <== NOT EXECUTED
                                                                      
  IMFS_FIFO_RETURN(err);                                              
}                                                                     
   49e3a:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   49e3c:	242e fff0      	movel %fp@(-16),%d2                         <== NOT EXECUTED
   49e40:	246e fff4      	moveal %fp@(-12),%a2                        <== NOT EXECUTED
   49e44:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   49e46:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  int err = pipe_read(JNODE2PIPE(jnode), buffer, count, iop);         
  if (err > 0)                                                        
    IMFS_update_atime(jnode);                                         
                                                                      
  IMFS_FIFO_RETURN(err);                                              
   49e48:	4a80           	tstl %d0                                    <== NOT EXECUTED
   49e4a:	67ee           	beqs 49e3a <IMFS_fifo_read+0x40>            <== NOT EXECUTED
   49e4c:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   49e52:	4482           	negl %d2                                    <== NOT EXECUTED
   49e54:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   49e56:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
   49e58:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
}                                                                     
   49e5a:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   49e5c:	242e fff0      	movel %fp@(-16),%d2                         <== NOT EXECUTED
   49e60:	246e fff4      	moveal %fp@(-12),%a2                        <== NOT EXECUTED
   49e64:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00049d86 <IMFS_fifo_write>:                                           
ssize_t IMFS_fifo_write(                                              
  rtems_libio_t *iop,                                                 
  const void    *buffer,                                              
  size_t         count                                                
)                                                                     
{                                                                     
   49d86:	4e56 fff8      	linkw %fp,#-8                               <== NOT EXECUTED
   49d8a:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   49d8e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   49d90:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  IMFS_jnode_t *jnode = iop->file_info;                               
                                                                      
  int err = pipe_write(JNODE2PIPE(jnode), buffer, count, iop);        
   49d92:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   49d94:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   49d98:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
  rtems_libio_t *iop,                                                 
  const void    *buffer,                                              
  size_t         count                                                
)                                                                     
{                                                                     
  IMFS_jnode_t *jnode = iop->file_info;                               
   49d9c:	2468 0038      	moveal %a0@(56),%a2                         <== NOT EXECUTED
                                                                      
  int err = pipe_write(JNODE2PIPE(jnode), buffer, count, iop);        
   49da0:	2f2a 004c      	movel %a2@(76),%sp@-                        <== NOT EXECUTED
   49da4:	4eb9 0004 c9b8 	jsr 4c9b8 <pipe_write>                      <== NOT EXECUTED
  if (err > 0) {                                                      
   49daa:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
  size_t         count                                                
)                                                                     
{                                                                     
  IMFS_jnode_t *jnode = iop->file_info;                               
                                                                      
  int err = pipe_write(JNODE2PIPE(jnode), buffer, count, iop);        
   49dae:	2400           	movel %d0,%d2                               <== NOT EXECUTED
  if (err > 0) {                                                      
   49db0:	6f28           	bles 49dda <IMFS_fifo_write+0x54>           <== NOT EXECUTED
    IMFS_mtime_ctime_update(jnode);                                   
   49db2:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   49db4:	486e fff8      	pea %fp@(-8)                                <== NOT EXECUTED
   49db8:	4eb9 0004 a894 	jsr 4a894 <gettimeofday>                    <== NOT EXECUTED
   49dbe:	202e fff8      	movel %fp@(-8),%d0                          <== NOT EXECUTED
   49dc2:	508f           	addql #8,%sp                                <== NOT EXECUTED
   49dc4:	2540 0044      	movel %d0,%a2@(68)                          <== NOT EXECUTED
   49dc8:	2540 0040      	movel %d0,%a2@(64)                          <== NOT EXECUTED
  }                                                                   
                                                                      
  IMFS_FIFO_RETURN(err);                                              
}                                                                     
   49dcc:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   49dce:	242e fff0      	movel %fp@(-16),%d2                         <== NOT EXECUTED
   49dd2:	246e fff4      	moveal %fp@(-12),%a2                        <== NOT EXECUTED
   49dd6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   49dd8:	4e75           	rts                                         <== NOT EXECUTED
  int err = pipe_write(JNODE2PIPE(jnode), buffer, count, iop);        
  if (err > 0) {                                                      
    IMFS_mtime_ctime_update(jnode);                                   
  }                                                                   
                                                                      
  IMFS_FIFO_RETURN(err);                                              
   49dda:	4a80           	tstl %d0                                    <== NOT EXECUTED
   49ddc:	67ee           	beqs 49dcc <IMFS_fifo_write+0x46>           <== NOT EXECUTED
   49dde:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   49de4:	4482           	negl %d2                                    <== NOT EXECUTED
   49de6:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   49de8:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
   49dea:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
}                                                                     
   49dec:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   49dee:	242e fff0      	movel %fp@(-16),%d2                         <== NOT EXECUTED
   49df2:	246e fff4      	moveal %fp@(-12),%a2                        <== NOT EXECUTED
   49df6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00049f2c <IMFS_find_match_in_dir>:                                    
                                                                      
IMFS_jnode_t *IMFS_find_match_in_dir(                                 
  IMFS_jnode_t *directory,                                            
  char         *name                                                  
)                                                                     
{                                                                     
   49f2c:	4e56 fff0      	linkw %fp,#-16                              
   49f30:	48d7 1c04      	moveml %d2/%a2-%a4,%sp@                     
   49f34:	246e 0008      	moveal %fp@(8),%a2                          
   49f38:	242e 000c      	movel %fp@(12),%d2                          
  /*                                                                  
   *  Check for fatal errors.  A NULL directory show a problem in the 
   *  the IMFS code.                                                  
   */                                                                 
                                                                      
  assert( directory );                                                
   49f3c:	4a8a           	tstl %a2                                    
   49f3e:	6776           	beqs 49fb6 <IMFS_find_match_in_dir+0x8a>    
  if ( !name )                                                        
   49f40:	4a82           	tstl %d2                                    
   49f42:	6756           	beqs 49f9a <IMFS_find_match_in_dir+0x6e>    
                                                                      
  /*                                                                  
   *  Check for "." and ".."                                          
   */                                                                 
                                                                      
  if ( !strcmp( name, dotname ) )                                     
   49f44:	4879 0005 c8ec 	pea 5c8ec <dotname>                         
   49f4a:	47f9 0004 fafc 	lea 4fafc <strcmp>,%a3                      
   49f50:	2f02           	movel %d2,%sp@-                             
   49f52:	4e93           	jsr %a3@                                    
   49f54:	508f           	addql #8,%sp                                
   49f56:	4a80           	tstl %d0                                    
   49f58:	6714           	beqs 49f6e <IMFS_find_match_in_dir+0x42>    
    return directory;                                                 
                                                                      
  if ( !strcmp( name, dotdotname ) )                                  
   49f5a:	4879 0005 c8ee 	pea 5c8ee <dotdotname>                      
   49f60:	2f02           	movel %d2,%sp@-                             
   49f62:	4e93           	jsr %a3@                                    
   49f64:	508f           	addql #8,%sp                                
   49f66:	4a80           	tstl %d0                                    
   49f68:	6610           	bnes 49f7a <IMFS_find_match_in_dir+0x4e>    
    return directory->Parent;                                         
   49f6a:	246a 0008      	moveal %a2@(8),%a2                          <== NOT EXECUTED
    if ( !strcmp( name, the_jnode->name ) )                           
      return the_jnode;                                               
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   49f6e:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   49f70:	4cee 1c04 fff0 	moveml %fp@(-16),%d2/%a2-%a4                <== NOT EXECUTED
   49f76:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   49f78:	4e75           	rts                                         <== NOT EXECUTED
  if ( !strcmp( name, dotdotname ) )                                  
    return directory->Parent;                                         
                                                                      
  the_chain = &directory->info.directory.Entries;                     
                                                                      
  for ( the_node = the_chain->first;                                  
   49f7a:	286a 004c      	moveal %a2@(76),%a4                         
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Tail(                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
   return (Chain_Node *) &the_chain->permanent_null;                  
   49f7e:	45ea 0050      	lea %a2@(80),%a2                            
   49f82:	b5cc           	cmpal %a4,%a2                               
   49f84:	6714           	beqs 49f9a <IMFS_find_match_in_dir+0x6e>    
        !rtems_chain_is_tail( the_chain, the_node );                  
        the_node = the_node->next ) {                                 
                                                                      
    the_jnode = (IMFS_jnode_t *) the_node;                            
                                                                      
    if ( !strcmp( name, the_jnode->name ) )                           
   49f86:	486c 000c      	pea %a4@(12)                                
   49f8a:	2f02           	movel %d2,%sp@-                             
   49f8c:	4e93           	jsr %a3@                                    
   49f8e:	508f           	addql #8,%sp                                
   49f90:	4a80           	tstl %d0                                    
   49f92:	6714           	beqs 49fa8 <IMFS_find_match_in_dir+0x7c>    
                                                                      
  the_chain = &directory->info.directory.Entries;                     
                                                                      
  for ( the_node = the_chain->first;                                  
        !rtems_chain_is_tail( the_chain, the_node );                  
        the_node = the_node->next ) {                                 
   49f94:	2854           	moveal %a4@,%a4                             
  if ( !strcmp( name, dotdotname ) )                                  
    return directory->Parent;                                         
                                                                      
  the_chain = &directory->info.directory.Entries;                     
                                                                      
  for ( the_node = the_chain->first;                                  
   49f96:	b5cc           	cmpal %a4,%a2                               
   49f98:	66ec           	bnes 49f86 <IMFS_find_match_in_dir+0x5a>    
   49f9a:	95ca           	subal %a2,%a2                               
    if ( !strcmp( name, the_jnode->name ) )                           
      return the_jnode;                                               
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   49f9c:	200a           	movel %a2,%d0                               
   49f9e:	4cee 1c04 fff0 	moveml %fp@(-16),%d2/%a2-%a4                
   49fa4:	4e5e           	unlk %fp                                    
   49fa6:	4e75           	rts                                         
        !rtems_chain_is_tail( the_chain, the_node );                  
        the_node = the_node->next ) {                                 
                                                                      
    the_jnode = (IMFS_jnode_t *) the_node;                            
                                                                      
    if ( !strcmp( name, the_jnode->name ) )                           
   49fa8:	244c           	moveal %a4,%a2                              
      return the_jnode;                                               
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   49faa:	200a           	movel %a2,%d0                               
   49fac:	4cee 1c04 fff0 	moveml %fp@(-16),%d2/%a2-%a4                
   49fb2:	4e5e           	unlk %fp                                    
   49fb4:	4e75           	rts                                         
  /*                                                                  
   *  Check for fatal errors.  A NULL directory show a problem in the 
   *  the IMFS code.                                                  
   */                                                                 
                                                                      
  assert( directory );                                                
   49fb6:	4879 0005 d0bf 	pea 5d0bf <_global_impure_ptr+0x1b1>        <== NOT EXECUTED
   49fbc:	4879 0005 c8f1 	pea 5c8f1 <__FUNCTION__.5390>               <== NOT EXECUTED
   49fc2:	4878 002a      	pea 2a <OPER2+0x16>                         <== NOT EXECUTED
   49fc6:	4879 0005 c8a0 	pea 5c8a0 <IMFS_fifo_handlers+0x38>         <== NOT EXECUTED
   49fcc:	4eb9 0004 a508 	jsr 4a508 <__assert_func>                   <== NOT EXECUTED
	...                                                                  
                                                                      
0004f7d0 <IMFS_fsunmount>:                                            
    ((IMFS_jnode_t *)( rtems_chain_head( jnode_get_control( jnode ) )->next))
                                                                      
int IMFS_fsunmount(                                                   
  rtems_filesystem_mount_table_entry_t *temp_mt_entry                 
)                                                                     
{                                                                     
   4f7d0:	4e56 ffd8      	linkw %fp,#-40                              
   4f7d4:	206e 0008      	moveal %fp@(8),%a0                          
   4f7d8:	48d7 3c04      	moveml %d2/%a2-%a5,%sp@                     
    * Traverse tree that starts at the mt_fs_root and deallocate memory
    * associated memory space                                         
    */                                                                
                                                                      
   jnode = (IMFS_jnode_t *)temp_mt_entry->mt_fs_root.node_access;     
   loc = temp_mt_entry->mt_fs_root;                                   
   4f7dc:	47ee ffec      	lea %fp@(-20),%a3                           
   4f7e0:	49f9 0004 ecf4 	lea 4ecf4 <IMFS_Set_handlers>,%a4           
     next = jnode->Parent;                                            
     loc.node_access = (void *)jnode;                                 
     IMFS_Set_handlers( &loc );                                       
                                                                      
     if ( jnode->type != IMFS_DIRECTORY ) {                           
        result = IMFS_unlink( NULL, &loc );                           
   4f7e6:	4bf9 0004 36dc 	lea 436dc <IMFS_unlink>,%a5                 
    * Traverse tree that starts at the mt_fs_root and deallocate memory
    * associated memory space                                         
    */                                                                
                                                                      
   jnode = (IMFS_jnode_t *)temp_mt_entry->mt_fs_root.node_access;     
   loc = temp_mt_entry->mt_fs_root;                                   
   4f7ec:	26a8 001c      	movel %a0@(28),%a3@                         
   /*                                                                 
    * Traverse tree that starts at the mt_fs_root and deallocate memory
    * associated memory space                                         
    */                                                                
                                                                      
   jnode = (IMFS_jnode_t *)temp_mt_entry->mt_fs_root.node_access;     
   4f7f0:	2468 001c      	moveal %a0@(28),%a2                         
                                                                      
   /*                                                                 
    *  Set this to null to indicate that it is being unmounted.       
    */                                                                
                                                                      
   temp_mt_entry->mt_fs_root.node_access = NULL;                      
   4f7f4:	42a8 001c      	clrl %a0@(28)                               
    * Traverse tree that starts at the mt_fs_root and deallocate memory
    * associated memory space                                         
    */                                                                
                                                                      
   jnode = (IMFS_jnode_t *)temp_mt_entry->mt_fs_root.node_access;     
   loc = temp_mt_entry->mt_fs_root;                                   
   4f7f8:	2d68 0020 fff0 	movel %a0@(32),%fp@(-16)                    
   4f7fe:	2d68 0024 fff4 	movel %a0@(36),%fp@(-12)                    
   4f804:	2d68 0028 fff8 	movel %a0@(40),%fp@(-8)                     
   4f80a:	2d68 002c fffc 	movel %a0@(44),%fp@(-4)                     
    */                                                                
                                                                      
   temp_mt_entry->mt_fs_root.node_access = NULL;                      
                                                                      
   do {                                                               
     next = jnode->Parent;                                            
   4f810:	242a 0008      	movel %a2@(8),%d2                           
     loc.node_access = (void *)jnode;                                 
   4f814:	2d4a ffec      	movel %a2,%fp@(-20)                         
     IMFS_Set_handlers( &loc );                                       
   4f818:	2f0b           	movel %a3,%sp@-                             
   4f81a:	4e94           	jsr %a4@                                    
                                                                      
     if ( jnode->type != IMFS_DIRECTORY ) {                           
   4f81c:	588f           	addql #4,%sp                                
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Tail(                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
   return (Chain_Node *) &the_chain->permanent_null;                  
   4f81e:	200a           	movel %a2,%d0                               
   4f820:	0680 0000 0050 	addil #80,%d0                               
   4f826:	7201           	moveq #1,%d1                                
   4f828:	b2aa 0048      	cmpl %a2@(72),%d1                           
   4f82c:	6634           	bnes 4f862 <IMFS_fsunmount+0x92>            
   4f82e:	b0aa 004c      	cmpl %a2@(76),%d0                           
   4f832:	672e           	beqs 4f862 <IMFS_fsunmount+0x92>            
        result = IMFS_unlink( NULL, &loc );                           
        if (result != 0)                                              
          return -1;                                                  
        jnode = next;                                                 
     }                                                                
     if ( jnode != NULL ) {                                           
   4f834:	4a8a           	tstl %a2                                    
   4f836:	671e           	beqs 4f856 <IMFS_fsunmount+0x86>            
       if ( jnode->type == IMFS_DIRECTORY ) {                         
   4f838:	7001           	moveq #1,%d0                                
   4f83a:	b0aa 0048      	cmpl %a2@(72),%d0                           
   4f83e:	66d0           	bnes 4f810 <IMFS_fsunmount+0x40>            
   4f840:	200a           	movel %a2,%d0                               
   4f842:	0680 0000 0050 	addil #80,%d0                               
   4f848:	b0aa 004c      	cmpl %a2@(76),%d0                           
   4f84c:	67c2           	beqs 4f810 <IMFS_fsunmount+0x40>            
         if ( jnode_has_children( jnode ) )                           
           jnode = jnode_get_first_child( jnode );                    
   4f84e:	246a 004c      	moveal %a2@(76),%a2                         
       }                                                              
     }                                                                
   } while (jnode != NULL);                                           
   4f852:	4a8a           	tstl %a2                                    
   4f854:	66ba           	bnes 4f810 <IMFS_fsunmount+0x40>            
   4f856:	4280           	clrl %d0                                    
                                                                      
   return 0;                                                          
}                                                                     
   4f858:	4cee 3c04 ffd8 	moveml %fp@(-40),%d2/%a2-%a5                
   4f85e:	4e5e           	unlk %fp                                    
   4f860:	4e75           	rts                                         
        result = IMFS_unlink( NULL, &loc );                           
        if (result != 0)                                              
          return -1;                                                  
        jnode = next;                                                 
     } else if ( jnode_has_no_children( jnode ) ) {                   
        result = IMFS_unlink( NULL, &loc );                           
   4f862:	2f0b           	movel %a3,%sp@-                             
   4f864:	42a7           	clrl %sp@-                                  
   4f866:	4e95           	jsr %a5@                                    
        if (result != 0)                                              
   4f868:	508f           	addql #8,%sp                                
   4f86a:	4a80           	tstl %d0                                    
   4f86c:	6604           	bnes 4f872 <IMFS_fsunmount+0xa2>            
   4f86e:	2442           	moveal %d2,%a2                              
   4f870:	60c2           	bras 4f834 <IMFS_fsunmount+0x64>            
       if ( jnode->type == IMFS_DIRECTORY ) {                         
         if ( jnode_has_children( jnode ) )                           
           jnode = jnode_get_first_child( jnode );                    
       }                                                              
     }                                                                
   } while (jnode != NULL);                                           
   4f872:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
   return 0;                                                          
}                                                                     
   4f874:	4cee 3c04 ffd8 	moveml %fp@(-40),%d2/%a2-%a5                <== NOT EXECUTED
   4f87a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
00049fd4 <IMFS_get_token>:                                            
  const char       *path,                                             
  int               pathlen,                                          
  char             *token,                                            
  int              *token_len                                         
)                                                                     
{                                                                     
   49fd4:	4e56 ffec      	linkw %fp,#-20                              
   49fd8:	206e 0008      	moveal %fp@(8),%a0                          
   49fdc:	48d7 1c0c      	moveml %d2-%d3/%a2-%a4,%sp@                 
   49fe0:	226e 000c      	moveal %fp@(12),%a1                         
                                                                      
  /*                                                                  
   *  Copy a name into token.  (Remember NULL is a token.)            
   */                                                                 
  c = path[i];                                                        
  while ( (!IMFS_is_separator(c)) && (i < pathlen) && (i <= IMFS_NAME_MAX) ) {
   49fe4:	742f           	moveq #47,%d2                               
  register char c;                                                    
                                                                      
  /*                                                                  
   *  Copy a name into token.  (Remember NULL is a token.)            
   */                                                                 
  c = path[i];                                                        
   49fe6:	1210           	moveb %a0@,%d1                              
  const char       *path,                                             
  int               pathlen,                                          
  char             *token,                                            
  int              *token_len                                         
)                                                                     
{                                                                     
   49fe8:	246e 0010      	moveal %fp@(16),%a2                         
                                                                      
  /*                                                                  
   *  Copy a name into token.  (Remember NULL is a token.)            
   */                                                                 
  c = path[i];                                                        
  while ( (!IMFS_is_separator(c)) && (i < pathlen) && (i <= IMFS_NAME_MAX) ) {
   49fec:	1001           	moveb %d1,%d0                               
  const char       *path,                                             
  int               pathlen,                                          
  char             *token,                                            
  int              *token_len                                         
)                                                                     
{                                                                     
   49fee:	286e 0014      	moveal %fp@(20),%a4                         
                                                                      
  /*                                                                  
   *  Copy a name into token.  (Remember NULL is a token.)            
   */                                                                 
  c = path[i];                                                        
  while ( (!IMFS_is_separator(c)) && (i < pathlen) && (i <= IMFS_NAME_MAX) ) {
   49ff2:	49c0           	extbl %d0                                   
   49ff4:	b480           	cmpl %d0,%d2                                
   49ff6:	6700 00ac      	beqw 4a0a4 <IMFS_get_token+0xd0>            
   49ffa:	765c           	moveq #92,%d3                               
   49ffc:	b680           	cmpl %d0,%d3                                
   49ffe:	6700 00a4      	beqw 4a0a4 <IMFS_get_token+0xd0>            
   4a002:	4a01           	tstb %d1                                    
   4a004:	6700 00bc      	beqw 4a0c2 <IMFS_get_token+0xee>            
   4a008:	4a89           	tstl %a1                                    
   4a00a:	6f00 0098      	blew 4a0a4 <IMFS_get_token+0xd0>            
                                                                      
     token[i] = c;                                                    
   4a00e:	4280           	clrl %d0                                    
   4a010:	1481           	moveb %d1,%a2@                              
       return IMFS_INVALID_TOKEN;                                     
                                                                      
     if ( !IMFS_is_valid_name_char(c) )                               
       type = IMFS_INVALID_TOKEN;                                     
                                                                      
     c = path [++i];                                                  
   4a012:	5280           	addql #1,%d0                                
                                                                      
  /*                                                                  
   *  Copy a name into token.  (Remember NULL is a token.)            
   */                                                                 
  c = path[i];                                                        
  while ( (!IMFS_is_separator(c)) && (i < pathlen) && (i <= IMFS_NAME_MAX) ) {
   4a014:	762f           	moveq #47,%d3                               
       return IMFS_INVALID_TOKEN;                                     
                                                                      
     if ( !IMFS_is_valid_name_char(c) )                               
       type = IMFS_INVALID_TOKEN;                                     
                                                                      
     c = path [++i];                                                  
   4a016:	1230 0800      	moveb %a0@(00000000,%d0:l),%d1              
                                                                      
  /*                                                                  
   *  Copy a name into token.  (Remember NULL is a token.)            
   */                                                                 
  c = path[i];                                                        
  while ( (!IMFS_is_separator(c)) && (i < pathlen) && (i <= IMFS_NAME_MAX) ) {
   4a01a:	1401           	moveb %d1,%d2                               
   4a01c:	49c2           	extbl %d2                                   
   4a01e:	b682           	cmpl %d2,%d3                                
   4a020:	6726           	beqs 4a048 <IMFS_get_token+0x74>            
   4a022:	163c 005c      	moveb #92,%d3                               
   4a026:	b682           	cmpl %d2,%d3                                
   4a028:	671e           	beqs 4a048 <IMFS_get_token+0x74>            
   4a02a:	4a01           	tstb %d1                                    
   4a02c:	671a           	beqs 4a048 <IMFS_get_token+0x74>            
   4a02e:	b089           	cmpl %a1,%d0                                
   4a030:	6c16           	bges 4a048 <IMFS_get_token+0x74>            
                                                                      
     token[i] = c;                                                    
   4a032:	1581 0800      	moveb %d1,%a2@(00000000,%d0:l)              
                                                                      
     if ( i == IMFS_NAME_MAX )                                        
   4a036:	7220           	moveq #32,%d1                               
   4a038:	b280           	cmpl %d0,%d1                                
   4a03a:	66d6           	bnes 4a012 <IMFS_get_token+0x3e>            
   4a03c:	7004           	moveq #4,%d0                                
    else if ( strcmp( token, "." ) == 0 )                             
      type = IMFS_CURRENT_DIR;                                        
  }                                                                   
                                                                      
  return type;                                                        
}                                                                     
   4a03e:	4cee 1c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a4            
   4a044:	4e5e           	unlk %fp                                    
   4a046:	4e75           	rts                                         
      i++;                                                            
      type = IMFS_CURRENT_DIR;                                        
    } else {                                                          
      type = IMFS_NO_MORE_PATH;                                       
    }                                                                 
  } else if (token[ i-1 ] != '\0') {                                  
   4a048:	4a32 08ff      	tstb %a2@(ffffffff,%d0:l)                   
   4a04c:	6706           	beqs 4a054 <IMFS_get_token+0x80>            
    token[i] = '\0';                                                  
   4a04e:	4201           	clrb %d1                                    
   4a050:	1581 0800      	moveb %d1,%a2@(00000000,%d0:l)              
   *  If we copied something that was not a seperator see if          
   *  it was a special name.                                          
   */                                                                 
                                                                      
  if ( type == IMFS_NAME ) {                                          
    if ( strcmp( token, "..") == 0 )                                  
   4a054:	4879 0005 c908 	pea 5c908 <__FUNCTION__.5390+0x17>          
   4a05a:	47f9 0004 fafc 	lea 4fafc <strcmp>,%a3                      
                                                                      
  /*                                                                  
   *  Set token_len to the number of characters copied.               
   */                                                                 
                                                                      
  *token_len = i;                                                     
   4a060:	2880           	movel %d0,%a4@                              
   *  If we copied something that was not a seperator see if          
   *  it was a special name.                                          
   */                                                                 
                                                                      
  if ( type == IMFS_NAME ) {                                          
    if ( strcmp( token, "..") == 0 )                                  
   4a062:	2f0a           	movel %a2,%sp@-                             
   4a064:	4e93           	jsr %a3@                                    
   4a066:	508f           	addql #8,%sp                                
   4a068:	4a80           	tstl %d0                                    
   4a06a:	671e           	beqs 4a08a <IMFS_get_token+0xb6>            
      type = IMFS_UP_DIR;                                             
    else if ( strcmp( token, "." ) == 0 )                             
   4a06c:	4879 0005 c909 	pea 5c909 <__FUNCTION__.5390+0x18>          
   4a072:	2f0a           	movel %a2,%sp@-                             
   4a074:	4e93           	jsr %a3@                                    
   4a076:	508f           	addql #8,%sp                                
   4a078:	4a80           	tstl %d0                                    
   4a07a:	661c           	bnes 4a098 <IMFS_get_token+0xc4>            
   4a07c:	103c 0001      	moveb #1,%d0                                
      type = IMFS_CURRENT_DIR;                                        
  }                                                                   
                                                                      
  return type;                                                        
}                                                                     
   4a080:	4cee 1c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a4            
   4a086:	4e5e           	unlk %fp                                    
   4a088:	4e75           	rts                                         
   *  If we copied something that was not a seperator see if          
   *  it was a special name.                                          
   */                                                                 
                                                                      
  if ( type == IMFS_NAME ) {                                          
    if ( strcmp( token, "..") == 0 )                                  
   4a08a:	103c 0002      	moveb #2,%d0                                
    else if ( strcmp( token, "." ) == 0 )                             
      type = IMFS_CURRENT_DIR;                                        
  }                                                                   
                                                                      
  return type;                                                        
}                                                                     
   4a08e:	4cee 1c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a4            
   4a094:	4e5e           	unlk %fp                                    
   4a096:	4e75           	rts                                         
   */                                                                 
                                                                      
  if ( type == IMFS_NAME ) {                                          
    if ( strcmp( token, "..") == 0 )                                  
      type = IMFS_UP_DIR;                                             
    else if ( strcmp( token, "." ) == 0 )                             
   4a098:	7003           	moveq #3,%d0                                
      type = IMFS_CURRENT_DIR;                                        
  }                                                                   
                                                                      
  return type;                                                        
}                                                                     
   4a09a:	4cee 1c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a4            
   4a0a0:	4e5e           	unlk %fp                                    
   4a0a2:	4e75           	rts                                         
  /*                                                                  
   *  Copy a seperator into token.                                    
   */                                                                 
                                                                      
  if ( i == 0 ) {                                                     
    token[i] = c;                                                     
   4a0a4:	1481           	moveb %d1,%a2@                              
                                                                      
    if ( (token[i] != '\0') && pathlen ) {                            
   4a0a6:	4a89           	tstl %a1                                    
   4a0a8:	6710           	beqs 4a0ba <IMFS_get_token+0xe6>            
      type = IMFS_CURRENT_DIR;                                        
    } else {                                                          
      type = IMFS_NO_MORE_PATH;                                       
    }                                                                 
  } else if (token[ i-1 ] != '\0') {                                  
    token[i] = '\0';                                                  
   4a0aa:	7001           	moveq #1,%d0                                
   4a0ac:	7201           	moveq #1,%d1                                
                                                                      
  /*                                                                  
   *  Set token_len to the number of characters copied.               
   */                                                                 
                                                                      
  *token_len = i;                                                     
   4a0ae:	2881           	movel %d1,%a4@                              
    else if ( strcmp( token, "." ) == 0 )                             
      type = IMFS_CURRENT_DIR;                                        
  }                                                                   
                                                                      
  return type;                                                        
}                                                                     
   4a0b0:	4cee 1c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a4            
   4a0b6:	4e5e           	unlk %fp                                    
   4a0b8:	4e75           	rts                                         
      i++;                                                            
      type = IMFS_CURRENT_DIR;                                        
    } else {                                                          
      type = IMFS_NO_MORE_PATH;                                       
    }                                                                 
  } else if (token[ i-1 ] != '\0') {                                  
   4a0ba:	4281           	clrl %d1                                    
   4a0bc:	4280           	clrl %d0                                    
                                                                      
  /*                                                                  
   *  Set token_len to the number of characters copied.               
   */                                                                 
                                                                      
  *token_len = i;                                                     
   4a0be:	2881           	movel %d1,%a4@                              
   4a0c0:	60ee           	bras 4a0b0 <IMFS_get_token+0xdc>            
  /*                                                                  
   *  Copy a seperator into token.                                    
   */                                                                 
                                                                      
  if ( i == 0 ) {                                                     
    token[i] = c;                                                     
   4a0c2:	4280           	clrl %d0                                    
   4a0c4:	4281           	clrl %d1                                    
   4a0c6:	4212           	clrb %a2@                                   
   4a0c8:	60e4           	bras 4a0ae <IMFS_get_token+0xda>            
	...                                                                  
                                                                      
0004a0cc <IMFS_initialize_support>:                                   
  int bit_mask;                                                       
                                                                      
  /*                                                                  
   * check, whether requested bytes per block is valid                
   */                                                                 
  for (bit_mask = 16; !is_valid && (bit_mask <= 512); bit_mask <<= 1) {
   4a0cc:	7010           	moveq #16,%d0                               
  rtems_filesystem_mount_table_entry_t        *temp_mt_entry,         
   const rtems_filesystem_operations_table    *op_table,              
   const rtems_filesystem_file_handlers_r     *memfile_handlers,      
   const rtems_filesystem_file_handlers_r     *directory_handlers     
)                                                                     
{                                                                     
   4a0ce:	4e56 fff4      	linkw %fp,#-12                              
  IMFS_jnode_t                          *jnode;                       
                                                                      
  /*                                                                  
   * determine/check value for imfs_memfile_bytes_per_block           
   */                                                                 
  IMFS_determine_bytes_per_block(&imfs_memfile_bytes_per_block,       
   4a0d2:	2079 0005 d718 	moveal 5d718 <imfs_rq_memfile_bytes_per_block>,%a0
  rtems_filesystem_mount_table_entry_t        *temp_mt_entry,         
   const rtems_filesystem_operations_table    *op_table,              
   const rtems_filesystem_file_handlers_r     *memfile_handlers,      
   const rtems_filesystem_file_handlers_r     *directory_handlers     
)                                                                     
{                                                                     
   4a0d8:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
   4a0dc:	246e 0008      	moveal %fp@(8),%a2                          
   4a0e0:	242e 0014      	movel %fp@(20),%d2                          
  int bit_mask;                                                       
                                                                      
  /*                                                                  
   * check, whether requested bytes per block is valid                
   */                                                                 
  for (bit_mask = 16; !is_valid && (bit_mask <= 512); bit_mask <<= 1) {
   4a0e4:	b088           	cmpl %a0,%d0                                
   4a0e6:	6716           	beqs 4a0fe <IMFS_initialize_support+0x32>   
   4a0e8:	4200           	clrb %d0                                    
   4a0ea:	7220           	moveq #32,%d1                               
   4a0ec:	5280           	addql #1,%d0                                
   4a0ee:	b288           	cmpl %a0,%d1                                
   4a0f0:	670c           	beqs 4a0fe <IMFS_initialize_support+0x32>   
   4a0f2:	7605           	moveq #5,%d3                                
   4a0f4:	d281           	addl %d1,%d1                                
   4a0f6:	b680           	cmpl %d0,%d3                                
   4a0f8:	66f2           	bnes 4a0ec <IMFS_initialize_support+0x20>   
   4a0fa:	307c 0080      	moveaw #128,%a0                             <== NOT EXECUTED
    if (bit_mask == requested_bytes_per_block) {                      
      is_valid = true;                                                
    }                                                                 
  }                                                                   
  *dest_bytes_per_block = ((is_valid)                                 
   4a0fe:	23c8 0005 e71c 	movel %a0,5e71c <imfs_memfile_bytes_per_block>
  /*                                                                  
   *  Create the root node                                            
   *                                                                  
   *  NOTE: UNIX root is 755 and owned by root/root (0/0).            
   */                                                                 
  temp_mt_entry->mt_fs_root.node_access      = IMFS_create_root_node();
   4a104:	4eb9 0004 d1f2 	jsr 4d1f2 <IMFS_create_root_node>           
  temp_mt_entry->pathconf_limits_and_options = IMFS_LIMITS_AND_OPTIONS;
                                                                      
  /*                                                                  
   * Create custom file system data.                                  
   */                                                                 
  fs_info = calloc( 1, sizeof( IMFS_fs_info_t ) );                    
   4a10a:	4878 0010      	pea 10 <INVALID_OPERATION>                  
   *  NOTE: UNIX root is 755 and owned by root/root (0/0).            
   */                                                                 
  temp_mt_entry->mt_fs_root.node_access      = IMFS_create_root_node();
  temp_mt_entry->mt_fs_root.handlers         = directory_handlers;    
  temp_mt_entry->mt_fs_root.ops              = op_table;              
  temp_mt_entry->pathconf_limits_and_options = IMFS_LIMITS_AND_OPTIONS;
   4a10e:	41f9 0005 cc86 	lea 5cc86 <IMFS_LIMITS_AND_OPTIONS>,%a0     
                                                                      
  /*                                                                  
   * Create custom file system data.                                  
   */                                                                 
  fs_info = calloc( 1, sizeof( IMFS_fs_info_t ) );                    
   4a114:	4878 0001      	pea 1 <ADD>                                 
   *  NOTE: UNIX root is 755 and owned by root/root (0/0).            
   */                                                                 
  temp_mt_entry->mt_fs_root.node_access      = IMFS_create_root_node();
  temp_mt_entry->mt_fs_root.handlers         = directory_handlers;    
  temp_mt_entry->mt_fs_root.ops              = op_table;              
  temp_mt_entry->pathconf_limits_and_options = IMFS_LIMITS_AND_OPTIONS;
   4a118:	2550 0038      	movel %a0@,%a2@(56)                         
   4a11c:	41f9 0005 cc8a 	lea 5cc8a <IMFS_LIMITS_AND_OPTIONS+0x4>,%a0 
   4a122:	2550 003c      	movel %a0@,%a2@(60)                         
   4a126:	41f9 0005 cc8e 	lea 5cc8e <IMFS_LIMITS_AND_OPTIONS+0x8>,%a0 
   4a12c:	2550 0040      	movel %a0@,%a2@(64)                         
   4a130:	41f9 0005 cc92 	lea 5cc92 <IMFS_LIMITS_AND_OPTIONS+0xc>,%a0 
   4a136:	2550 0044      	movel %a0@,%a2@(68)                         
   4a13a:	41f9 0005 cc96 	lea 5cc96 <IMFS_LIMITS_AND_OPTIONS+0x10>,%a0
   4a140:	2550 0048      	movel %a0@,%a2@(72)                         
   4a144:	41f9 0005 cc9a 	lea 5cc9a <IMFS_LIMITS_AND_OPTIONS+0x14>,%a0
   4a14a:	2550 004c      	movel %a0@,%a2@(76)                         
   4a14e:	41f9 0005 cc9e 	lea 5cc9e <IMFS_LIMITS_AND_OPTIONS+0x18>,%a0
   4a154:	2550 0050      	movel %a0@,%a2@(80)                         
   4a158:	41f9 0005 cca2 	lea 5cca2 <IMFS_LIMITS_AND_OPTIONS+0x1c>,%a0
   4a15e:	2550 0054      	movel %a0@,%a2@(84)                         
   4a162:	41f9 0005 cca6 	lea 5cca6 <IMFS_LIMITS_AND_OPTIONS+0x20>,%a0
   4a168:	2550 0058      	movel %a0@,%a2@(88)                         
   4a16c:	41f9 0005 ccaa 	lea 5ccaa <IMFS_LIMITS_AND_OPTIONS+0x24>,%a0
   4a172:	2550 005c      	movel %a0@,%a2@(92)                         
   4a176:	41f9 0005 ccae 	lea 5ccae <IMFS_LIMITS_AND_OPTIONS+0x28>,%a0
   4a17c:	2550 0060      	movel %a0@,%a2@(96)                         
   4a180:	41f9 0005 ccb2 	lea 5ccb2 <IMFS_LIMITS_AND_OPTIONS+0x2c>,%a0
   *                                                                  
   *  NOTE: UNIX root is 755 and owned by root/root (0/0).            
   */                                                                 
  temp_mt_entry->mt_fs_root.node_access      = IMFS_create_root_node();
  temp_mt_entry->mt_fs_root.handlers         = directory_handlers;    
  temp_mt_entry->mt_fs_root.ops              = op_table;              
   4a186:	256e 000c 0028 	movel %fp@(12),%a2@(40)                     
  temp_mt_entry->pathconf_limits_and_options = IMFS_LIMITS_AND_OPTIONS;
   4a18c:	2550 0064      	movel %a0@,%a2@(100)                        
  /*                                                                  
   *  Create the root node                                            
   *                                                                  
   *  NOTE: UNIX root is 755 and owned by root/root (0/0).            
   */                                                                 
  temp_mt_entry->mt_fs_root.node_access      = IMFS_create_root_node();
   4a190:	2540 001c      	movel %d0,%a2@(28)                          
  temp_mt_entry->mt_fs_root.handlers         = directory_handlers;    
   4a194:	2542 0024      	movel %d2,%a2@(36)                          
  temp_mt_entry->pathconf_limits_and_options = IMFS_LIMITS_AND_OPTIONS;
                                                                      
  /*                                                                  
   * Create custom file system data.                                  
   */                                                                 
  fs_info = calloc( 1, sizeof( IMFS_fs_info_t ) );                    
   4a198:	4eb9 0004 a608 	jsr 4a608 <calloc>                          
  if ( !fs_info ) {                                                   
   4a19e:	508f           	addql #8,%sp                                
  temp_mt_entry->pathconf_limits_and_options = IMFS_LIMITS_AND_OPTIONS;
                                                                      
  /*                                                                  
   * Create custom file system data.                                  
   */                                                                 
  fs_info = calloc( 1, sizeof( IMFS_fs_info_t ) );                    
   4a1a0:	2040           	moveal %d0,%a0                              
  if ( !fs_info ) {                                                   
   4a1a2:	4a80           	tstl %d0                                    
   4a1a4:	6742           	beqs 4a1e8 <IMFS_initialize_support+0x11c>  
  /*                                                                  
   * Set st_ino for the root to 1.                                    
   */                                                                 
                                                                      
  fs_info->instance              = imfs_instance++;                   
  fs_info->ino_count             = 1;                                 
   4a1a6:	7001           	moveq #1,%d0                                
  fs_info->memfile_handlers      = memfile_handlers;                  
  fs_info->directory_handlers    = directory_handlers;                
                                                                      
  jnode = temp_mt_entry->mt_fs_root.node_access;                      
  jnode->st_ino = fs_info->ino_count;                                 
   4a1a8:	7601           	moveq #1,%d3                                
  /*                                                                  
   * Set st_ino for the root to 1.                                    
   */                                                                 
                                                                      
  fs_info->instance              = imfs_instance++;                   
  fs_info->ino_count             = 1;                                 
   4a1aa:	2140 0004      	movel %d0,%a0@(4)                           
                                                                      
  /*                                                                  
   * Set st_ino for the root to 1.                                    
   */                                                                 
                                                                      
  fs_info->instance              = imfs_instance++;                   
   4a1ae:	2039 0005 e720 	movel 5e720 <imfs_instance.5885>,%d0        
   4a1b4:	2200           	movel %d0,%d1                               
   4a1b6:	5281           	addql #1,%d1                                
  fs_info->ino_count             = 1;                                 
  fs_info->memfile_handlers      = memfile_handlers;                  
  fs_info->directory_handlers    = directory_handlers;                
                                                                      
  jnode = temp_mt_entry->mt_fs_root.node_access;                      
  jnode->st_ino = fs_info->ino_count;                                 
   4a1b8:	226a 001c      	moveal %a2@(28),%a1                         
                                                                      
  /*                                                                  
   * Set st_ino for the root to 1.                                    
   */                                                                 
                                                                      
  fs_info->instance              = imfs_instance++;                   
   4a1bc:	23c1 0005 e720 	movel %d1,5e720 <imfs_instance.5885>        
  fs_info->ino_count             = 1;                                 
  fs_info->memfile_handlers      = memfile_handlers;                  
   4a1c2:	216e 0010 0008 	movel %fp@(16),%a0@(8)                      
  fs_info->directory_handlers    = directory_handlers;                
   4a1c8:	2142 000c      	movel %d2,%a0@(12)                          
                                                                      
  jnode = temp_mt_entry->mt_fs_root.node_access;                      
  jnode->st_ino = fs_info->ino_count;                                 
   4a1cc:	2343 0034      	movel %d3,%a1@(52)                          
  fs_info = calloc( 1, sizeof( IMFS_fs_info_t ) );                    
  if ( !fs_info ) {                                                   
    free(temp_mt_entry->mt_fs_root.node_access);                      
    rtems_set_errno_and_return_minus_one(ENOMEM);                     
  }                                                                   
  temp_mt_entry->fs_info = fs_info;                                   
   4a1d0:	2548 0034      	movel %a0,%a2@(52)                          
                                                                      
  /*                                                                  
   * Set st_ino for the root to 1.                                    
   */                                                                 
                                                                      
  fs_info->instance              = imfs_instance++;                   
   4a1d4:	2080           	movel %d0,%a0@                              
                                                                      
  jnode = temp_mt_entry->mt_fs_root.node_access;                      
  jnode->st_ino = fs_info->ino_count;                                 
                                                                      
  /* Initialize POSIX FIFO/pipe module */                             
  rtems_pipe_initialize();                                            
   4a1d6:	4eb9 0004 c70e 	jsr 4c70e <rtems_pipe_initialize>           
                                                                      
  return 0;                                                           
}                                                                     
   4a1dc:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
                                                                      
  jnode = temp_mt_entry->mt_fs_root.node_access;                      
  jnode->st_ino = fs_info->ino_count;                                 
                                                                      
  /* Initialize POSIX FIFO/pipe module */                             
  rtems_pipe_initialize();                                            
   4a1e2:	4280           	clrl %d0                                    
                                                                      
  return 0;                                                           
}                                                                     
   4a1e4:	4e5e           	unlk %fp                                    
   4a1e6:	4e75           	rts                                         
  /*                                                                  
   * Create custom file system data.                                  
   */                                                                 
  fs_info = calloc( 1, sizeof( IMFS_fs_info_t ) );                    
  if ( !fs_info ) {                                                   
    free(temp_mt_entry->mt_fs_root.node_access);                      
   4a1e8:	2f2a 001c      	movel %a2@(28),%sp@-                        <== NOT EXECUTED
   4a1ec:	4eb9 0004 a6f4 	jsr 4a6f4 <free>                            <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one(ENOMEM);                     
   4a1f2:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   4a1f8:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4a1fa:	720c           	moveq #12,%d1                               <== NOT EXECUTED
   4a1fc:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4a1fe:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  /* Initialize POSIX FIFO/pipe module */                             
  rtems_pipe_initialize();                                            
                                                                      
  return 0;                                                           
}                                                                     
   4a200:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   * Create custom file system data.                                  
   */                                                                 
  fs_info = calloc( 1, sizeof( IMFS_fs_info_t ) );                    
  if ( !fs_info ) {                                                   
    free(temp_mt_entry->mt_fs_root.node_access);                      
    rtems_set_errno_and_return_minus_one(ENOMEM);                     
   4a206:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
                                                                      
  /* Initialize POSIX FIFO/pipe module */                             
  rtems_pipe_initialize();                                            
                                                                      
  return 0;                                                           
}                                                                     
   4a208:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004335c <IMFS_link>:                                                 
                                                                      
  /*                                                                  
   *  Verify this node can be linked to.                              
   */                                                                 
  info.hard_link.link_node = to_loc->node_access;                     
  if ( info.hard_link.link_node->st_nlink >= LINK_MAX )               
   4335c:	4280           	clrl %d0                                    
   4335e:	7207           	moveq #7,%d1                                
int IMFS_link(                                                        
  rtems_filesystem_location_info_t  *to_loc,      /* IN */            
  rtems_filesystem_location_info_t  *parent_loc,  /* IN */            
  const char                        *token        /* IN */            
)                                                                     
{                                                                     
   43360:	4e56 ffbc      	linkw %fp,#-68                              
   43364:	206e 0008      	moveal %fp@(8),%a0                          
   43368:	2f03           	movel %d3,%sp@-                             
  int                i;                                               
                                                                      
  /*                                                                  
   *  Verify this node can be linked to.                              
   */                                                                 
  info.hard_link.link_node = to_loc->node_access;                     
   4336a:	2050           	moveal %a0@,%a0                             
int IMFS_link(                                                        
  rtems_filesystem_location_info_t  *to_loc,      /* IN */            
  rtems_filesystem_location_info_t  *parent_loc,  /* IN */            
  const char                        *token        /* IN */            
)                                                                     
{                                                                     
   4336c:	2f02           	movel %d2,%sp@-                             
   4336e:	242e 0010      	movel %fp@(16),%d2                          
  int                i;                                               
                                                                      
  /*                                                                  
   *  Verify this node can be linked to.                              
   */                                                                 
  info.hard_link.link_node = to_loc->node_access;                     
   43372:	2d48 ffe0      	movel %a0,%fp@(-32)                         
  if ( info.hard_link.link_node->st_nlink >= LINK_MAX )               
   43376:	3028 0032      	movew %a0@(50),%d0                          
   4337a:	b280           	cmpl %d0,%d1                                
   4337c:	6578           	bcss 433f6 <IMFS_link+0x9a>                 
    rtems_set_errno_and_return_minus_one( EMLINK );                   
                                                                      
  /*                                                                  
   * Remove any separators at the end of the string.                  
   */                                                                 
  IMFS_get_token( token, strlen( token ), new_name, &i );             
   4337e:	2f02           	movel %d2,%sp@-                             
   43380:	260e           	movel %fp,%d3                               
   43382:	0683 ffff ffbf 	addil #-65,%d3                              
   43388:	4eb9 0005 5734 	jsr 55734 <strlen>                          
   4338e:	588f           	addql #4,%sp                                
   43390:	486e fffc      	pea %fp@(-4)                                
   43394:	2f03           	movel %d3,%sp@-                             
   43396:	2f00           	movel %d0,%sp@-                             
   43398:	2f02           	movel %d2,%sp@-                             
   4339a:	4eb9 0004 f928 	jsr 4f928 <IMFS_get_token>                  
   *        was ONLY passed a NULL when we created the root node.  We 
   *        added a new IMFS_create_root_node() so this path no longer
   *        existed.  The result was simpler code which should not have
   *        this path.                                                
   */                                                                 
  new_node = IMFS_create_node(                                        
   433a0:	486e ffe0      	pea %fp@(-32)                               
   433a4:	2f3c 0000 a1ff 	movel #41471,%sp@-                          
   433aa:	2f03           	movel %d3,%sp@-                             
   433ac:	4878 0003      	pea 3 <DIVIDE>                              
   433b0:	2f2e 000c      	movel %fp@(12),%sp@-                        
   433b4:	4eb9 0004 eaec 	jsr 4eaec <IMFS_create_node>                
    new_name,                                                         
    ( S_IFLNK | ( S_IRWXU | S_IRWXG | S_IRWXO )),                     
    &info                                                             
  );                                                                  
                                                                      
  if ( !new_node )                                                    
   433ba:	4fef 0024      	lea %sp@(36),%sp                            
   433be:	4a80           	tstl %d0                                    
   433c0:	674e           	beqs 43410 <IMFS_link+0xb4>                 
    rtems_set_errno_and_return_minus_one( ENOMEM );                   
                                                                      
  /*                                                                  
   * Increment the link count of the node being pointed to.           
   */                                                                 
  info.hard_link.link_node->st_nlink++;                               
   433c2:	206e ffe0      	moveal %fp@(-32),%a0                        
   433c6:	3028 0032      	movew %a0@(50),%d0                          
   433ca:	5280           	addql #1,%d0                                
   433cc:	3140 0032      	movew %d0,%a0@(50)                          
  IMFS_update_ctime( info.hard_link.link_node );                      
   433d0:	42a7           	clrl %sp@-                                  
   433d2:	486e fff4      	pea %fp@(-12)                               
   433d6:	4eb9 0004 4060 	jsr 44060 <gettimeofday>                    
   433dc:	206e ffe0      	moveal %fp@(-32),%a0                        
                                                                      
  return 0;                                                           
   433e0:	508f           	addql #8,%sp                                
                                                                      
  /*                                                                  
   * Increment the link count of the node being pointed to.           
   */                                                                 
  info.hard_link.link_node->st_nlink++;                               
  IMFS_update_ctime( info.hard_link.link_node );                      
   433e2:	4280           	clrl %d0                                    
   433e4:	216e fff4 0044 	movel %fp@(-12),%a0@(68)                    
                                                                      
  return 0;                                                           
}                                                                     
   433ea:	242e ffb4      	movel %fp@(-76),%d2                         
   433ee:	262e ffb8      	movel %fp@(-72),%d3                         
   433f2:	4e5e           	unlk %fp                                    
   433f4:	4e75           	rts                                         
  /*                                                                  
   *  Verify this node can be linked to.                              
   */                                                                 
  info.hard_link.link_node = to_loc->node_access;                     
  if ( info.hard_link.link_node->st_nlink >= LINK_MAX )               
    rtems_set_errno_and_return_minus_one( EMLINK );                   
   433f6:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         
   433fc:	741f           	moveq #31,%d2                               
   433fe:	2040           	moveal %d0,%a0                              
   43400:	70ff           	moveq #-1,%d0                               
   43402:	2082           	movel %d2,%a0@                              
   */                                                                 
  info.hard_link.link_node->st_nlink++;                               
  IMFS_update_ctime( info.hard_link.link_node );                      
                                                                      
  return 0;                                                           
}                                                                     
   43404:	242e ffb4      	movel %fp@(-76),%d2                         
   43408:	262e ffb8      	movel %fp@(-72),%d3                         
   4340c:	4e5e           	unlk %fp                                    
   4340e:	4e75           	rts                                         
    ( S_IFLNK | ( S_IRWXU | S_IRWXG | S_IRWXO )),                     
    &info                                                             
  );                                                                  
                                                                      
  if ( !new_node )                                                    
    rtems_set_errno_and_return_minus_one( ENOMEM );                   
   43410:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         <== NOT EXECUTED
   */                                                                 
  info.hard_link.link_node->st_nlink++;                               
  IMFS_update_ctime( info.hard_link.link_node );                      
                                                                      
  return 0;                                                           
}                                                                     
   43416:	242e ffb4      	movel %fp@(-76),%d2                         <== NOT EXECUTED
    ( S_IFLNK | ( S_IRWXU | S_IRWXG | S_IRWXO )),                     
    &info                                                             
  );                                                                  
                                                                      
  if ( !new_node )                                                    
    rtems_set_errno_and_return_minus_one( ENOMEM );                   
   4341a:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4341c:	720c           	moveq #12,%d1                               <== NOT EXECUTED
   4341e:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   */                                                                 
  info.hard_link.link_node->st_nlink++;                               
  IMFS_update_ctime( info.hard_link.link_node );                      
                                                                      
  return 0;                                                           
}                                                                     
   43420:	262e ffb8      	movel %fp@(-72),%d3                         <== NOT EXECUTED
   43424:	4e5e           	unlk %fp                                    <== NOT EXECUTED
    ( S_IFLNK | ( S_IRWXU | S_IRWXG | S_IRWXO )),                     
    &info                                                             
  );                                                                  
                                                                      
  if ( !new_node )                                                    
    rtems_set_errno_and_return_minus_one( ENOMEM );                   
   43426:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
   */                                                                 
  info.hard_link.link_node->st_nlink++;                               
  IMFS_update_ctime( info.hard_link.link_node );                      
                                                                      
  return 0;                                                           
}                                                                     
	...                                                                  
                                                                      
00052504 <IMFS_memfile_addblock>:                                     
                                                                      
MEMFILE_STATIC int IMFS_memfile_addblock(                             
   IMFS_jnode_t  *the_jnode,                                          
   unsigned int   block                                               
)                                                                     
{                                                                     
   52504:	4e56 0000      	linkw %fp,#0                                
   52508:	206e 0008      	moveal %fp@(8),%a0                          
   5250c:	2f0a           	movel %a2,%sp@-                             
  block_p  memory;                                                    
  block_p *block_entry_ptr;                                           
                                                                      
  assert( the_jnode );                                                
   5250e:	4a88           	tstl %a0                                    
   52510:	6764           	beqs 52576 <IMFS_memfile_addblock+0x72>     
  if ( !the_jnode )                                                   
    rtems_set_errno_and_return_minus_one( EIO );                      
                                                                      
  assert( the_jnode->type == IMFS_MEMORY_FILE );                      
   52512:	7005           	moveq #5,%d0                                
   52514:	b0a8 0048      	cmpl %a0@(72),%d0                           
   52518:	6640           	bnes 5255a <IMFS_memfile_addblock+0x56>     
  if ( the_jnode->type != IMFS_MEMORY_FILE )                          
    rtems_set_errno_and_return_minus_one( EIO );                      
                                                                      
  block_entry_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 1 );
   5251a:	4878 0001      	pea 1 <ADD>                                 
   5251e:	2f2e 000c      	movel %fp@(12),%sp@-                        
   52522:	2f08           	movel %a0,%sp@-                             
   52524:	4eb9 0005 2020 	jsr 52020 <IMFS_memfile_get_block_pointer>  
  if ( *block_entry_ptr )                                             
   5252a:	4fef 000c      	lea %sp@(12),%sp                            
                                                                      
  assert( the_jnode->type == IMFS_MEMORY_FILE );                      
  if ( the_jnode->type != IMFS_MEMORY_FILE )                          
    rtems_set_errno_and_return_minus_one( EIO );                      
                                                                      
  block_entry_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 1 );
   5252e:	2440           	moveal %d0,%a2                              
  if ( *block_entry_ptr )                                             
   52530:	4a92           	tstl %a2@                                   
   52532:	670a           	beqs 5253e <IMFS_memfile_addblock+0x3a>     
#endif                                                                
                                                                      
  memory = memfile_alloc_block();                                     
  if ( !memory )                                                      
    return 1;                                                         
  *block_entry_ptr = memory;                                          
   52534:	4280           	clrl %d0                                    
                                                                      
  return 0;                                                           
}                                                                     
   52536:	246e fffc      	moveal %fp@(-4),%a2                         
   5253a:	4e5e           	unlk %fp                                    
   5253c:	4e75           	rts                                         
#if 0                                                                 
  fprintf(stdout, "%d %p", block, block_entry_ptr );                  
    fflush(stdout);                                                   
#endif                                                                
                                                                      
  memory = memfile_alloc_block();                                     
   5253e:	4eb9 0005 1ffc 	jsr 51ffc <memfile_alloc_block>             
  if ( !memory )                                                      
   52544:	4a80           	tstl %d0                                    
   52546:	6706           	beqs 5254e <IMFS_memfile_addblock+0x4a>     
    return 1;                                                         
  *block_entry_ptr = memory;                                          
   52548:	2480           	movel %d0,%a2@                              
   5254a:	4280           	clrl %d0                                    
   5254c:	60e8           	bras 52536 <IMFS_memfile_addblock+0x32>     
                                                                      
  return 0;                                                           
}                                                                     
   5254e:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
  fprintf(stdout, "%d %p", block, block_entry_ptr );                  
    fflush(stdout);                                                   
#endif                                                                
                                                                      
  memory = memfile_alloc_block();                                     
  if ( !memory )                                                      
   52552:	103c 0001      	moveb #1,%d0                                <== NOT EXECUTED
    return 1;                                                         
  *block_entry_ptr = memory;                                          
                                                                      
  return 0;                                                           
}                                                                     
   52556:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   52558:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  assert( the_jnode );                                                
  if ( !the_jnode )                                                   
    rtems_set_errno_and_return_minus_one( EIO );                      
                                                                      
  assert( the_jnode->type == IMFS_MEMORY_FILE );                      
   5255a:	4879 0006 2be0 	pea 62be0 <CSWTCH.8+0x60>                   <== NOT EXECUTED
   52560:	4879 0006 2cf9 	pea 62cf9 <__FUNCTION__.6024>               <== NOT EXECUTED
   52566:	4878 016d      	pea 16d <DBL_MANT_DIG+0x138>                <== NOT EXECUTED
   5256a:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   52570:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
)                                                                     
{                                                                     
  block_p  memory;                                                    
  block_p *block_entry_ptr;                                           
                                                                      
  assert( the_jnode );                                                
   52576:	4879 0006 2b90 	pea 62b90 <CSWTCH.8+0x10>                   <== NOT EXECUTED
   5257c:	4879 0006 2cf9 	pea 62cf9 <__FUNCTION__.6024>               <== NOT EXECUTED
   52582:	4878 0169      	pea 169 <DBL_MANT_DIG+0x134>                <== NOT EXECUTED
   52586:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   5258c:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
                                                                      
00052592 <IMFS_memfile_extend>:                                       
                                                                      
MEMFILE_STATIC int IMFS_memfile_extend(                               
   IMFS_jnode_t  *the_jnode,                                          
   off_t          new_length                                          
)                                                                     
{                                                                     
   52592:	4e56 ffdc      	linkw %fp,#-36                              
   52596:	48d7 3c7c      	moveml %d2-%d6/%a2-%a5,%sp@                 
   5259a:	246e 0008      	moveal %fp@(8),%a2                          
   5259e:	262e 000c      	movel %fp@(12),%d3                          
   525a2:	282e 0010      	movel %fp@(16),%d4                          
                                                                      
  /*                                                                  
   *  Perform internal consistency checks                             
   */                                                                 
                                                                      
  assert( the_jnode );                                                
   525a6:	4a8a           	tstl %a2                                    
   525a8:	6700 0102      	beqw 526ac <IMFS_memfile_extend+0x11a>      
  if ( !the_jnode )                                                   
    rtems_set_errno_and_return_minus_one( EIO );                      
                                                                      
  assert( the_jnode->type == IMFS_MEMORY_FILE );                      
   525ac:	7005           	moveq #5,%d0                                
   525ae:	b0aa 0048      	cmpl %a2@(72),%d0                           
   525b2:	6600 0114      	bnew 526c8 <IMFS_memfile_extend+0x136>      
  if ( the_jnode->type != IMFS_MEMORY_FILE )                          
    rtems_set_errno_and_return_minus_one( EIO );                      
                                                                      
  if ( new_length >= IMFS_MEMFILE_MAXIMUM_SIZE )                      
   525b6:	2439 0006 4654 	movel 64654 <imfs_memfile_bytes_per_block>,%d2
   525bc:	2202           	movel %d2,%d1                               
   525be:	e489           	lsrl #2,%d1                                 
   525c0:	2001           	movel %d1,%d0                               
   525c2:	5280           	addql #1,%d0                                
   525c4:	4c01 0800      	mulsl %d1,%d0                               
   525c8:	4285           	clrl %d5                                    
   525ca:	5280           	addql #1,%d0                                
   525cc:	4c01 0800      	mulsl %d1,%d0                               
   525d0:	5380           	subql #1,%d0                                
   525d2:	4c02 0800      	mulsl %d2,%d0                               
   525d6:	2c00           	movel %d0,%d6                               
   525d8:	2005           	movel %d5,%d0                               
   525da:	2206           	movel %d6,%d1                               
   525dc:	9284           	subl %d4,%d1                                
   525de:	9183           	subxl %d3,%d0                               
   525e0:	6f00 00b2      	blew 52694 <IMFS_memfile_extend+0x102>      
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  if ( new_length <= the_jnode->info.file.size )                      
   525e4:	2a2a 004c      	movel %a2@(76),%d5                          
   525e8:	2c2a 0050      	movel %a2@(80),%d6                          
   525ec:	2003           	movel %d3,%d0                               
   525ee:	2204           	movel %d4,%d1                               
   525f0:	9286           	subl %d6,%d1                                
   525f2:	9185           	subxl %d5,%d0                               
   525f4:	6f62           	bles 52658 <IMFS_memfile_extend+0xc6>       
                                                                      
  /*                                                                  
   *  Calculate the number of range of blocks to allocate             
   */                                                                 
                                                                      
  new_blocks = new_length / IMFS_MEMFILE_BYTES_PER_BLOCK;             
   525f6:	47f9 0005 ff8c 	lea 5ff8c <__divdi3>,%a3                    
   525fc:	2202           	movel %d2,%d1                               
   525fe:	5bc0           	smi %d0                                     
   52600:	49c0           	extbl %d0                                   
   52602:	2840           	moveal %d0,%a4                              
   52604:	2a41           	moveal %d1,%a5                              
   52606:	2f0d           	movel %a5,%sp@-                             
   52608:	2f00           	movel %d0,%sp@-                             
   5260a:	2f04           	movel %d4,%sp@-                             
   5260c:	2f03           	movel %d3,%sp@-                             
   5260e:	4e93           	jsr %a3@                                    
   52610:	4fef 0010      	lea %sp@(16),%sp                            
   52614:	2401           	movel %d1,%d2                               
  old_blocks = the_jnode->info.file.size / IMFS_MEMFILE_BYTES_PER_BLOCK;
   52616:	2f0d           	movel %a5,%sp@-                             
   52618:	2f0c           	movel %a4,%sp@-                             
   5261a:	2f06           	movel %d6,%sp@-                             
   5261c:	2f05           	movel %d5,%sp@-                             
   5261e:	4e93           	jsr %a3@                                    
   52620:	4fef 0010      	lea %sp@(16),%sp                            
   52624:	2841           	moveal %d1,%a4                              
                                                                      
  /*                                                                  
   *  Now allocate each of those blocks.                              
   */                                                                 
                                                                      
  for ( block=old_blocks ; block<=new_blocks ; block++ ) {            
   52626:	b282           	cmpl %d2,%d1                                
   52628:	621a           	bhis 52644 <IMFS_memfile_extend+0xb2>       
   5262a:	2a01           	movel %d1,%d5                               
   5262c:	47f9 0005 2504 	lea 52504 <IMFS_memfile_addblock>,%a3       
    if ( IMFS_memfile_addblock( the_jnode, block ) ) {                
   52632:	2f05           	movel %d5,%sp@-                             
   52634:	2f0a           	movel %a2,%sp@-                             
   52636:	4e93           	jsr %a3@                                    
   52638:	508f           	addql #8,%sp                                
   5263a:	4a80           	tstl %d0                                    
   5263c:	6626           	bnes 52664 <IMFS_memfile_extend+0xd2>       
                                                                      
  /*                                                                  
   *  Now allocate each of those blocks.                              
   */                                                                 
                                                                      
  for ( block=old_blocks ; block<=new_blocks ; block++ ) {            
   5263e:	5285           	addql #1,%d5                                
   52640:	ba82           	cmpl %d2,%d5                                
   52642:	63ee           	blss 52632 <IMFS_memfile_extend+0xa0>       
                                                                      
  /*                                                                  
   *  Set the new length of the file.                                 
   */                                                                 
                                                                      
  the_jnode->info.file.size = new_length;                             
   52644:	4280           	clrl %d0                                    
   52646:	2543 004c      	movel %d3,%a2@(76)                          
   5264a:	2544 0050      	movel %d4,%a2@(80)                          
  return 0;                                                           
}                                                                     
   5264e:	4cee 3c7c ffdc 	moveml %fp@(-36),%d2-%d6/%a2-%a5            
   52654:	4e5e           	unlk %fp                                    
   52656:	4e75           	rts                                         
    rtems_set_errno_and_return_minus_one( EIO );                      
                                                                      
  if ( new_length >= IMFS_MEMFILE_MAXIMUM_SIZE )                      
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  if ( new_length <= the_jnode->info.file.size )                      
   52658:	4280           	clrl %d0                                    
   *  Set the new length of the file.                                 
   */                                                                 
                                                                      
  the_jnode->info.file.size = new_length;                             
  return 0;                                                           
}                                                                     
   5265a:	4cee 3c7c ffdc 	moveml %fp@(-36),%d2-%d6/%a2-%a5            
   52660:	4e5e           	unlk %fp                                    
   52662:	4e75           	rts                                         
   *  Now allocate each of those blocks.                              
   */                                                                 
                                                                      
  for ( block=old_blocks ; block<=new_blocks ; block++ ) {            
    if ( IMFS_memfile_addblock( the_jnode, block ) ) {                
       for ( ; block>=old_blocks ; block-- ) {                        
   52664:	ba8c           	cmpl %a4,%d5                                <== NOT EXECUTED
   52666:	6514           	bcss 5267c <IMFS_memfile_extend+0xea>       <== NOT EXECUTED
   52668:	47f9 0005 2284 	lea 52284 <IMFS_memfile_remove_block>,%a3   <== NOT EXECUTED
          IMFS_memfile_remove_block( the_jnode, block );              
   5266e:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   *  Now allocate each of those blocks.                              
   */                                                                 
                                                                      
  for ( block=old_blocks ; block<=new_blocks ; block++ ) {            
    if ( IMFS_memfile_addblock( the_jnode, block ) ) {                
       for ( ; block>=old_blocks ; block-- ) {                        
   52670:	5385           	subql #1,%d5                                <== NOT EXECUTED
          IMFS_memfile_remove_block( the_jnode, block );              
   52672:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   52674:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   *  Now allocate each of those blocks.                              
   */                                                                 
                                                                      
  for ( block=old_blocks ; block<=new_blocks ; block++ ) {            
    if ( IMFS_memfile_addblock( the_jnode, block ) ) {                
       for ( ; block>=old_blocks ; block-- ) {                        
   52676:	508f           	addql #8,%sp                                <== NOT EXECUTED
   52678:	ba8c           	cmpl %a4,%d5                                <== NOT EXECUTED
   5267a:	64f2           	bccs 5266e <IMFS_memfile_extend+0xdc>       <== NOT EXECUTED
          IMFS_memfile_remove_block( the_jnode, block );              
       }                                                              
       rtems_set_errno_and_return_minus_one( ENOSPC );                
   5267c:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         <== NOT EXECUTED
   52682:	721c           	moveq #28,%d1                               <== NOT EXECUTED
   52684:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   52686:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   *  Set the new length of the file.                                 
   */                                                                 
                                                                      
  the_jnode->info.file.size = new_length;                             
  return 0;                                                           
}                                                                     
   52688:	4cee 3c7c ffdc 	moveml %fp@(-36),%d2-%d6/%a2-%a5            <== NOT EXECUTED
  for ( block=old_blocks ; block<=new_blocks ; block++ ) {            
    if ( IMFS_memfile_addblock( the_jnode, block ) ) {                
       for ( ; block>=old_blocks ; block-- ) {                        
          IMFS_memfile_remove_block( the_jnode, block );              
       }                                                              
       rtems_set_errno_and_return_minus_one( ENOSPC );                
   5268e:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
   *  Set the new length of the file.                                 
   */                                                                 
                                                                      
  the_jnode->info.file.size = new_length;                             
  return 0;                                                           
}                                                                     
   52690:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   52692:	4e75           	rts                                         <== NOT EXECUTED
  assert( the_jnode->type == IMFS_MEMORY_FILE );                      
  if ( the_jnode->type != IMFS_MEMORY_FILE )                          
    rtems_set_errno_and_return_minus_one( EIO );                      
                                                                      
  if ( new_length >= IMFS_MEMFILE_MAXIMUM_SIZE )                      
    rtems_set_errno_and_return_minus_one( EINVAL );                   
   52694:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         <== NOT EXECUTED
   5269a:	7416           	moveq #22,%d2                               <== NOT EXECUTED
   5269c:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   5269e:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   526a0:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
   *  Set the new length of the file.                                 
   */                                                                 
                                                                      
  the_jnode->info.file.size = new_length;                             
  return 0;                                                           
}                                                                     
   526a2:	4cee 3c7c ffdc 	moveml %fp@(-36),%d2-%d6/%a2-%a5            <== NOT EXECUTED
   526a8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   526aa:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Perform internal consistency checks                             
   */                                                                 
                                                                      
  assert( the_jnode );                                                
   526ac:	4879 0006 2b90 	pea 62b90 <CSWTCH.8+0x10>                   <== NOT EXECUTED
   526b2:	4879 0006 2d0f 	pea 62d0f <__FUNCTION__.5975>               <== NOT EXECUTED
   526b8:	4878 0131      	pea 131 <DBL_MANT_DIG+0xfc>                 <== NOT EXECUTED
   526bc:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   526c2:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
  if ( !the_jnode )                                                   
    rtems_set_errno_and_return_minus_one( EIO );                      
                                                                      
  assert( the_jnode->type == IMFS_MEMORY_FILE );                      
   526c8:	4879 0006 2be0 	pea 62be0 <CSWTCH.8+0x60>                   <== NOT EXECUTED
   526ce:	4879 0006 2d0f 	pea 62d0f <__FUNCTION__.5975>               <== NOT EXECUTED
   526d4:	4878 0135      	pea 135 <DBL_MANT_DIG+0x100>                <== NOT EXECUTED
   526d8:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   526de:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
                                                                      
00052020 <IMFS_memfile_get_block_pointer>:                            
#endif                                                                
   IMFS_jnode_t   *the_jnode,                                         
   unsigned int    block,                                             
   int             malloc_it                                          
)                                                                     
{                                                                     
   52020:	4e56 fff0      	linkw %fp,#-16                              
   52024:	48d7 041c      	moveml %d2-%d4/%a2,%sp@                     
   52028:	246e 0008      	moveal %fp@(8),%a2                          
   5202c:	242e 000c      	movel %fp@(12),%d2                          
                                                                      
  /*                                                                  
   *  Perform internal consistency checks                             
   */                                                                 
                                                                      
  assert( the_jnode );                                                
   52030:	4a8a           	tstl %a2                                    
   52032:	6700 01b2      	beqw 521e6 <IMFS_memfile_get_block_pointer+0x1c6>
  if ( !the_jnode )                                                   
    return NULL;                                                      
                                                                      
  assert( the_jnode->type == IMFS_MEMORY_FILE );                      
   52036:	7005           	moveq #5,%d0                                
   52038:	b0aa 0048      	cmpl %a2@(72),%d0                           
   5203c:	6600 01c4      	bnew 52202 <IMFS_memfile_get_block_pointer+0x1e2>
                                                                      
  /*                                                                  
   *  Is the block number in the simple indirect portion?             
   */                                                                 
                                                                      
  if ( my_block <= LAST_INDIRECT ) {                                  
   52040:	2239 0006 4654 	movel 64654 <imfs_memfile_bytes_per_block>,%d1
   52046:	e489           	lsrl #2,%d1                                 
   52048:	2001           	movel %d1,%d0                               
   5204a:	5380           	subql #1,%d0                                
   5204c:	b082           	cmpl %d2,%d0                                
   5204e:	6446           	bccs 52096 <IMFS_memfile_get_block_pointer+0x76>
                                                                      
  /*                                                                  
   *  Is the block number in the doubly indirect portion?             
   */                                                                 
                                                                      
  if ( my_block <= LAST_DOUBLY_INDIRECT ) {                           
   52050:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   52052:	5280           	addql #1,%d0                                <== NOT EXECUTED
   52054:	4c01 0800      	mulsl %d1,%d0                               <== NOT EXECUTED
   52058:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   5205a:	5388           	subql #1,%a0                                <== NOT EXECUTED
   5205c:	b1c2           	cmpal %d2,%a0                               <== NOT EXECUTED
   5205e:	6500 00c2      	bcsw 52122 <IMFS_memfile_get_block_pointer+0x102><== NOT EXECUTED
#if 0                                                                 
fprintf(stdout, "(d %d) ", block );                                   
fflush(stdout);                                                       
#endif                                                                
                                                                      
    my_block -= FIRST_DOUBLY_INDIRECT;                                
   52062:	9481           	subl %d1,%d2                                <== NOT EXECUTED
                                                                      
    singly = my_block % IMFS_MEMFILE_BLOCK_SLOTS;                     
    doubly = my_block / IMFS_MEMFILE_BLOCK_SLOTS;                     
                                                                      
    p = info->doubly_indirect;                                        
   52064:	206a 0058      	moveal %a2@(88),%a0                         <== NOT EXECUTED
fflush(stdout);                                                       
#endif                                                                
                                                                      
    my_block -= FIRST_DOUBLY_INDIRECT;                                
                                                                      
    singly = my_block % IMFS_MEMFILE_BLOCK_SLOTS;                     
   52068:	4c41 2003      	remul %d1,%d3,%d2                           <== NOT EXECUTED
   5206c:	4c41 2002      	remul %d1,%d2,%d2                           <== NOT EXECUTED
    doubly = my_block / IMFS_MEMFILE_BLOCK_SLOTS;                     
                                                                      
    p = info->doubly_indirect;                                        
    if ( malloc_it ) {                                                
   52070:	4aae 0010      	tstl %fp@(16)                               <== NOT EXECUTED
   52074:	6700 0086      	beqw 520fc <IMFS_memfile_get_block_pointer+0xdc><== NOT EXECUTED
                                                                      
      if ( !p ) {                                                     
   52078:	4a88           	tstl %a0                                    <== NOT EXECUTED
   5207a:	6750           	beqs 520cc <IMFS_memfile_get_block_pointer+0xac><== NOT EXECUTED
        if ( !p )                                                     
           return 0;                                                  
        info->doubly_indirect = p;                                    
      }                                                               
                                                                      
      p1 = (block_p *)p[ doubly ];                                    
   5207c:	45f0 2c00      	lea %a0@(00000000,%d2:l:4),%a2              <== NOT EXECUTED
   52080:	2052           	moveal %a2@,%a0                             <== NOT EXECUTED
      if ( !p1 ) {                                                    
   52082:	4a88           	tstl %a0                                    <== NOT EXECUTED
   52084:	6760           	beqs 520e6 <IMFS_memfile_get_block_pointer+0xc6><== NOT EXECUTED
#if 0                                                                 
fprintf(stdout, "(d %d %d %d %d %p %p) ", block, my_block, doubly,    
                                       singly, p, &p[singly] );       
fflush(stdout);                                                       
#endif                                                                
    return (block_p *)&p[ singly ];                                   
   52086:	41f0 3c00      	lea %a0@(00000000,%d3:l:4),%a0              <== NOT EXECUTED
   5208a:	2008           	movel %a0,%d0                               <== NOT EXECUTED
  /*                                                                  
   *  This means the requested block number is out of range.          
   */                                                                 
                                                                      
  return 0;                                                           
}                                                                     
   5208c:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                <== NOT EXECUTED
   52092:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   52094:	4e75           	rts                                         <== NOT EXECUTED
  if ( my_block <= LAST_INDIRECT ) {                                  
#if 0                                                                 
fprintf(stdout, "(s %d) ", block );                                   
fflush(stdout);                                                       
#endif                                                                
    p = info->indirect;                                               
   52096:	206a 0054      	moveal %a2@(84),%a0                         
                                                                      
    if ( malloc_it ) {                                                
   5209a:	4aae 0010      	tstl %fp@(16)                               
   5209e:	6776           	beqs 52116 <IMFS_memfile_get_block_pointer+0xf6>
                                                                      
      if ( !p ) {                                                     
   520a0:	4a88           	tstl %a0                                    
   520a2:	6710           	beqs 520b4 <IMFS_memfile_get_block_pointer+0x94>
    }                                                                 
                                                                      
    if ( !p )                                                         
      return 0;                                                       
                                                                      
    return &info->indirect[ my_block ];                               
   520a4:	41f0 2c00      	lea %a0@(00000000,%d2:l:4),%a0              
   520a8:	2008           	movel %a0,%d0                               
  /*                                                                  
   *  This means the requested block number is out of range.          
   */                                                                 
                                                                      
  return 0;                                                           
}                                                                     
   520aa:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                
   520b0:	4e5e           	unlk %fp                                    
   520b2:	4e75           	rts                                         
    p = info->indirect;                                               
                                                                      
    if ( malloc_it ) {                                                
                                                                      
      if ( !p ) {                                                     
        p = memfile_alloc_block();                                    
   520b4:	4eb9 0005 1ffc 	jsr 51ffc <memfile_alloc_block>             
   520ba:	2040           	moveal %d0,%a0                              
        if ( !p )                                                     
   520bc:	4a80           	tstl %d0                                    
   520be:	674a           	beqs 5210a <IMFS_memfile_get_block_pointer+0xea>
           return 0;                                                  
        info->indirect = p;                                           
   520c0:	2540 0054      	movel %d0,%a2@(84)                          
    }                                                                 
                                                                      
    if ( !p )                                                         
      return 0;                                                       
                                                                      
    return &info->indirect[ my_block ];                               
   520c4:	41f0 2c00      	lea %a0@(00000000,%d2:l:4),%a0              
   520c8:	2008           	movel %a0,%d0                               
   520ca:	60de           	bras 520aa <IMFS_memfile_get_block_pointer+0x8a>
                                                                      
    p = info->doubly_indirect;                                        
    if ( malloc_it ) {                                                
                                                                      
      if ( !p ) {                                                     
        p = memfile_alloc_block();                                    
   520cc:	4eb9 0005 1ffc 	jsr 51ffc <memfile_alloc_block>             <== NOT EXECUTED
   520d2:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
        if ( !p )                                                     
   520d4:	4a80           	tstl %d0                                    <== NOT EXECUTED
   520d6:	6732           	beqs 5210a <IMFS_memfile_get_block_pointer+0xea><== NOT EXECUTED
           return 0;                                                  
        info->doubly_indirect = p;                                    
   520d8:	2540 0058      	movel %d0,%a2@(88)                          <== NOT EXECUTED
      }                                                               
                                                                      
      p1 = (block_p *)p[ doubly ];                                    
   520dc:	45f0 2c00      	lea %a0@(00000000,%d2:l:4),%a2              <== NOT EXECUTED
   520e0:	2052           	moveal %a2@,%a0                             <== NOT EXECUTED
      if ( !p1 ) {                                                    
   520e2:	4a88           	tstl %a0                                    <== NOT EXECUTED
   520e4:	66a0           	bnes 52086 <IMFS_memfile_get_block_pointer+0x66><== NOT EXECUTED
        p1 = memfile_alloc_block();                                   
   520e6:	4eb9 0005 1ffc 	jsr 51ffc <memfile_alloc_block>             <== NOT EXECUTED
   520ec:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
        if ( !p1 )                                                    
   520ee:	4a80           	tstl %d0                                    <== NOT EXECUTED
   520f0:	6718           	beqs 5210a <IMFS_memfile_get_block_pointer+0xea><== NOT EXECUTED
           return 0;                                                  
        p[ doubly ] = (block_p) p1;                                   
   520f2:	2480           	movel %d0,%a2@                              <== NOT EXECUTED
#if 0                                                                 
fprintf(stdout, "(d %d %d %d %d %p %p) ", block, my_block, doubly,    
                                       singly, p, &p[singly] );       
fflush(stdout);                                                       
#endif                                                                
    return (block_p *)&p[ singly ];                                   
   520f4:	41f0 3c00      	lea %a0@(00000000,%d3:l:4),%a0              <== NOT EXECUTED
   520f8:	2008           	movel %a0,%d0                               <== NOT EXECUTED
   520fa:	6090           	bras 5208c <IMFS_memfile_get_block_pointer+0x6c><== NOT EXECUTED
      }                                                               
                                                                      
      return (block_p *)&p1[ singly ];                                
    }                                                                 
                                                                      
    if ( !p )                                                         
   520fc:	4a88           	tstl %a0                                    <== NOT EXECUTED
   520fe:	670a           	beqs 5210a <IMFS_memfile_get_block_pointer+0xea><== NOT EXECUTED
      return 0;                                                       
                                                                      
    p = (block_p *)p[ doubly ];                                       
   52100:	2070 2c00      	moveal %a0@(00000000,%d2:l:4),%a0           <== NOT EXECUTED
    if ( !p )                                                         
   52104:	4a88           	tstl %a0                                    <== NOT EXECUTED
   52106:	6600 ff7e      	bnew 52086 <IMFS_memfile_get_block_pointer+0x66><== NOT EXECUTED
                                                                      
    p2 = (block_p *)p1[ doubly ];                                     
    if ( !p )                                                         
      return 0;                                                       
                                                                      
    return (block_p *)&p2[ singly ];                                  
   5210a:	4280           	clrl %d0                                    <== NOT EXECUTED
  /*                                                                  
   *  This means the requested block number is out of range.          
   */                                                                 
                                                                      
  return 0;                                                           
}                                                                     
   5210c:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                <== NOT EXECUTED
   52112:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   52114:	4e75           	rts                                         <== NOT EXECUTED
        info->indirect = p;                                           
      }                                                               
      return &info->indirect[ my_block ];                             
    }                                                                 
                                                                      
    if ( !p )                                                         
   52116:	4a88           	tstl %a0                                    
   52118:	67f0           	beqs 5210a <IMFS_memfile_get_block_pointer+0xea>
      return 0;                                                       
                                                                      
    return &info->indirect[ my_block ];                               
   5211a:	41f0 2c00      	lea %a0@(00000000,%d2:l:4),%a0              
   5211e:	2008           	movel %a0,%d0                               
   52120:	6088           	bras 520aa <IMFS_memfile_get_block_pointer+0x8a>
#endif                                                                
  /*                                                                  
   *  Is the block number in the triply indirect portion?             
   */                                                                 
                                                                      
  if ( my_block <= LAST_TRIPLY_INDIRECT ) {                           
   52122:	2600           	movel %d0,%d3                               <== NOT EXECUTED
   52124:	5283           	addql #1,%d3                                <== NOT EXECUTED
   52126:	4c01 3800      	mulsl %d1,%d3                               <== NOT EXECUTED
   5212a:	5383           	subql #1,%d3                                <== NOT EXECUTED
   5212c:	b682           	cmpl %d2,%d3                                <== NOT EXECUTED
   5212e:	65da           	bcss 5210a <IMFS_memfile_get_block_pointer+0xea><== NOT EXECUTED
    my_block -= FIRST_TRIPLY_INDIRECT;                                
   52130:	9480           	subl %d0,%d2                                <== NOT EXECUTED
                                                                      
    singly = my_block % IMFS_MEMFILE_BLOCK_SLOTS;                     
   52132:	4c41 2004      	remul %d1,%d4,%d2                           <== NOT EXECUTED
   52136:	4c41 2002      	remul %d1,%d2,%d2                           <== NOT EXECUTED
    doubly = my_block / IMFS_MEMFILE_BLOCK_SLOTS;                     
    triply = doubly / IMFS_MEMFILE_BLOCK_SLOTS;                       
    doubly %= IMFS_MEMFILE_BLOCK_SLOTS;                               
                                                                      
    p = info->triply_indirect;                                        
   5213a:	206a 005c      	moveal %a2@(92),%a0                         <== NOT EXECUTED
  if ( my_block <= LAST_TRIPLY_INDIRECT ) {                           
    my_block -= FIRST_TRIPLY_INDIRECT;                                
                                                                      
    singly = my_block % IMFS_MEMFILE_BLOCK_SLOTS;                     
    doubly = my_block / IMFS_MEMFILE_BLOCK_SLOTS;                     
    triply = doubly / IMFS_MEMFILE_BLOCK_SLOTS;                       
   5213e:	4c41 2003      	remul %d1,%d3,%d2                           <== NOT EXECUTED
   52142:	4c41 2002      	remul %d1,%d2,%d2                           <== NOT EXECUTED
    doubly %= IMFS_MEMFILE_BLOCK_SLOTS;                               
                                                                      
    p = info->triply_indirect;                                        
                                                                      
    if ( malloc_it ) {                                                
   52146:	4aae 0010      	tstl %fp@(16)                               <== NOT EXECUTED
   5214a:	6778           	beqs 521c4 <IMFS_memfile_get_block_pointer+0x1a4><== NOT EXECUTED
      if ( !p ) {                                                     
   5214c:	4a88           	tstl %a0                                    <== NOT EXECUTED
   5214e:	6756           	beqs 521a6 <IMFS_memfile_get_block_pointer+0x186><== NOT EXECUTED
        if ( !p )                                                     
           return 0;                                                  
        info->triply_indirect = p;                                    
      }                                                               
                                                                      
      p1 = (block_p *) p[ triply ];                                   
   52150:	45f0 2c00      	lea %a0@(00000000,%d2:l:4),%a2              <== NOT EXECUTED
   52154:	2052           	moveal %a2@,%a0                             <== NOT EXECUTED
      if ( !p1 ) {                                                    
   52156:	4a88           	tstl %a0                                    <== NOT EXECUTED
   52158:	6730           	beqs 5218a <IMFS_memfile_get_block_pointer+0x16a><== NOT EXECUTED
        if ( !p1 )                                                    
           return 0;                                                  
        p[ triply ] = (block_p) p1;                                   
      }                                                               
                                                                      
      p2 = (block_p *)p1[ doubly ];                                   
   5215a:	45f0 3c00      	lea %a0@(00000000,%d3:l:4),%a2              <== NOT EXECUTED
   5215e:	2052           	moveal %a2@,%a0                             <== NOT EXECUTED
      if ( !p2 ) {                                                    
   52160:	4a88           	tstl %a0                                    <== NOT EXECUTED
   52162:	6710           	beqs 52174 <IMFS_memfile_get_block_pointer+0x154><== NOT EXECUTED
        p2 = memfile_alloc_block();                                   
        if ( !p2 )                                                    
           return 0;                                                  
        p1[ doubly ] = (block_p) p2;                                  
      }                                                               
      return (block_p *)&p2[ singly ];                                
   52164:	41f0 4c00      	lea %a0@(00000000,%d4:l:4),%a0              <== NOT EXECUTED
   52168:	2008           	movel %a0,%d0                               <== NOT EXECUTED
  /*                                                                  
   *  This means the requested block number is out of range.          
   */                                                                 
                                                                      
  return 0;                                                           
}                                                                     
   5216a:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                <== NOT EXECUTED
   52170:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   52172:	4e75           	rts                                         <== NOT EXECUTED
        p[ triply ] = (block_p) p1;                                   
      }                                                               
                                                                      
      p2 = (block_p *)p1[ doubly ];                                   
      if ( !p2 ) {                                                    
        p2 = memfile_alloc_block();                                   
   52174:	4eb9 0005 1ffc 	jsr 51ffc <memfile_alloc_block>             <== NOT EXECUTED
   5217a:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
        if ( !p2 )                                                    
   5217c:	4a80           	tstl %d0                                    <== NOT EXECUTED
   5217e:	678a           	beqs 5210a <IMFS_memfile_get_block_pointer+0xea><== NOT EXECUTED
           return 0;                                                  
        p1[ doubly ] = (block_p) p2;                                  
   52180:	2480           	movel %d0,%a2@                              <== NOT EXECUTED
      }                                                               
      return (block_p *)&p2[ singly ];                                
   52182:	41f0 4c00      	lea %a0@(00000000,%d4:l:4),%a0              <== NOT EXECUTED
   52186:	2008           	movel %a0,%d0                               <== NOT EXECUTED
   52188:	60e0           	bras 5216a <IMFS_memfile_get_block_pointer+0x14a><== NOT EXECUTED
        info->triply_indirect = p;                                    
      }                                                               
                                                                      
      p1 = (block_p *) p[ triply ];                                   
      if ( !p1 ) {                                                    
        p1 = memfile_alloc_block();                                   
   5218a:	4eb9 0005 1ffc 	jsr 51ffc <memfile_alloc_block>             <== NOT EXECUTED
   52190:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
        if ( !p1 )                                                    
   52192:	4a80           	tstl %d0                                    <== NOT EXECUTED
   52194:	6700 ff74      	beqw 5210a <IMFS_memfile_get_block_pointer+0xea><== NOT EXECUTED
           return 0;                                                  
        p[ triply ] = (block_p) p1;                                   
   52198:	2480           	movel %d0,%a2@                              <== NOT EXECUTED
      }                                                               
                                                                      
      p2 = (block_p *)p1[ doubly ];                                   
   5219a:	45f0 3c00      	lea %a0@(00000000,%d3:l:4),%a2              <== NOT EXECUTED
   5219e:	2052           	moveal %a2@,%a0                             <== NOT EXECUTED
      if ( !p2 ) {                                                    
   521a0:	4a88           	tstl %a0                                    <== NOT EXECUTED
   521a2:	66c0           	bnes 52164 <IMFS_memfile_get_block_pointer+0x144><== NOT EXECUTED
   521a4:	60ce           	bras 52174 <IMFS_memfile_get_block_pointer+0x154><== NOT EXECUTED
                                                                      
    p = info->triply_indirect;                                        
                                                                      
    if ( malloc_it ) {                                                
      if ( !p ) {                                                     
        p = memfile_alloc_block();                                    
   521a6:	4eb9 0005 1ffc 	jsr 51ffc <memfile_alloc_block>             <== NOT EXECUTED
   521ac:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
        if ( !p )                                                     
   521ae:	4a80           	tstl %d0                                    <== NOT EXECUTED
   521b0:	6700 ff58      	beqw 5210a <IMFS_memfile_get_block_pointer+0xea><== NOT EXECUTED
           return 0;                                                  
        info->triply_indirect = p;                                    
   521b4:	2540 005c      	movel %d0,%a2@(92)                          <== NOT EXECUTED
      }                                                               
                                                                      
      p1 = (block_p *) p[ triply ];                                   
   521b8:	45f0 2c00      	lea %a0@(00000000,%d2:l:4),%a2              <== NOT EXECUTED
   521bc:	2052           	moveal %a2@,%a0                             <== NOT EXECUTED
      if ( !p1 ) {                                                    
   521be:	4a88           	tstl %a0                                    <== NOT EXECUTED
   521c0:	6698           	bnes 5215a <IMFS_memfile_get_block_pointer+0x13a><== NOT EXECUTED
   521c2:	60c6           	bras 5218a <IMFS_memfile_get_block_pointer+0x16a><== NOT EXECUTED
        p1[ doubly ] = (block_p) p2;                                  
      }                                                               
      return (block_p *)&p2[ singly ];                                
    }                                                                 
                                                                      
    if ( !p )                                                         
   521c4:	4a88           	tstl %a0                                    <== NOT EXECUTED
   521c6:	6700 ff42      	beqw 5210a <IMFS_memfile_get_block_pointer+0xea><== NOT EXECUTED
                                                                      
#if 0                                                                 
fprintf(stdout, "(t %d %d %d %d %d) ", block, my_block, triply, doubly, singly );
fflush(stdout);                                                       
#endif                                                                
    p1 = (block_p *) p[ triply ];                                     
   521ca:	2070 2c00      	moveal %a0@(00000000,%d2:l:4),%a0           <== NOT EXECUTED
    if ( !p1 )                                                        
   521ce:	4a88           	tstl %a0                                    <== NOT EXECUTED
   521d0:	6700 ff38      	beqw 5210a <IMFS_memfile_get_block_pointer+0xea><== NOT EXECUTED
                                                                      
    p2 = (block_p *)p1[ doubly ];                                     
    if ( !p )                                                         
      return 0;                                                       
                                                                      
    return (block_p *)&p2[ singly ];                                  
   521d4:	2004           	movel %d4,%d0                               <== NOT EXECUTED
   521d6:	e588           	lsll #2,%d0                                 <== NOT EXECUTED
   521d8:	d0b0 3c00      	addl %a0@(00000000,%d3:l:4),%d0             <== NOT EXECUTED
  /*                                                                  
   *  This means the requested block number is out of range.          
   */                                                                 
                                                                      
  return 0;                                                           
}                                                                     
   521dc:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                <== NOT EXECUTED
   521e2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   521e4:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Perform internal consistency checks                             
   */                                                                 
                                                                      
  assert( the_jnode );                                                
   521e6:	4879 0006 2b90 	pea 62b90 <CSWTCH.8+0x10>                   <== NOT EXECUTED
   521ec:	4879 0006 2c6a 	pea 62c6a <__FUNCTION__.6334>               <== NOT EXECUTED
   521f2:	4878 0388      	pea 388 <DBL_MANT_DIG+0x353>                <== NOT EXECUTED
   521f6:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   521fc:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
  if ( !the_jnode )                                                   
    return NULL;                                                      
                                                                      
  assert( the_jnode->type == IMFS_MEMORY_FILE );                      
   52202:	4879 0006 2be0 	pea 62be0 <CSWTCH.8+0x60>                   <== NOT EXECUTED
   52208:	4879 0006 2c6a 	pea 62c6a <__FUNCTION__.6334>               <== NOT EXECUTED
   5220e:	4878 038c      	pea 38c <DBL_MANT_DIG+0x357>                <== NOT EXECUTED
   52212:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   52218:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
                                                                      
00052b9c <IMFS_memfile_read>:                                         
   IMFS_jnode_t    *the_jnode,                                        
   off_t            start,                                            
   unsigned char   *destination,                                      
   unsigned int     length                                            
)                                                                     
{                                                                     
   52b9c:	4e56 ffc0      	linkw %fp,#-64                              
   52ba0:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 
   52ba4:	246e 0008      	moveal %fp@(8),%a2                          
   52ba8:	2a6e 0014      	moveal %fp@(20),%a5                         
   52bac:	262e 0018      	movel %fp@(24),%d3                          
   52bb0:	282e 000c      	movel %fp@(12),%d4                          
   52bb4:	2a2e 0010      	movel %fp@(16),%d5                          
                                                                      
  /*                                                                  
   *  Perform internal consistency checks                             
   */                                                                 
                                                                      
  assert( the_jnode );                                                
   52bb8:	4a8a           	tstl %a2                                    
   52bba:	6700 0266      	beqw 52e22 <IMFS_memfile_read+0x286>        
  if ( !the_jnode )                                                   
    rtems_set_errno_and_return_minus_one( EIO );                      
                                                                      
  assert( the_jnode->type == IMFS_MEMORY_FILE ||                      
   52bbe:	202a 0048      	movel %a2@(72),%d0                          
   52bc2:	2040           	moveal %d0,%a0                              
   52bc4:	5b88           	subql #5,%a0                                
   52bc6:	7c01           	moveq #1,%d6                                
   52bc8:	bc88           	cmpl %a0,%d6                                
   52bca:	6500 023a      	bcsw 52e06 <IMFS_memfile_read+0x26a>        
                                                                      
  /*                                                                  
   *  Error checks on arguments                                       
   */                                                                 
                                                                      
  assert( dest );                                                     
   52bce:	4a8d           	tstl %a5                                    
   52bd0:	6700 01fc      	beqw 52dce <IMFS_memfile_read+0x232>        
  /*                                                                  
   *  If there is nothing to read, then quick exit.                   
   */                                                                 
                                                                      
  my_length = length;                                                 
  if ( !my_length )                                                   
   52bd4:	4a83           	tstl %d3                                    
   52bd6:	6700 01c2      	beqw 52d9a <IMFS_memfile_read+0x1fe>        
                                                                      
  /*                                                                  
   *  Linear files (as created from a tar file are easier to handle   
   *  than block files).                                              
   */                                                                 
  if (the_jnode->type == IMFS_LINEAR_FILE) {                          
   52bda:	7e06           	moveq #6,%d7                                
   52bdc:	be80           	cmpl %d0,%d7                                
   52bde:	6700 0136      	beqw 52d16 <IMFS_memfile_read+0x17a>        
   *  If the last byte we are supposed to read is past the end of this
   *  in memory file, then shorten the length to read.                
   */                                                                 
                                                                      
  last_byte = start + length;                                         
  if ( last_byte > the_jnode->info.file.size )                        
   52be2:	2043           	moveal %d3,%a0                              
   52be4:	d1c5           	addal %d5,%a0                               
   52be6:	2408           	movel %a0,%d2                               
   52be8:	4281           	clrl %d1                                    
   52bea:	206a 004c      	moveal %a2@(76),%a0                         
   52bee:	226a 0050      	moveal %a2@(80),%a1                         
   52bf2:	2c08           	movel %a0,%d6                               
   52bf4:	2e09           	movel %a1,%d7                               
   52bf6:	9e82           	subl %d2,%d7                                
   52bf8:	9d81           	subxl %d1,%d6                               
   52bfa:	6c04           	bges 52c00 <IMFS_memfile_read+0x64>         
    my_length = the_jnode->info.file.size - start;                    
   52bfc:	2609           	movel %a1,%d3                               
   52bfe:	9685           	subl %d5,%d3                                
                                                                      
  /*                                                                  
   *  Phase 1: possibly the last part of one block                    
   */                                                                 
                                                                      
  start_offset = start % IMFS_MEMFILE_BYTES_PER_BLOCK;                
   52c00:	2439 0006 4654 	movel 64654 <imfs_memfile_bytes_per_block>,%d2
   52c06:	2202           	movel %d2,%d1                               
   52c08:	5bc0           	smi %d0                                     
   52c0a:	49c0           	extbl %d0                                   
   52c0c:	2640           	moveal %d0,%a3                              
   52c0e:	2841           	moveal %d1,%a4                              
   52c10:	2f0c           	movel %a4,%sp@-                             
   52c12:	2f00           	movel %d0,%sp@-                             
   52c14:	2f05           	movel %d5,%sp@-                             
   52c16:	2f04           	movel %d4,%sp@-                             
   52c18:	4eb9 0006 0344 	jsr 60344 <__moddi3>                        
   52c1e:	4fef 0010      	lea %sp@(16),%sp                            
   52c22:	2e01           	movel %d1,%d7                               
  block = start / IMFS_MEMFILE_BYTES_PER_BLOCK;                       
   52c24:	2f0c           	movel %a4,%sp@-                             
   52c26:	2f0b           	movel %a3,%sp@-                             
   52c28:	2f05           	movel %d5,%sp@-                             
   52c2a:	2f04           	movel %d4,%sp@-                             
   52c2c:	4eb9 0005 ff8c 	jsr 5ff8c <__divdi3>                        
   52c32:	4fef 0010      	lea %sp@(16),%sp                            
   52c36:	2801           	movel %d1,%d4                               
  if ( start_offset )  {                                              
   52c38:	4a87           	tstl %d7                                    
   52c3a:	6700 00d2      	beqw 52d0e <IMFS_memfile_read+0x172>        
    to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK - start_offset;            
    if ( to_copy > my_length )                                        
      to_copy = my_length;                                            
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
   52c3e:	42a7           	clrl %sp@-                                  
   52c40:	2f01           	movel %d1,%sp@-                             
   52c42:	2f0a           	movel %a2,%sp@-                             
   52c44:	4eb9 0005 2020 	jsr 52020 <IMFS_memfile_get_block_pointer>  
    assert( block_ptr );                                              
   52c4a:	4fef 000c      	lea %sp@(12),%sp                            
   52c4e:	4a80           	tstl %d0                                    
   52c50:	6700 01ec      	beqw 52e3e <IMFS_memfile_read+0x2a2>        
   */                                                                 
                                                                      
  start_offset = start % IMFS_MEMFILE_BYTES_PER_BLOCK;                
  block = start / IMFS_MEMFILE_BYTES_PER_BLOCK;                       
  if ( start_offset )  {                                              
    to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK - start_offset;            
   52c54:	9487           	subl %d7,%d2                                
   52c56:	2643           	moveal %d3,%a3                              
   52c58:	b483           	cmpl %d3,%d2                                
   52c5a:	6500 0116      	bcsw 52d72 <IMFS_memfile_read+0x1d6>        
      to_copy = my_length;                                            
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
    if ( !block_ptr )                                                 
      return copied;                                                  
    memcpy( dest, &(*block_ptr)[ start_offset ], to_copy );           
   52c5e:	2f0b           	movel %a3,%sp@-                             
   52c60:	2040           	moveal %d0,%a0                              
   52c62:	de90           	addl %a0@,%d7                               
    dest += to_copy;                                                  
    block++;                                                          
   52c64:	5284           	addql #1,%d4                                
    my_length -= to_copy;                                             
   52c66:	968b           	subl %a3,%d3                                
      to_copy = my_length;                                            
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
    if ( !block_ptr )                                                 
      return copied;                                                  
    memcpy( dest, &(*block_ptr)[ start_offset ], to_copy );           
   52c68:	2f07           	movel %d7,%sp@-                             
    dest += to_copy;                                                  
   52c6a:	2e0d           	movel %a5,%d7                               
   52c6c:	de8b           	addl %a3,%d7                                
      to_copy = my_length;                                            
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
    if ( !block_ptr )                                                 
      return copied;                                                  
    memcpy( dest, &(*block_ptr)[ start_offset ], to_copy );           
   52c6e:	2f0d           	movel %a5,%sp@-                             
   52c70:	4eb9 0005 4bd8 	jsr 54bd8 <memcpy>                          
    dest += to_copy;                                                  
    block++;                                                          
    my_length -= to_copy;                                             
   52c76:	2439 0006 4654 	movel 64654 <imfs_memfile_bytes_per_block>,%d2
   52c7c:	4fef 000c      	lea %sp@(12),%sp                            
  /*                                                                  
   *  Phase 2: all of zero of more blocks                             
   */                                                                 
                                                                      
  to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK;                             
  while ( my_length >= IMFS_MEMFILE_BYTES_PER_BLOCK ) {               
   52c80:	b483           	cmpl %d3,%d2                                
   52c82:	623c           	bhis 52cc0 <IMFS_memfile_read+0x124>        
   52c84:	49f9 0005 2020 	lea 52020 <IMFS_memfile_get_block_pointer>,%a4
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
    if ( !block_ptr )                                                 
      return copied;                                                  
    memcpy( dest, &(*block_ptr)[ 0 ], to_copy );                      
   52c8a:	4bf9 0005 4bd8 	lea 54bd8 <memcpy>,%a5                      
   *  Phase 2: all of zero of more blocks                             
   */                                                                 
                                                                      
  to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK;                             
  while ( my_length >= IMFS_MEMFILE_BYTES_PER_BLOCK ) {               
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
   52c90:	42a7           	clrl %sp@-                                  
   52c92:	2f04           	movel %d4,%sp@-                             
   52c94:	2f0a           	movel %a2,%sp@-                             
   52c96:	4e94           	jsr %a4@                                    
    assert( block_ptr );                                              
   52c98:	4fef 000c      	lea %sp@(12),%sp                            
   52c9c:	4a80           	tstl %d0                                    
   52c9e:	6700 0112      	beqw 52db2 <IMFS_memfile_read+0x216>        
    if ( !block_ptr )                                                 
      return copied;                                                  
    memcpy( dest, &(*block_ptr)[ 0 ], to_copy );                      
   52ca2:	2040           	moveal %d0,%a0                              
    dest += to_copy;                                                  
    block++;                                                          
   52ca4:	5284           	addql #1,%d4                                
    my_length -= to_copy;                                             
   52ca6:	9682           	subl %d2,%d3                                
    copied += to_copy;                                                
   52ca8:	d7c2           	addal %d2,%a3                               
  while ( my_length >= IMFS_MEMFILE_BYTES_PER_BLOCK ) {               
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
    if ( !block_ptr )                                                 
      return copied;                                                  
    memcpy( dest, &(*block_ptr)[ 0 ], to_copy );                      
   52caa:	2f02           	movel %d2,%sp@-                             
   52cac:	2f10           	movel %a0@,%sp@-                            
   52cae:	2f07           	movel %d7,%sp@-                             
    dest += to_copy;                                                  
   52cb0:	de82           	addl %d2,%d7                                
  while ( my_length >= IMFS_MEMFILE_BYTES_PER_BLOCK ) {               
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
    if ( !block_ptr )                                                 
      return copied;                                                  
    memcpy( dest, &(*block_ptr)[ 0 ], to_copy );                      
   52cb2:	4e95           	jsr %a5@                                    
  /*                                                                  
   *  Phase 2: all of zero of more blocks                             
   */                                                                 
                                                                      
  to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK;                             
  while ( my_length >= IMFS_MEMFILE_BYTES_PER_BLOCK ) {               
   52cb4:	4fef 000c      	lea %sp@(12),%sp                            
   52cb8:	b6b9 0006 4654 	cmpl 64654 <imfs_memfile_bytes_per_block>,%d3
   52cbe:	64d0           	bccs 52c90 <IMFS_memfile_read+0xf4>         
   *  Phase 3: possibly the first part of one block                   
   */                                                                 
                                                                      
  assert( my_length < IMFS_MEMFILE_BYTES_PER_BLOCK );                 
                                                                      
  if ( my_length ) {                                                  
   52cc0:	4a83           	tstl %d3                                    
   52cc2:	672a           	beqs 52cee <IMFS_memfile_read+0x152>        
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
   52cc4:	42a7           	clrl %sp@-                                  
   52cc6:	2f04           	movel %d4,%sp@-                             
   52cc8:	2f0a           	movel %a2,%sp@-                             
   52cca:	4eb9 0005 2020 	jsr 52020 <IMFS_memfile_get_block_pointer>  
    assert( block_ptr );                                              
   52cd0:	4fef 000c      	lea %sp@(12),%sp                            
   52cd4:	4a80           	tstl %d0                                    
   52cd6:	6700 0112      	beqw 52dea <IMFS_memfile_read+0x24e>        
    if ( !block_ptr )                                                 
      return copied;                                                  
    memcpy( dest, &(*block_ptr)[ 0 ], my_length );                    
   52cda:	2040           	moveal %d0,%a0                              
    copied += my_length;                                              
   52cdc:	d7c3           	addal %d3,%a3                               
  if ( my_length ) {                                                  
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
    if ( !block_ptr )                                                 
      return copied;                                                  
    memcpy( dest, &(*block_ptr)[ 0 ], my_length );                    
   52cde:	2f03           	movel %d3,%sp@-                             
   52ce0:	2f10           	movel %a0@,%sp@-                            
   52ce2:	2f07           	movel %d7,%sp@-                             
   52ce4:	4eb9 0005 4bd8 	jsr 54bd8 <memcpy>                          
    copied += my_length;                                              
   52cea:	4fef 000c      	lea %sp@(12),%sp                            
  }                                                                   
                                                                      
  IMFS_update_atime( the_jnode );                                     
   52cee:	42a7           	clrl %sp@-                                  
   52cf0:	486e fff8      	pea %fp@(-8)                                
   52cf4:	4eb9 0004 4060 	jsr 44060 <gettimeofday>                    
   52cfa:	256e fff8 003c 	movel %fp@(-8),%a2@(60)                     
                                                                      
  return copied;                                                      
   52d00:	200b           	movel %a3,%d0                               
   52d02:	508f           	addql #8,%sp                                
}                                                                     
   52d04:	4cee 3cfc ffc0 	moveml %fp@(-64),%d2-%d7/%a2-%a5            
   52d0a:	4e5e           	unlk %fp                                    
   52d0c:	4e75           	rts                                         
   *  Phase 1: possibly the last part of one block                    
   */                                                                 
                                                                      
  start_offset = start % IMFS_MEMFILE_BYTES_PER_BLOCK;                
  block = start / IMFS_MEMFILE_BYTES_PER_BLOCK;                       
  if ( start_offset )  {                                              
   52d0e:	2e0d           	movel %a5,%d7                               
   52d10:	97cb           	subal %a3,%a3                               
   52d12:	6000 ff6c      	braw 52c80 <IMFS_memfile_read+0xe4>         
  if (the_jnode->type == IMFS_LINEAR_FILE) {                          
    unsigned char  *file_ptr;                                         
                                                                      
    file_ptr = (unsigned char *)the_jnode->info.linearfile.direct;    
                                                                      
    if (my_length > (the_jnode->info.linearfile.size - start))        
   52d16:	2843           	moveal %d3,%a4                              <== NOT EXECUTED
   52d18:	97cb           	subal %a3,%a3                               <== NOT EXECUTED
   52d1a:	202a 004c      	movel %a2@(76),%d0                          <== NOT EXECUTED
   52d1e:	222a 0050      	movel %a2@(80),%d1                          <== NOT EXECUTED
   52d22:	2c0b           	movel %a3,%d6                               <== NOT EXECUTED
   52d24:	2e0c           	movel %a4,%d7                               <== NOT EXECUTED
   52d26:	2d40 ffe8      	movel %d0,%fp@(-24)                         <== NOT EXECUTED
   52d2a:	2d41 ffec      	movel %d1,%fp@(-20)                         <== NOT EXECUTED
   52d2e:	9285           	subl %d5,%d1                                <== NOT EXECUTED
   52d30:	9184           	subxl %d4,%d0                               <== NOT EXECUTED
   *  than block files).                                              
   */                                                                 
  if (the_jnode->type == IMFS_LINEAR_FILE) {                          
    unsigned char  *file_ptr;                                         
                                                                      
    file_ptr = (unsigned char *)the_jnode->info.linearfile.direct;    
   52d32:	206a 0054      	moveal %a2@(84),%a0                         <== NOT EXECUTED
                                                                      
    if (my_length > (the_jnode->info.linearfile.size - start))        
   52d36:	9e81           	subl %d1,%d7                                <== NOT EXECUTED
   52d38:	9d80           	subxl %d0,%d6                               <== NOT EXECUTED
   52d3a:	6f06           	bles 52d42 <IMFS_memfile_read+0x1a6>        <== NOT EXECUTED
      my_length = the_jnode->info.linearfile.size - start;            
   52d3c:	262e ffec      	movel %fp@(-20),%d3                         <== NOT EXECUTED
   52d40:	9685           	subl %d5,%d3                                <== NOT EXECUTED
                                                                      
    memcpy(dest, &file_ptr[start], my_length);                        
   52d42:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   52d44:	4870 5800      	pea %a0@(00000000,%d5:l)                    <== NOT EXECUTED
   52d48:	2f0d           	movel %a5,%sp@-                             <== NOT EXECUTED
   52d4a:	4eb9 0005 4bd8 	jsr 54bd8 <memcpy>                          <== NOT EXECUTED
                                                                      
    IMFS_update_atime( the_jnode );                                   
   52d50:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   52d52:	486e fff8      	pea %fp@(-8)                                <== NOT EXECUTED
   52d56:	4eb9 0004 4060 	jsr 44060 <gettimeofday>                    <== NOT EXECUTED
   52d5c:	256e fff8 003c 	movel %fp@(-8),%a2@(60)                     <== NOT EXECUTED
                                                                      
    return my_length;                                                 
   52d62:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   52d64:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
  }                                                                   
                                                                      
  IMFS_update_atime( the_jnode );                                     
                                                                      
  return copied;                                                      
}                                                                     
   52d68:	4cee 3cfc ffc0 	moveml %fp@(-64),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   52d6e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   52d70:	4e75           	rts                                         <== NOT EXECUTED
   */                                                                 
                                                                      
  start_offset = start % IMFS_MEMFILE_BYTES_PER_BLOCK;                
  block = start / IMFS_MEMFILE_BYTES_PER_BLOCK;                       
  if ( start_offset )  {                                              
    to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK - start_offset;            
   52d72:	2642           	moveal %d2,%a3                              
      to_copy = my_length;                                            
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
    if ( !block_ptr )                                                 
      return copied;                                                  
    memcpy( dest, &(*block_ptr)[ start_offset ], to_copy );           
   52d74:	2040           	moveal %d0,%a0                              
    dest += to_copy;                                                  
    block++;                                                          
   52d76:	5284           	addql #1,%d4                                
    my_length -= to_copy;                                             
   52d78:	968b           	subl %a3,%d3                                
      to_copy = my_length;                                            
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
    if ( !block_ptr )                                                 
      return copied;                                                  
    memcpy( dest, &(*block_ptr)[ start_offset ], to_copy );           
   52d7a:	2f0b           	movel %a3,%sp@-                             
   52d7c:	de90           	addl %a0@,%d7                               
   52d7e:	2f07           	movel %d7,%sp@-                             
    dest += to_copy;                                                  
   52d80:	2e0d           	movel %a5,%d7                               
   52d82:	de8b           	addl %a3,%d7                                
      to_copy = my_length;                                            
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
    if ( !block_ptr )                                                 
      return copied;                                                  
    memcpy( dest, &(*block_ptr)[ start_offset ], to_copy );           
   52d84:	2f0d           	movel %a5,%sp@-                             
   52d86:	4eb9 0005 4bd8 	jsr 54bd8 <memcpy>                          
    dest += to_copy;                                                  
    block++;                                                          
    my_length -= to_copy;                                             
   52d8c:	2439 0006 4654 	movel 64654 <imfs_memfile_bytes_per_block>,%d2
   52d92:	4fef 000c      	lea %sp@(12),%sp                            
   52d96:	6000 fee8      	braw 52c80 <IMFS_memfile_read+0xe4>         
   *  If there is nothing to read, then quick exit.                   
   */                                                                 
                                                                      
  my_length = length;                                                 
  if ( !my_length )                                                   
    rtems_set_errno_and_return_minus_one( EINVAL );                   
   52d9a:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         <== NOT EXECUTED
   52da0:	7e16           	moveq #22,%d7                               <== NOT EXECUTED
   52da2:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   52da4:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   52da6:	2087           	movel %d7,%a0@                              <== NOT EXECUTED
  }                                                                   
                                                                      
  IMFS_update_atime( the_jnode );                                     
                                                                      
  return copied;                                                      
}                                                                     
   52da8:	4cee 3cfc ffc0 	moveml %fp@(-64),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   52dae:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   52db0:	4e75           	rts                                         <== NOT EXECUTED
   */                                                                 
                                                                      
  to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK;                             
  while ( my_length >= IMFS_MEMFILE_BYTES_PER_BLOCK ) {               
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
   52db2:	4879 0006 2c10 	pea 62c10 <CSWTCH.8+0x90>                   <== NOT EXECUTED
   52db8:	4879 0006 2c9c 	pea 62c9c <__FUNCTION__.6161>               <== NOT EXECUTED
   52dbe:	4878 02a7      	pea 2a7 <DBL_MANT_DIG+0x272>                <== NOT EXECUTED
   52dc2:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   52dc8:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Error checks on arguments                                       
   */                                                                 
                                                                      
  assert( dest );                                                     
   52dce:	4879 0006 2c65 	pea 62c65 <CSWTCH.8+0xe5>                   <== NOT EXECUTED
   52dd4:	4879 0006 2c9c 	pea 62c9c <__FUNCTION__.6161>               <== NOT EXECUTED
   52dda:	4878 025a      	pea 25a <DBL_MANT_DIG+0x225>                <== NOT EXECUTED
   52dde:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   52de4:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
                                                                      
  assert( my_length < IMFS_MEMFILE_BYTES_PER_BLOCK );                 
                                                                      
  if ( my_length ) {                                                  
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
   52dea:	4879 0006 2c10 	pea 62c10 <CSWTCH.8+0x90>                   <== NOT EXECUTED
   52df0:	4879 0006 2c9c 	pea 62c9c <__FUNCTION__.6161>               <== NOT EXECUTED
   52df6:	4878 02b9      	pea 2b9 <DBL_MANT_DIG+0x284>                <== NOT EXECUTED
   52dfa:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   52e00:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
                                                                      
  assert( the_jnode );                                                
  if ( !the_jnode )                                                   
    rtems_set_errno_and_return_minus_one( EIO );                      
                                                                      
  assert( the_jnode->type == IMFS_MEMORY_FILE ||                      
   52e06:	4879 0006 2c1a 	pea 62c1a <CSWTCH.8+0x9a>                   <== NOT EXECUTED
   52e0c:	4879 0006 2c9c 	pea 62c9c <__FUNCTION__.6161>               <== NOT EXECUTED
   52e12:	4878 0251      	pea 251 <DBL_MANT_DIG+0x21c>                <== NOT EXECUTED
   52e16:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   52e1c:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Perform internal consistency checks                             
   */                                                                 
                                                                      
  assert( the_jnode );                                                
   52e22:	4879 0006 2b90 	pea 62b90 <CSWTCH.8+0x10>                   <== NOT EXECUTED
   52e28:	4879 0006 2c9c 	pea 62c9c <__FUNCTION__.6161>               <== NOT EXECUTED
   52e2e:	4878 024c      	pea 24c <DBL_MANT_DIG+0x217>                <== NOT EXECUTED
   52e32:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   52e38:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
  if ( start_offset )  {                                              
    to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK - start_offset;            
    if ( to_copy > my_length )                                        
      to_copy = my_length;                                            
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
   52e3e:	4879 0006 2c10 	pea 62c10 <CSWTCH.8+0x90>                   <== NOT EXECUTED
   52e44:	4879 0006 2c9c 	pea 62c9c <__FUNCTION__.6161>               <== NOT EXECUTED
   52e4a:	4878 0296      	pea 296 <DBL_MANT_DIG+0x261>                <== NOT EXECUTED
   52e4e:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   52e54:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
                                                                      
000522d0 <IMFS_memfile_remove>:                                       
 */                                                                   
                                                                      
int IMFS_memfile_remove(                                              
 IMFS_jnode_t  *the_jnode                                             
)                                                                     
{                                                                     
   522d0:	4e56 ffe0      	linkw %fp,#-32                              
   522d4:	48d7 1c7c      	moveml %d2-%d6/%a2-%a4,%sp@                 
   522d8:	286e 0008      	moveal %fp@(8),%a4                          
                                                                      
  /*                                                                  
   *  Perform internal consistency checks                             
   */                                                                 
                                                                      
  assert( the_jnode );                                                
   522dc:	4a8c           	tstl %a4                                    
   522de:	6700 010c      	beqw 523ec <IMFS_memfile_remove+0x11c>      
  if ( !the_jnode )                                                   
    rtems_set_errno_and_return_minus_one( EIO );                      
                                                                      
  assert( the_jnode->type == IMFS_MEMORY_FILE );                      
   522e2:	7005           	moveq #5,%d0                                
   522e4:	b0ac 0048      	cmpl %a4@(72),%d0                           
   522e8:	6600 011e      	bnew 52408 <IMFS_memfile_remove+0x138>      
  /*                                                                  
   *  Eventually this could be set smarter at each call to            
   *  memfile_free_blocks_in_table to greatly speed this up.          
   */                                                                 
                                                                      
  to_free = IMFS_MEMFILE_BLOCK_SLOTS;                                 
   522ec:	2839 0006 4654 	movel 64654 <imfs_memfile_bytes_per_block>,%d4
   522f2:	e48c           	lsrl #2,%d4                                 
   *    + indirect                                                    
   *    + doubly indirect                                             
   *    + triply indirect                                             
   */                                                                 
                                                                      
  info = &the_jnode->info.file;                                       
   522f4:	4aac 0054      	tstl %a4@(84)                               
   522f8:	670e           	beqs 52308 <IMFS_memfile_remove+0x38>       
                                                                      
  if ( info->indirect ) {                                             
    memfile_free_blocks_in_table( &info->indirect, to_free );         
   522fa:	2f04           	movel %d4,%sp@-                             
   522fc:	486c 0054      	pea %a4@(84)                                
   52300:	4eb9 0005 221e 	jsr 5221e <memfile_free_blocks_in_table>    
   52306:	508f           	addql #8,%sp                                
  }                                                                   
                                                                      
  if ( info->doubly_indirect ) {                                      
   52308:	206c 0058      	moveal %a4@(88),%a0                         
   5230c:	4a88           	tstl %a0                                    
   5230e:	674a           	beqs 5235a <IMFS_memfile_remove+0x8a>       
                                                                      
    for ( i=0 ; i<IMFS_MEMFILE_BLOCK_SLOTS ; i++ ) {                  
   52310:	2239 0006 4654 	movel 64654 <imfs_memfile_bytes_per_block>,%d1<== NOT EXECUTED
   52316:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   52318:	47f9 0005 221e 	lea 5221e <memfile_free_blocks_in_table>,%a3<== NOT EXECUTED
   5231e:	e488           	lsrl #2,%d0                                 <== NOT EXECUTED
   52320:	672e           	beqs 52350 <IMFS_memfile_remove+0x80>       <== NOT EXECUTED
   52322:	4280           	clrl %d0                                    <== NOT EXECUTED
   52324:	4282           	clrl %d2                                    <== NOT EXECUTED
      if ( info->doubly_indirect[i] ) {                               
   52326:	e588           	lsll #2,%d0                                 <== NOT EXECUTED
   52328:	4ab0 0800      	tstl %a0@(00000000,%d0:l)                   <== NOT EXECUTED
   5232c:	6710           	beqs 5233e <IMFS_memfile_remove+0x6e>       <== NOT EXECUTED
        memfile_free_blocks_in_table(                                 
   5232e:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   52330:	4870 0800      	pea %a0@(00000000,%d0:l)                    <== NOT EXECUTED
   52334:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   52336:	2239 0006 4654 	movel 64654 <imfs_memfile_bytes_per_block>,%d1<== NOT EXECUTED
   5233c:	508f           	addql #8,%sp                                <== NOT EXECUTED
    memfile_free_blocks_in_table( &info->indirect, to_free );         
  }                                                                   
                                                                      
  if ( info->doubly_indirect ) {                                      
                                                                      
    for ( i=0 ; i<IMFS_MEMFILE_BLOCK_SLOTS ; i++ ) {                  
   5233e:	5282           	addql #1,%d2                                <== NOT EXECUTED
   52340:	2601           	movel %d1,%d3                               <== NOT EXECUTED
   52342:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   52344:	e48b           	lsrl #2,%d3                                 <== NOT EXECUTED
   52346:	b483           	cmpl %d3,%d2                                <== NOT EXECUTED
   52348:	6406           	bccs 52350 <IMFS_memfile_remove+0x80>       <== NOT EXECUTED
   5234a:	206c 0058      	moveal %a4@(88),%a0                         <== NOT EXECUTED
   5234e:	60d6           	bras 52326 <IMFS_memfile_remove+0x56>       <== NOT EXECUTED
      if ( info->doubly_indirect[i] ) {                               
        memfile_free_blocks_in_table(                                 
         (block_p **)&info->doubly_indirect[i], to_free );            
      }                                                               
    }                                                                 
    memfile_free_blocks_in_table( &info->doubly_indirect, to_free );  
   52350:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   52352:	486c 0058      	pea %a4@(88)                                <== NOT EXECUTED
   52356:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   52358:	508f           	addql #8,%sp                                <== NOT EXECUTED
                                                                      
  }                                                                   
                                                                      
  if ( info->triply_indirect ) {                                      
   5235a:	206c 005c      	moveal %a4@(92),%a0                         
   5235e:	4a88           	tstl %a0                                    
   52360:	677e           	beqs 523e0 <IMFS_memfile_remove+0x110>      
    for ( i=0 ; i<IMFS_MEMFILE_BLOCK_SLOTS ; i++ ) {                  
   52362:	2239 0006 4654 	movel 64654 <imfs_memfile_bytes_per_block>,%d1<== NOT EXECUTED
   52368:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   5236a:	47f9 0005 221e 	lea 5221e <memfile_free_blocks_in_table>,%a3<== NOT EXECUTED
   52370:	e488           	lsrl #2,%d0                                 <== NOT EXECUTED
   52372:	6762           	beqs 523d6 <IMFS_memfile_remove+0x106>      <== NOT EXECUTED
      p = (block_p *) info->triply_indirect[i];                       
   52374:	2450           	moveal %a0@,%a2                             <== NOT EXECUTED
      if ( !p )  /* ensure we have a valid pointer */                 
   52376:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   52378:	675c           	beqs 523d6 <IMFS_memfile_remove+0x106>      <== NOT EXECUTED
   5237a:	4286           	clrl %d6                                    <== NOT EXECUTED
   5237c:	4285           	clrl %d5                                    <== NOT EXECUTED
         break;                                                       
      for ( j=0 ; j<IMFS_MEMFILE_BLOCK_SLOTS ; j++ ) {                
   5237e:	4a80           	tstl %d0                                    <== NOT EXECUTED
   52380:	6728           	beqs 523aa <IMFS_memfile_remove+0xda>       <== NOT EXECUTED
   52382:	4280           	clrl %d0                                    <== NOT EXECUTED
   52384:	4282           	clrl %d2                                    <== NOT EXECUTED
        if ( p[j] ) {                                                 
   52386:	e588           	lsll #2,%d0                                 <== NOT EXECUTED
   52388:	4ab2 0800      	tstl %a2@(00000000,%d0:l)                   <== NOT EXECUTED
   5238c:	6710           	beqs 5239e <IMFS_memfile_remove+0xce>       <== NOT EXECUTED
          memfile_free_blocks_in_table( (block_p **)&p[j], to_free);  
   5238e:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   52390:	4872 0800      	pea %a2@(00000000,%d0:l)                    <== NOT EXECUTED
   52394:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   52396:	2239 0006 4654 	movel 64654 <imfs_memfile_bytes_per_block>,%d1<== NOT EXECUTED
   5239c:	508f           	addql #8,%sp                                <== NOT EXECUTED
  if ( info->triply_indirect ) {                                      
    for ( i=0 ; i<IMFS_MEMFILE_BLOCK_SLOTS ; i++ ) {                  
      p = (block_p *) info->triply_indirect[i];                       
      if ( !p )  /* ensure we have a valid pointer */                 
         break;                                                       
      for ( j=0 ; j<IMFS_MEMFILE_BLOCK_SLOTS ; j++ ) {                
   5239e:	5282           	addql #1,%d2                                <== NOT EXECUTED
   523a0:	2601           	movel %d1,%d3                               <== NOT EXECUTED
   523a2:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   523a4:	e48b           	lsrl #2,%d3                                 <== NOT EXECUTED
   523a6:	b483           	cmpl %d3,%d2                                <== NOT EXECUTED
   523a8:	65dc           	bcss 52386 <IMFS_memfile_remove+0xb6>       <== NOT EXECUTED
        if ( p[j] ) {                                                 
          memfile_free_blocks_in_table( (block_p **)&p[j], to_free);  
        }                                                             
      }                                                               
      memfile_free_blocks_in_table(                                   
   523aa:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   523ac:	dcac 005c      	addl %a4@(92),%d6                           <== NOT EXECUTED
    memfile_free_blocks_in_table( &info->doubly_indirect, to_free );  
                                                                      
  }                                                                   
                                                                      
  if ( info->triply_indirect ) {                                      
    for ( i=0 ; i<IMFS_MEMFILE_BLOCK_SLOTS ; i++ ) {                  
   523b0:	5285           	addql #1,%d5                                <== NOT EXECUTED
      for ( j=0 ; j<IMFS_MEMFILE_BLOCK_SLOTS ; j++ ) {                
        if ( p[j] ) {                                                 
          memfile_free_blocks_in_table( (block_p **)&p[j], to_free);  
        }                                                             
      }                                                               
      memfile_free_blocks_in_table(                                   
   523b2:	2f06           	movel %d6,%sp@-                             <== NOT EXECUTED
   523b4:	4e93           	jsr %a3@                                    <== NOT EXECUTED
    memfile_free_blocks_in_table( &info->doubly_indirect, to_free );  
                                                                      
  }                                                                   
                                                                      
  if ( info->triply_indirect ) {                                      
    for ( i=0 ; i<IMFS_MEMFILE_BLOCK_SLOTS ; i++ ) {                  
   523b6:	2239 0006 4654 	movel 64654 <imfs_memfile_bytes_per_block>,%d1<== NOT EXECUTED
   523bc:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   523be:	508f           	addql #8,%sp                                <== NOT EXECUTED
   523c0:	e488           	lsrl #2,%d0                                 <== NOT EXECUTED
   523c2:	ba80           	cmpl %d0,%d5                                <== NOT EXECUTED
   523c4:	6410           	bccs 523d6 <IMFS_memfile_remove+0x106>      <== NOT EXECUTED
      p = (block_p *) info->triply_indirect[i];                       
      if ( !p )  /* ensure we have a valid pointer */                 
   523c6:	2c05           	movel %d5,%d6                               <== NOT EXECUTED
                                                                      
  }                                                                   
                                                                      
  if ( info->triply_indirect ) {                                      
    for ( i=0 ; i<IMFS_MEMFILE_BLOCK_SLOTS ; i++ ) {                  
      p = (block_p *) info->triply_indirect[i];                       
   523c8:	206c 005c      	moveal %a4@(92),%a0                         <== NOT EXECUTED
      if ( !p )  /* ensure we have a valid pointer */                 
   523cc:	e58e           	lsll #2,%d6                                 <== NOT EXECUTED
                                                                      
  }                                                                   
                                                                      
  if ( info->triply_indirect ) {                                      
    for ( i=0 ; i<IMFS_MEMFILE_BLOCK_SLOTS ; i++ ) {                  
      p = (block_p *) info->triply_indirect[i];                       
   523ce:	2470 6800      	moveal %a0@(00000000,%d6:l),%a2             <== NOT EXECUTED
      if ( !p )  /* ensure we have a valid pointer */                 
   523d2:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   523d4:	66a8           	bnes 5237e <IMFS_memfile_remove+0xae>       <== NOT EXECUTED
        }                                                             
      }                                                               
      memfile_free_blocks_in_table(                                   
        (block_p **)&info->triply_indirect[i], to_free );             
    }                                                                 
    memfile_free_blocks_in_table(                                     
   523d6:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   523d8:	486c 005c      	pea %a4@(92)                                <== NOT EXECUTED
   523dc:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   523de:	508f           	addql #8,%sp                                <== NOT EXECUTED
        (block_p **)&info->triply_indirect, to_free );                
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   523e0:	4280           	clrl %d0                                    
   523e2:	4cee 1c7c ffe0 	moveml %fp@(-32),%d2-%d6/%a2-%a4            
   523e8:	4e5e           	unlk %fp                                    
   523ea:	4e75           	rts                                         
                                                                      
  /*                                                                  
   *  Perform internal consistency checks                             
   */                                                                 
                                                                      
  assert( the_jnode );                                                
   523ec:	4879 0006 2b90 	pea 62b90 <CSWTCH.8+0x10>                   <== NOT EXECUTED
   523f2:	4879 0006 2cae 	pea 62cae <__FUNCTION__.6086>               <== NOT EXECUTED
   523f8:	4878 01ee      	pea 1ee <DBL_MANT_DIG+0x1b9>                <== NOT EXECUTED
   523fc:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   52402:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
  if ( !the_jnode )                                                   
    rtems_set_errno_and_return_minus_one( EIO );                      
                                                                      
  assert( the_jnode->type == IMFS_MEMORY_FILE );                      
   52408:	4879 0006 2be0 	pea 62be0 <CSWTCH.8+0x60>                   <== NOT EXECUTED
   5240e:	4879 0006 2cae 	pea 62cae <__FUNCTION__.6086>               <== NOT EXECUTED
   52414:	4878 01f2      	pea 1f2 <DBL_MANT_DIG+0x1bd>                <== NOT EXECUTED
   52418:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   5241e:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
                                                                      
00052284 <IMFS_memfile_remove_block>:                                 
                                                                      
MEMFILE_STATIC int IMFS_memfile_remove_block(                         
   IMFS_jnode_t  *the_jnode,                                          
   unsigned int   block                                               
)                                                                     
{                                                                     
   52284:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  block_p *block_ptr;                                                 
  block_p  ptr;                                                       
                                                                      
  block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );  
   52288:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   5228a:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   5228e:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   52292:	4eb9 0005 2020 	jsr 52020 <IMFS_memfile_get_block_pointer>  <== NOT EXECUTED
  assert( block_ptr );                                                
   52298:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   5229c:	4a80           	tstl %d0                                    <== NOT EXECUTED
   5229e:	6714           	beqs 522b4 <IMFS_memfile_remove_block+0x30> <== NOT EXECUTED
  if ( block_ptr ) {                                                  
    ptr = *block_ptr;                                                 
   522a0:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   522a2:	2210           	movel %a0@,%d1                              <== NOT EXECUTED
    *block_ptr = 0;                                                   
   522a4:	4290           	clrl %a0@                                   <== NOT EXECUTED
    memfile_free_block( ptr );                                        
   522a6:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   522a8:	4eb9 0005 1fe2 	jsr 51fe2 <memfile_free_block>              <== NOT EXECUTED
  }                                                                   
                                                                      
  return 1;                                                           
}                                                                     
   522ae:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   522b0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   522b2:	4e75           	rts                                         <== NOT EXECUTED
{                                                                     
  block_p *block_ptr;                                                 
  block_p  ptr;                                                       
                                                                      
  block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );  
  assert( block_ptr );                                                
   522b4:	4879 0006 2c10 	pea 62c10 <CSWTCH.8+0x90>                   <== NOT EXECUTED
   522ba:	4879 0006 2cdf 	pea 62cdf <__FUNCTION__.6050>               <== NOT EXECUTED
   522c0:	4878 0196      	pea 196 <DBL_MANT_DIG+0x161>                <== NOT EXECUTED
   522c4:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   522ca:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
                                                                      
0005280a <IMFS_memfile_write>:                                        
   IMFS_jnode_t          *the_jnode,                                  
   off_t                  start,                                      
   const unsigned char   *source,                                     
   unsigned int           length                                      
)                                                                     
{                                                                     
   5280a:	4e56 ffd0      	linkw %fp,#-48                              
   5280e:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 
   52812:	246e 0008      	moveal %fp@(8),%a2                          
   52816:	2a6e 0014      	moveal %fp@(20),%a5                         
   5281a:	262e 0018      	movel %fp@(24),%d3                          
   5281e:	282e 000c      	movel %fp@(12),%d4                          
   52822:	2a2e 0010      	movel %fp@(16),%d5                          
                                                                      
  /*                                                                  
   *  Perform internal consistency checks                             
   */                                                                 
                                                                      
  assert( the_jnode );                                                
   52826:	4a8a           	tstl %a2                                    
   52828:	6700 01f8      	beqw 52a22 <IMFS_memfile_write+0x218>       
  if ( !the_jnode )                                                   
    rtems_set_errno_and_return_minus_one( EIO );                      
                                                                      
  assert( the_jnode->type == IMFS_MEMORY_FILE );                      
   5282c:	7405           	moveq #5,%d2                                
   5282e:	b4aa 0048      	cmpl %a2@(72),%d2                           
   52832:	6600 01d2      	bnew 52a06 <IMFS_memfile_write+0x1fc>       
                                                                      
  /*                                                                  
   *  Error check arguments                                           
   */                                                                 
                                                                      
  assert( source );                                                   
   52836:	4a8d           	tstl %a5                                    
   52838:	6700 0204      	beqw 52a3e <IMFS_memfile_write+0x234>       
  /*                                                                  
   *  If there is nothing to write, then quick exit.                  
   */                                                                 
                                                                      
  my_length = length;                                                 
  if ( !my_length )                                                   
   5283c:	4a83           	tstl %d3                                    
   5283e:	6700 0190      	beqw 529d0 <IMFS_memfile_write+0x1c6>       
   *  If the last byte we are supposed to write is past the end of this
   *  in memory file, then extend the length.                         
   */                                                                 
                                                                      
  last_byte = start + length;                                         
  if ( last_byte > the_jnode->info.file.size ) {                      
   52842:	2043           	moveal %d3,%a0                              
   52844:	d1c5           	addal %d5,%a0                               
   52846:	2208           	movel %a0,%d1                               
   52848:	4280           	clrl %d0                                    
   5284a:	2c2a 004c      	movel %a2@(76),%d6                          
   5284e:	2e2a 0050      	movel %a2@(80),%d7                          
   52852:	9e81           	subl %d1,%d7                                
   52854:	9d80           	subxl %d0,%d6                               
   52856:	6d00 011e      	bltw 52976 <IMFS_memfile_write+0x16c>       
                                                                      
  /*                                                                  
   *  Phase 1: possibly the last part of one block                    
   */                                                                 
                                                                      
  start_offset = start % IMFS_MEMFILE_BYTES_PER_BLOCK;                
   5285a:	2439 0006 4654 	movel 64654 <imfs_memfile_bytes_per_block>,%d2
   52860:	2202           	movel %d2,%d1                               
   52862:	5bc0           	smi %d0                                     
   52864:	49c0           	extbl %d0                                   
   52866:	2640           	moveal %d0,%a3                              
   52868:	2841           	moveal %d1,%a4                              
   5286a:	2f0c           	movel %a4,%sp@-                             
   5286c:	2f00           	movel %d0,%sp@-                             
   5286e:	2f05           	movel %d5,%sp@-                             
   52870:	2f04           	movel %d4,%sp@-                             
   52872:	4eb9 0006 0344 	jsr 60344 <__moddi3>                        
   52878:	4fef 0010      	lea %sp@(16),%sp                            
   5287c:	2e01           	movel %d1,%d7                               
  block = start / IMFS_MEMFILE_BYTES_PER_BLOCK;                       
   5287e:	2f0c           	movel %a4,%sp@-                             
   52880:	2f0b           	movel %a3,%sp@-                             
   52882:	2f05           	movel %d5,%sp@-                             
   52884:	2f04           	movel %d4,%sp@-                             
   52886:	4eb9 0005 ff8c 	jsr 5ff8c <__divdi3>                        
   5288c:	4fef 0010      	lea %sp@(16),%sp                            
   52890:	2801           	movel %d1,%d4                               
  if ( start_offset )  {                                              
   52892:	4a87           	tstl %d7                                    
   52894:	6700 00d8      	beqw 5296e <IMFS_memfile_write+0x164>       
    to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK - start_offset;            
    if ( to_copy > my_length )                                        
      to_copy = my_length;                                            
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
   52898:	42a7           	clrl %sp@-                                  
   5289a:	2f01           	movel %d1,%sp@-                             
   5289c:	2f0a           	movel %a2,%sp@-                             
   5289e:	4eb9 0005 2020 	jsr 52020 <IMFS_memfile_get_block_pointer>  
    assert( block_ptr );                                              
   528a4:	4fef 000c      	lea %sp@(12),%sp                            
   528a8:	4a80           	tstl %d0                                    
   528aa:	6700 01ca      	beqw 52a76 <IMFS_memfile_write+0x26c>       
   */                                                                 
                                                                      
  start_offset = start % IMFS_MEMFILE_BYTES_PER_BLOCK;                
  block = start / IMFS_MEMFILE_BYTES_PER_BLOCK;                       
  if ( start_offset )  {                                              
    to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK - start_offset;            
   528ae:	9487           	subl %d7,%d2                                
   528b0:	b682           	cmpl %d2,%d3                                
   528b2:	6500 00f2      	bcsw 529a6 <IMFS_memfile_write+0x19c>       
    if ( !block_ptr )                                                 
      return copied;                                                  
#if 0                                                                 
fprintf(stdout, "write %d at %d in %d: %*s\n", to_copy, start_offset, block, to_copy, src );
#endif                                                                
    memcpy( &(*block_ptr)[ start_offset ], src, to_copy );            
   528b6:	2f02           	movel %d2,%sp@-                             
   528b8:	2040           	moveal %d0,%a0                              
    src += to_copy;                                                   
   528ba:	47f5 2800      	lea %a5@(00000000,%d2:l),%a3                
    block++;                                                          
    my_length -= to_copy;                                             
   528be:	9682           	subl %d2,%d3                                
    copied += to_copy;                                                
   528c0:	2a02           	movel %d2,%d5                               
#if 0                                                                 
fprintf(stdout, "write %d at %d in %d: %*s\n", to_copy, start_offset, block, to_copy, src );
#endif                                                                
    memcpy( &(*block_ptr)[ start_offset ], src, to_copy );            
    src += to_copy;                                                   
    block++;                                                          
   528c2:	5284           	addql #1,%d4                                
    if ( !block_ptr )                                                 
      return copied;                                                  
#if 0                                                                 
fprintf(stdout, "write %d at %d in %d: %*s\n", to_copy, start_offset, block, to_copy, src );
#endif                                                                
    memcpy( &(*block_ptr)[ start_offset ], src, to_copy );            
   528c4:	2f0d           	movel %a5,%sp@-                             
   528c6:	de90           	addl %a0@,%d7                               
   528c8:	2f07           	movel %d7,%sp@-                             
   528ca:	4eb9 0005 4bd8 	jsr 54bd8 <memcpy>                          
    src += to_copy;                                                   
    block++;                                                          
    my_length -= to_copy;                                             
    copied += to_copy;                                                
   528d0:	2439 0006 4654 	movel 64654 <imfs_memfile_bytes_per_block>,%d2
   528d6:	4fef 000c      	lea %sp@(12),%sp                            
  /*                                                                  
   *  Phase 2: all of zero of more blocks                             
   */                                                                 
                                                                      
  to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK;                             
  while ( my_length >= IMFS_MEMFILE_BYTES_PER_BLOCK ) {               
   528da:	b483           	cmpl %d3,%d2                                
   528dc:	623c           	bhis 5291a <IMFS_memfile_write+0x110>       
   528de:	49f9 0005 2020 	lea 52020 <IMFS_memfile_get_block_pointer>,%a4
    if ( !block_ptr )                                                 
      return copied;                                                  
#if 0                                                                 
fprintf(stdout, "write %d in %d: %*s\n", to_copy, block, to_copy, src );
#endif                                                                
    memcpy( &(*block_ptr)[ 0 ], src, to_copy );                       
   528e4:	4bf9 0005 4bd8 	lea 54bd8 <memcpy>,%a5                      
   *  Phase 2: all of zero of more blocks                             
   */                                                                 
                                                                      
  to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK;                             
  while ( my_length >= IMFS_MEMFILE_BYTES_PER_BLOCK ) {               
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
   528ea:	42a7           	clrl %sp@-                                  
   528ec:	2f04           	movel %d4,%sp@-                             
   528ee:	2f0a           	movel %a2,%sp@-                             
   528f0:	4e94           	jsr %a4@                                    
    assert( block_ptr );                                              
   528f2:	4fef 000c      	lea %sp@(12),%sp                            
   528f6:	4a80           	tstl %d0                                    
   528f8:	6700 00f0      	beqw 529ea <IMFS_memfile_write+0x1e0>       
    if ( !block_ptr )                                                 
      return copied;                                                  
#if 0                                                                 
fprintf(stdout, "write %d in %d: %*s\n", to_copy, block, to_copy, src );
#endif                                                                
    memcpy( &(*block_ptr)[ 0 ], src, to_copy );                       
   528fc:	2f02           	movel %d2,%sp@-                             
   528fe:	2040           	moveal %d0,%a0                              
    src += to_copy;                                                   
    block++;                                                          
   52900:	5284           	addql #1,%d4                                
    my_length -= to_copy;                                             
   52902:	9682           	subl %d2,%d3                                
 *                                                                    
 *  This routine writes the specified data buffer into the in memory  
 *  file pointed to by the_jnode.  The file is extended as needed.    
 */                                                                   
                                                                      
MEMFILE_STATIC ssize_t IMFS_memfile_write(                            
   52904:	da82           	addl %d2,%d5                                
    if ( !block_ptr )                                                 
      return copied;                                                  
#if 0                                                                 
fprintf(stdout, "write %d in %d: %*s\n", to_copy, block, to_copy, src );
#endif                                                                
    memcpy( &(*block_ptr)[ 0 ], src, to_copy );                       
   52906:	2f0b           	movel %a3,%sp@-                             
   52908:	2f10           	movel %a0@,%sp@-                            
    src += to_copy;                                                   
   5290a:	d7c2           	addal %d2,%a3                               
    if ( !block_ptr )                                                 
      return copied;                                                  
#if 0                                                                 
fprintf(stdout, "write %d in %d: %*s\n", to_copy, block, to_copy, src );
#endif                                                                
    memcpy( &(*block_ptr)[ 0 ], src, to_copy );                       
   5290c:	4e95           	jsr %a5@                                    
  /*                                                                  
   *  Phase 2: all of zero of more blocks                             
   */                                                                 
                                                                      
  to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK;                             
  while ( my_length >= IMFS_MEMFILE_BYTES_PER_BLOCK ) {               
   5290e:	4fef 000c      	lea %sp@(12),%sp                            
   52912:	b6b9 0006 4654 	cmpl 64654 <imfs_memfile_bytes_per_block>,%d3
   52918:	64d0           	bccs 528ea <IMFS_memfile_write+0xe0>        
   */                                                                 
                                                                      
  assert( my_length < IMFS_MEMFILE_BYTES_PER_BLOCK );                 
                                                                      
  to_copy = my_length;                                                
  if ( my_length ) {                                                  
   5291a:	4a83           	tstl %d3                                    
   5291c:	672a           	beqs 52948 <IMFS_memfile_write+0x13e>       
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
   5291e:	42a7           	clrl %sp@-                                  
   52920:	2f04           	movel %d4,%sp@-                             
   52922:	2f0a           	movel %a2,%sp@-                             
   52924:	4eb9 0005 2020 	jsr 52020 <IMFS_memfile_get_block_pointer>  
    assert( block_ptr );                                              
   5292a:	4fef 000c      	lea %sp@(12),%sp                            
   5292e:	4a80           	tstl %d0                                    
   52930:	6700 0128      	beqw 52a5a <IMFS_memfile_write+0x250>       
    if ( !block_ptr )                                                 
      return copied;                                                  
#if 0                                                                 
fprintf(stdout, "write %d in %d: %*s\n", to_copy, block, to_copy, src );
#endif                                                                
    memcpy( &(*block_ptr)[ 0 ], src, my_length );                     
   52934:	2f03           	movel %d3,%sp@-                             
   52936:	2040           	moveal %d0,%a0                              
    my_length = 0;                                                    
    copied += to_copy;                                                
   52938:	da83           	addl %d3,%d5                                
    if ( !block_ptr )                                                 
      return copied;                                                  
#if 0                                                                 
fprintf(stdout, "write %d in %d: %*s\n", to_copy, block, to_copy, src );
#endif                                                                
    memcpy( &(*block_ptr)[ 0 ], src, my_length );                     
   5293a:	2f0b           	movel %a3,%sp@-                             
   5293c:	2f10           	movel %a0@,%sp@-                            
   5293e:	4eb9 0005 4bd8 	jsr 54bd8 <memcpy>                          
    my_length = 0;                                                    
    copied += to_copy;                                                
   52944:	4fef 000c      	lea %sp@(12),%sp                            
  }                                                                   
                                                                      
  IMFS_mtime_ctime_update( the_jnode );                               
   52948:	42a7           	clrl %sp@-                                  
   5294a:	486e fff8      	pea %fp@(-8)                                
   5294e:	4eb9 0004 4060 	jsr 44060 <gettimeofday>                    
   52954:	202e fff8      	movel %fp@(-8),%d0                          
                                                                      
  return copied;                                                      
   52958:	508f           	addql #8,%sp                                
    memcpy( &(*block_ptr)[ 0 ], src, my_length );                     
    my_length = 0;                                                    
    copied += to_copy;                                                
  }                                                                   
                                                                      
  IMFS_mtime_ctime_update( the_jnode );                               
   5295a:	2540 0044      	movel %d0,%a2@(68)                          
   5295e:	2540 0040      	movel %d0,%a2@(64)                          
                                                                      
  return copied;                                                      
}                                                                     
   52962:	2005           	movel %d5,%d0                               
   52964:	4cee 3cfc ffd0 	moveml %fp@(-48),%d2-%d7/%a2-%a5            
   5296a:	4e5e           	unlk %fp                                    
   5296c:	4e75           	rts                                         
   *  Phase 1: possibly the last part of one block                    
   */                                                                 
                                                                      
  start_offset = start % IMFS_MEMFILE_BYTES_PER_BLOCK;                
  block = start / IMFS_MEMFILE_BYTES_PER_BLOCK;                       
  if ( start_offset )  {                                              
   5296e:	264d           	moveal %a5,%a3                              
   52970:	4285           	clrl %d5                                    
   52972:	6000 ff66      	braw 528da <IMFS_memfile_write+0xd0>        
   *  in memory file, then extend the length.                         
   */                                                                 
                                                                      
  last_byte = start + length;                                         
  if ( last_byte > the_jnode->info.file.size ) {                      
    status = IMFS_memfile_extend( the_jnode, last_byte );             
   52976:	2f08           	movel %a0,%sp@-                             
   52978:	2f00           	movel %d0,%sp@-                             
   5297a:	2f0a           	movel %a2,%sp@-                             
   5297c:	4eb9 0005 2592 	jsr 52592 <IMFS_memfile_extend>             
    if ( status )                                                     
   52982:	4fef 000c      	lea %sp@(12),%sp                            
   52986:	4a80           	tstl %d0                                    
   52988:	6700 fed0      	beqw 5285a <IMFS_memfile_write+0x50>        
      rtems_set_errno_and_return_minus_one( ENOSPC );                 
   5298c:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         <== NOT EXECUTED
   52992:	7aff           	moveq #-1,%d5                               <== NOT EXECUTED
   52994:	781c           	moveq #28,%d4                               <== NOT EXECUTED
   52996:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  }                                                                   
                                                                      
  IMFS_mtime_ctime_update( the_jnode );                               
                                                                      
  return copied;                                                      
}                                                                     
   52998:	2005           	movel %d5,%d0                               <== NOT EXECUTED
                                                                      
  last_byte = start + length;                                         
  if ( last_byte > the_jnode->info.file.size ) {                      
    status = IMFS_memfile_extend( the_jnode, last_byte );             
    if ( status )                                                     
      rtems_set_errno_and_return_minus_one( ENOSPC );                 
   5299a:	2084           	movel %d4,%a0@                              <== NOT EXECUTED
  }                                                                   
                                                                      
  IMFS_mtime_ctime_update( the_jnode );                               
                                                                      
  return copied;                                                      
}                                                                     
   5299c:	4cee 3cfc ffd0 	moveml %fp@(-48),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   529a2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   529a4:	4e75           	rts                                         <== NOT EXECUTED
   */                                                                 
                                                                      
  start_offset = start % IMFS_MEMFILE_BYTES_PER_BLOCK;                
  block = start / IMFS_MEMFILE_BYTES_PER_BLOCK;                       
  if ( start_offset )  {                                              
    to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK - start_offset;            
   529a6:	2403           	movel %d3,%d2                               
    if ( !block_ptr )                                                 
      return copied;                                                  
#if 0                                                                 
fprintf(stdout, "write %d at %d in %d: %*s\n", to_copy, start_offset, block, to_copy, src );
#endif                                                                
    memcpy( &(*block_ptr)[ start_offset ], src, to_copy );            
   529a8:	2040           	moveal %d0,%a0                              
    src += to_copy;                                                   
   529aa:	47f5 2800      	lea %a5@(00000000,%d2:l),%a3                
    block++;                                                          
    my_length -= to_copy;                                             
   529ae:	9682           	subl %d2,%d3                                
    copied += to_copy;                                                
   529b0:	2a02           	movel %d2,%d5                               
#if 0                                                                 
fprintf(stdout, "write %d at %d in %d: %*s\n", to_copy, start_offset, block, to_copy, src );
#endif                                                                
    memcpy( &(*block_ptr)[ start_offset ], src, to_copy );            
    src += to_copy;                                                   
    block++;                                                          
   529b2:	5284           	addql #1,%d4                                
    if ( !block_ptr )                                                 
      return copied;                                                  
#if 0                                                                 
fprintf(stdout, "write %d at %d in %d: %*s\n", to_copy, start_offset, block, to_copy, src );
#endif                                                                
    memcpy( &(*block_ptr)[ start_offset ], src, to_copy );            
   529b4:	2f02           	movel %d2,%sp@-                             
   529b6:	2f0d           	movel %a5,%sp@-                             
   529b8:	de90           	addl %a0@,%d7                               
   529ba:	2f07           	movel %d7,%sp@-                             
   529bc:	4eb9 0005 4bd8 	jsr 54bd8 <memcpy>                          
    src += to_copy;                                                   
    block++;                                                          
    my_length -= to_copy;                                             
    copied += to_copy;                                                
   529c2:	2439 0006 4654 	movel 64654 <imfs_memfile_bytes_per_block>,%d2
   529c8:	4fef 000c      	lea %sp@(12),%sp                            
   529cc:	6000 ff0c      	braw 528da <IMFS_memfile_write+0xd0>        
   *  If there is nothing to write, then quick exit.                  
   */                                                                 
                                                                      
  my_length = length;                                                 
  if ( !my_length )                                                   
    rtems_set_errno_and_return_minus_one( EINVAL );                   
   529d0:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         <== NOT EXECUTED
   529d6:	7aff           	moveq #-1,%d5                               <== NOT EXECUTED
   529d8:	7c16           	moveq #22,%d6                               <== NOT EXECUTED
   529da:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  }                                                                   
                                                                      
  IMFS_mtime_ctime_update( the_jnode );                               
                                                                      
  return copied;                                                      
}                                                                     
   529dc:	2005           	movel %d5,%d0                               <== NOT EXECUTED
   *  If there is nothing to write, then quick exit.                  
   */                                                                 
                                                                      
  my_length = length;                                                 
  if ( !my_length )                                                   
    rtems_set_errno_and_return_minus_one( EINVAL );                   
   529de:	2086           	movel %d6,%a0@                              <== NOT EXECUTED
  }                                                                   
                                                                      
  IMFS_mtime_ctime_update( the_jnode );                               
                                                                      
  return copied;                                                      
}                                                                     
   529e0:	4cee 3cfc ffd0 	moveml %fp@(-48),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   529e6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   529e8:	4e75           	rts                                         <== NOT EXECUTED
   */                                                                 
                                                                      
  to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK;                             
  while ( my_length >= IMFS_MEMFILE_BYTES_PER_BLOCK ) {               
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
   529ea:	4879 0006 2c10 	pea 62c10 <CSWTCH.8+0x90>                   <== NOT EXECUTED
   529f0:	4879 0006 2c89 	pea 62c89 <__FUNCTION__.6253>               <== NOT EXECUTED
   529f6:	4878 0330      	pea 330 <DBL_MANT_DIG+0x2fb>                <== NOT EXECUTED
   529fa:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   52a00:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
                                                                      
  assert( the_jnode );                                                
  if ( !the_jnode )                                                   
    rtems_set_errno_and_return_minus_one( EIO );                      
                                                                      
  assert( the_jnode->type == IMFS_MEMORY_FILE );                      
   52a06:	4879 0006 2be0 	pea 62be0 <CSWTCH.8+0x60>                   <== NOT EXECUTED
   52a0c:	4879 0006 2c89 	pea 62c89 <__FUNCTION__.6253>               <== NOT EXECUTED
   52a12:	4878 02e7      	pea 2e7 <DBL_MANT_DIG+0x2b2>                <== NOT EXECUTED
   52a16:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   52a1c:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Perform internal consistency checks                             
   */                                                                 
                                                                      
  assert( the_jnode );                                                
   52a22:	4879 0006 2b90 	pea 62b90 <CSWTCH.8+0x10>                   <== NOT EXECUTED
   52a28:	4879 0006 2c89 	pea 62c89 <__FUNCTION__.6253>               <== NOT EXECUTED
   52a2e:	4878 02e3      	pea 2e3 <DBL_MANT_DIG+0x2ae>                <== NOT EXECUTED
   52a32:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   52a38:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Error check arguments                                           
   */                                                                 
                                                                      
  assert( source );                                                   
   52a3e:	4879 0006 22f3 	pea 622f3 <IMFS_ops+0x2d3>                  <== NOT EXECUTED
   52a44:	4879 0006 2c89 	pea 62c89 <__FUNCTION__.6253>               <== NOT EXECUTED
   52a4a:	4878 02ef      	pea 2ef <DBL_MANT_DIG+0x2ba>                <== NOT EXECUTED
   52a4e:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   52a54:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
  assert( my_length < IMFS_MEMFILE_BYTES_PER_BLOCK );                 
                                                                      
  to_copy = my_length;                                                
  if ( my_length ) {                                                  
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
   52a5a:	4879 0006 2c10 	pea 62c10 <CSWTCH.8+0x90>                   <== NOT EXECUTED
   52a60:	4879 0006 2c89 	pea 62c89 <__FUNCTION__.6253>               <== NOT EXECUTED
   52a66:	4878 0346      	pea 346 <DBL_MANT_DIG+0x311>                <== NOT EXECUTED
   52a6a:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   52a70:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
  if ( start_offset )  {                                              
    to_copy = IMFS_MEMFILE_BYTES_PER_BLOCK - start_offset;            
    if ( to_copy > my_length )                                        
      to_copy = my_length;                                            
    block_ptr = IMFS_memfile_get_block_pointer( the_jnode, block, 0 );
    assert( block_ptr );                                              
   52a76:	4879 0006 2c10 	pea 62c10 <CSWTCH.8+0x90>                   <== NOT EXECUTED
   52a7c:	4879 0006 2c89 	pea 62c89 <__FUNCTION__.6253>               <== NOT EXECUTED
   52a82:	4878 031c      	pea 31c <DBL_MANT_DIG+0x2e7>                <== NOT EXECUTED
   52a86:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   52a8c:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
                                                                      
0004a20c <IMFS_mknod>:                                                
  const char                        *token,      /* IN */             
  mode_t                             mode,       /* IN */             
  dev_t                              dev,        /* IN */             
  rtems_filesystem_location_info_t  *pathloc     /* IN/OUT */         
)                                                                     
{                                                                     
   4a20c:	4e56 ffb0      	linkw %fp,#-80                              
   4a210:	48d7 007c      	moveml %d2-%d6,%sp@                         
   4a214:	242e 0008      	movel %fp@(8),%d2                           
  IMFS_jnode_t      *new_node;                                        
  int                result;                                          
  char               new_name[ IMFS_NAME_MAX + 1 ];                   
  IMFS_types_union   info;                                            
                                                                      
  IMFS_get_token( token, strlen( token ), new_name, &result );        
   4a218:	260e           	movel %fp,%d3                               
   4a21a:	0683 ffff ffc7 	addil #-57,%d3                              
   4a220:	2f02           	movel %d2,%sp@-                             
  const char                        *token,      /* IN */             
  mode_t                             mode,       /* IN */             
  dev_t                              dev,        /* IN */             
  rtems_filesystem_location_info_t  *pathloc     /* IN/OUT */         
)                                                                     
{                                                                     
   4a222:	282e 000c      	movel %fp@(12),%d4                          
  IMFS_jnode_t      *new_node;                                        
  int                result;                                          
  char               new_name[ IMFS_NAME_MAX + 1 ];                   
  IMFS_types_union   info;                                            
                                                                      
  IMFS_get_token( token, strlen( token ), new_name, &result );        
   4a226:	4eb9 0004 ffc0 	jsr 4ffc0 <strlen>                          
   4a22c:	588f           	addql #4,%sp                                
   4a22e:	486e fffc      	pea %fp@(-4)                                
  const char                        *token,      /* IN */             
  mode_t                             mode,       /* IN */             
  dev_t                              dev,        /* IN */             
  rtems_filesystem_location_info_t  *pathloc     /* IN/OUT */         
)                                                                     
{                                                                     
   4a232:	2c2e 0010      	movel %fp@(16),%d6                          
  IMFS_jnode_t      *new_node;                                        
  int                result;                                          
  char               new_name[ IMFS_NAME_MAX + 1 ];                   
  IMFS_types_union   info;                                            
                                                                      
  IMFS_get_token( token, strlen( token ), new_name, &result );        
   4a236:	2f03           	movel %d3,%sp@-                             
  const char                        *token,      /* IN */             
  mode_t                             mode,       /* IN */             
  dev_t                              dev,        /* IN */             
  rtems_filesystem_location_info_t  *pathloc     /* IN/OUT */         
)                                                                     
{                                                                     
   4a238:	2a2e 0014      	movel %fp@(20),%d5                          
  IMFS_jnode_t      *new_node;                                        
  int                result;                                          
  char               new_name[ IMFS_NAME_MAX + 1 ];                   
  IMFS_types_union   info;                                            
                                                                      
  IMFS_get_token( token, strlen( token ), new_name, &result );        
   4a23c:	2f00           	movel %d0,%sp@-                             
   4a23e:	2f02           	movel %d2,%sp@-                             
   4a240:	4eb9 0004 9fd4 	jsr 49fd4 <IMFS_get_token>                  
                                                                      
  /*                                                                  
   *  Figure out what type of IMFS node this is.                      
   */                                                                 
  if ( S_ISDIR(mode) )                                                
   4a246:	4fef 0010      	lea %sp@(16),%sp                            
   4a24a:	2004           	movel %d4,%d0                               
   4a24c:	0280 0000 f000 	andil #61440,%d0                            
   4a252:	0c80 0000 4000 	cmpil #16384,%d0                            
   4a258:	675e           	beqs 4a2b8 <IMFS_mknod+0xac>                
    type = IMFS_DIRECTORY;                                            
  else if ( S_ISREG(mode) )                                           
   4a25a:	0c80 0000 8000 	cmpil #32768,%d0                            
   4a260:	6750           	beqs 4a2b2 <IMFS_mknod+0xa6>                
    type = IMFS_MEMORY_FILE;                                          
  else if ( S_ISBLK(mode) || S_ISCHR(mode) ) {                        
   4a262:	0c80 0000 6000 	cmpil #24576,%d0                            
   4a268:	673c           	beqs 4a2a6 <IMFS_mknod+0x9a>                
   4a26a:	0c80 0000 2000 	cmpil #8192,%d0                             
   4a270:	6734           	beqs 4a2a6 <IMFS_mknod+0x9a>                
    type = IMFS_DEVICE;                                               
    rtems_filesystem_split_dev_t( dev, info.device.major, info.device.minor );
  }                                                                   
  else if (S_ISFIFO(mode))                                            
   4a272:	0c80 0000 1000 	cmpil #4096,%d0                             
   4a278:	6642           	bnes 4a2bc <IMFS_mknod+0xb0>                
   4a27a:	303c 0007      	movew #7,%d0                                
   *        was ONLY passed a NULL when we created the root node.  We 
   *        added a new IMFS_create_root_node() so this path no longer
   *        existed.  The result was simpler code which should not have
   *        this path.                                                
   */                                                                 
  new_node = IMFS_create_node(                                        
   4a27e:	486e ffe8      	pea %fp@(-24)                               
   4a282:	2f04           	movel %d4,%sp@-                             
   4a284:	2f03           	movel %d3,%sp@-                             
   4a286:	2f00           	movel %d0,%sp@-                             
   4a288:	2f2e 0018      	movel %fp@(24),%sp@-                        
   4a28c:	4eb9 0004 d22c 	jsr 4d22c <IMFS_create_node>                
    new_name,                                                         
    mode,                                                             
    &info                                                             
  );                                                                  
                                                                      
  if ( !new_node )                                                    
   4a292:	4fef 0014      	lea %sp@(20),%sp                            
   4a296:	4a80           	tstl %d0                                    
   4a298:	673a           	beqs 4a2d4 <IMFS_mknod+0xc8>                
   4a29a:	4280           	clrl %d0                                    
    rtems_set_errno_and_return_minus_one( ENOMEM );                   
                                                                      
  return 0;                                                           
}                                                                     
   4a29c:	4cee 007c ffb0 	moveml %fp@(-80),%d2-%d6                    
   4a2a2:	4e5e           	unlk %fp                                    
   4a2a4:	4e75           	rts                                         
    type = IMFS_DIRECTORY;                                            
  else if ( S_ISREG(mode) )                                           
    type = IMFS_MEMORY_FILE;                                          
  else if ( S_ISBLK(mode) || S_ISCHR(mode) ) {                        
    type = IMFS_DEVICE;                                               
    rtems_filesystem_split_dev_t( dev, info.device.major, info.device.minor );
   4a2a6:	2d46 ffe8      	movel %d6,%fp@(-24)                         
   4a2aa:	7002           	moveq #2,%d0                                
   4a2ac:	2d45 ffec      	movel %d5,%fp@(-20)                         
   */                                                                 
  if ( S_ISDIR(mode) )                                                
    type = IMFS_DIRECTORY;                                            
  else if ( S_ISREG(mode) )                                           
    type = IMFS_MEMORY_FILE;                                          
  else if ( S_ISBLK(mode) || S_ISCHR(mode) ) {                        
   4a2b0:	60cc           	bras 4a27e <IMFS_mknod+0x72>                
  /*                                                                  
   *  Figure out what type of IMFS node this is.                      
   */                                                                 
  if ( S_ISDIR(mode) )                                                
    type = IMFS_DIRECTORY;                                            
  else if ( S_ISREG(mode) )                                           
   4a2b2:	303c 0005      	movew #5,%d0                                
   4a2b6:	60c6           	bras 4a27e <IMFS_mknod+0x72>                
    rtems_filesystem_split_dev_t( dev, info.device.major, info.device.minor );
  }                                                                   
  else if (S_ISFIFO(mode))                                            
    type = IMFS_FIFO;                                                 
  else  {                                                             
    rtems_set_errno_and_return_minus_one( EINVAL );                   
   4a2b8:	7001           	moveq #1,%d0                                
   4a2ba:	60c2           	bras 4a27e <IMFS_mknod+0x72>                
   4a2bc:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   4a2c2:	7416           	moveq #22,%d2                               <== NOT EXECUTED
   4a2c4:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4a2c6:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   4a2c8:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
                                                                      
  if ( !new_node )                                                    
    rtems_set_errno_and_return_minus_one( ENOMEM );                   
                                                                      
  return 0;                                                           
}                                                                     
   4a2ca:	4cee 007c ffb0 	moveml %fp@(-80),%d2-%d6                    <== NOT EXECUTED
   4a2d0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4a2d2:	4e75           	rts                                         <== NOT EXECUTED
    mode,                                                             
    &info                                                             
  );                                                                  
                                                                      
  if ( !new_node )                                                    
    rtems_set_errno_and_return_minus_one( ENOMEM );                   
   4a2d4:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   4a2da:	720c           	moveq #12,%d1                               <== NOT EXECUTED
   4a2dc:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4a2de:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  return 0;                                                           
}                                                                     
   4a2e0:	4cee 007c ffb0 	moveml %fp@(-80),%d2-%d6                    <== NOT EXECUTED
    mode,                                                             
    &info                                                             
  );                                                                  
                                                                      
  if ( !new_node )                                                    
    rtems_set_errno_and_return_minus_one( ENOMEM );                   
   4a2e6:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
                                                                      
  return 0;                                                           
}                                                                     
   4a2e8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004350c <IMFS_mount>:                                                
                                                                      
  /*                                                                  
   *  Is the node that we are mounting onto a directory node ?        
   */                                                                 
                                                                      
  if ( node->type != IMFS_DIRECTORY )                                 
   4350c:	7001           	moveq #1,%d0                                
#include <rtems/seterr.h>                                             
                                                                      
int IMFS_mount(                                                       
  rtems_filesystem_mount_table_entry_t *mt_entry                      
)                                                                     
{                                                                     
   4350e:	4e56 0000      	linkw %fp,#0                                
   43512:	226e 0008      	moveal %fp@(8),%a1                          
  IMFS_jnode_t  *node;                                                
                                                                      
  node = mt_entry->mt_point_node.node_access;                         
   43516:	2069 0008      	moveal %a1@(8),%a0                          
                                                                      
  /*                                                                  
   *  Is the node that we are mounting onto a directory node ?        
   */                                                                 
                                                                      
  if ( node->type != IMFS_DIRECTORY )                                 
   4351a:	b0a8 0048      	cmpl %a0@(72),%d0                           
   4351e:	660a           	bnes 4352a <IMFS_mount+0x1e>                
  /*                                                                  
   *  Set mt_fs pointer to point to the mount table entry for         
   *  the mounted file system.                                        
   */                                                                 
                                                                      
  node->info.directory.mt_fs = mt_entry;                              
   43520:	2149 0058      	movel %a1,%a0@(88)                          
   43524:	4280           	clrl %d0                                    
  return 0;                                                           
}                                                                     
   43526:	4e5e           	unlk %fp                                    
   43528:	4e75           	rts                                         
  /*                                                                  
   *  Is the node that we are mounting onto a directory node ?        
   */                                                                 
                                                                      
  if ( node->type != IMFS_DIRECTORY )                                 
    rtems_set_errno_and_return_minus_one( ENOTDIR );                  
   4352a:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         <== NOT EXECUTED
   43530:	7214           	moveq #20,%d1                               <== NOT EXECUTED
   43532:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   43534:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   *  the mounted file system.                                        
   */                                                                 
                                                                      
  node->info.directory.mt_fs = mt_entry;                              
  return 0;                                                           
}                                                                     
   43536:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  /*                                                                  
   *  Is the node that we are mounting onto a directory node ?        
   */                                                                 
                                                                      
  if ( node->type != IMFS_DIRECTORY )                                 
    rtems_set_errno_and_return_minus_one( ENOTDIR );                  
   43538:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
   *  the mounted file system.                                        
   */                                                                 
                                                                      
  node->info.directory.mt_fs = mt_entry;                              
  return 0;                                                           
}                                                                     
                                                                      
00043bd2 <IMFS_print_jnode>:                                          
 */                                                                   
                                                                      
void IMFS_print_jnode(                                                
  IMFS_jnode_t *the_jnode                                             
)                                                                     
{                                                                     
   43bd2:	4e56 0000      	linkw %fp,#0                                
   43bd6:	2f0a           	movel %a2,%sp@-                             
   43bd8:	246e 0008      	moveal %fp@(8),%a2                          
  assert( the_jnode );                                                
   43bdc:	4a8a           	tstl %a2                                    
   43bde:	6700 01ee      	beqw 43dce <IMFS_print_jnode+0x1fc>         
                                                                      
  fprintf(stdout, "%s", the_jnode->name );                            
   43be2:	2079 0006 4290 	moveal 64290 <_impure_ptr>,%a0              
   43be8:	2f28 0008      	movel %a0@(8),%sp@-                         
   43bec:	486a 000c      	pea %a2@(12)                                
   43bf0:	4eb9 0005 37c0 	jsr 537c0 <fputs>                           
  switch( the_jnode->type ) {                                         
   43bf6:	202a 0048      	movel %a2@(72),%d0                          
   43bfa:	508f           	addql #8,%sp                                
   43bfc:	7207           	moveq #7,%d1                                
   43bfe:	b280           	cmpl %d0,%d1                                
   43c00:	6434           	bccs 43c36 <IMFS_print_jnode+0x64>          
      fprintf(stdout, " FIFO not printed\n" );                        
      assert(0);                                                      
      break;                                                          
                                                                      
    default:                                                          
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
   43c02:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   43c04:	4879 0006 2758 	pea 62758 <IntUartPollCallbacks.6602+0xc8>  <== NOT EXECUTED
   43c0a:	2079 0006 4290 	moveal 64290 <_impure_ptr>,%a0              <== NOT EXECUTED
   43c10:	2f28 0008      	movel %a0@(8),%sp@-                         <== NOT EXECUTED
   43c14:	4eb9 0005 3654 	jsr 53654 <fprintf>                         <== NOT EXECUTED
      assert(0);                                                      
   43c1a:	4879 0006 1e19 	pea 61e19 <rtems_filesystem_mount_table_size+0x309><== NOT EXECUTED
   43c20:	4879 0006 2848 	pea 62848 <__FUNCTION__.6573>               <== NOT EXECUTED
   43c26:	4878 006c      	pea 6c <DBL_MANT_DIG+0x37>                  <== NOT EXECUTED
   43c2a:	4879 0006 26ba 	pea 626ba <IntUartPollCallbacks.6602+0x2a>  <== NOT EXECUTED
   43c30:	4eb9 0004 46bc 	jsr 446bc <__assert_func>                   <== NOT EXECUTED
)                                                                     
{                                                                     
  assert( the_jnode );                                                
                                                                      
  fprintf(stdout, "%s", the_jnode->name );                            
  switch( the_jnode->type ) {                                         
   43c36:	323b 0a08      	movew %pc@(43c40 <IMFS_print_jnode+0x6e>,%d0:l:2),%d1
   43c3a:	48c1           	extl %d1                                    
   43c3c:	4efb 1802      	jmp %pc@(43c40 <IMFS_print_jnode+0x6e>,%d1:l)
   43c40:	ffc2           	0177702                                     <== NOT EXECUTED
   43c42:	0162           	bchg %d0,%a2@-                              <== NOT EXECUTED
   43c44:	012a 00f0      	btst %d0,%a2@(240)                          <== NOT EXECUTED
   43c48:	00b6 0082 004a 	oril #8519754,%d6                           <== NOT EXECUTED
   43c4e:	0010           	020                                         <== NOT EXECUTED
      fprintf(stdout, " links not printed\n" );                       
      assert(0);                                                      
      break;                                                          
                                                                      
    case IMFS_FIFO:                                                   
      fprintf(stdout, " FIFO not printed\n" );                        
   43c50:	2079 0006 4290 	moveal 64290 <_impure_ptr>,%a0              <== NOT EXECUTED
   43c56:	2f28 0008      	movel %a0@(8),%sp@-                         <== NOT EXECUTED
   43c5a:	4878 0012      	pea 12 <INVALID_OPERATION+0x2>              <== NOT EXECUTED
   43c5e:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   43c62:	4879 0006 2745 	pea 62745 <IntUartPollCallbacks.6602+0xb5>  <== NOT EXECUTED
   43c68:	4eb9 0005 4388 	jsr 54388 <fwrite>                          <== NOT EXECUTED
      assert(0);                                                      
   43c6e:	4879 0006 1e19 	pea 61e19 <rtems_filesystem_mount_table_size+0x309><== NOT EXECUTED
   43c74:	4879 0006 2848 	pea 62848 <__FUNCTION__.6573>               <== NOT EXECUTED
   43c7a:	4878 0067      	pea 67 <DBL_MANT_DIG+0x32>                  <== NOT EXECUTED
   43c7e:	4879 0006 26ba 	pea 626ba <IntUartPollCallbacks.6602+0x2a>  <== NOT EXECUTED
   43c84:	4eb9 0004 46bc 	jsr 446bc <__assert_func>                   <== NOT EXECUTED
      fprintf(stdout, " (device %" PRId32 ", %" PRId32 ")",           
        the_jnode->info.device.major, the_jnode->info.device.minor ); 
      break;                                                          
                                                                      
    case IMFS_LINEAR_FILE:                                            
      fprintf(stdout, " (file %" PRId32 " %p)",                       
   43c8a:	2f2a 0054      	movel %a2@(84),%sp@-                        <== NOT EXECUTED
   43c8e:	2f2a 0050      	movel %a2@(80),%sp@-                        <== NOT EXECUTED
   43c92:	4879 0006 2716 	pea 62716 <IntUartPollCallbacks.6602+0x86>  <== NOT EXECUTED
   43c98:	2079 0006 4290 	moveal 64290 <_impure_ptr>,%a0              <== NOT EXECUTED
   43c9e:	2f28 0008      	movel %a0@(8),%sp@-                         <== NOT EXECUTED
   43ca2:	4eb9 0005 3654 	jsr 53654 <fprintf>                         <== NOT EXECUTED
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
}                                                                     
   43ca8:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
    default:                                                          
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
   43cac:	203c 0006 2e22 	movel #405026,%d0                           <== NOT EXECUTED
    case IMFS_LINEAR_FILE:                                            
      fprintf(stdout, " (file %" PRId32 " %p)",                       
        (uint32_t)the_jnode->info.linearfile.size,                    
        the_jnode->info.linearfile.direct                             
      );                                                              
      break;                                                          
   43cb2:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
    default:                                                          
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
   43cb6:	2d40 0008      	movel %d0,%fp@(8)                           <== NOT EXECUTED
}                                                                     
   43cba:	4e5e           	unlk %fp                                    <== NOT EXECUTED
    default:                                                          
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
   43cbc:	4ef9 0005 50b8 	jmp 550b8 <puts>                            <== NOT EXECUTED
        the_jnode->info.file.indirect,                                
        the_jnode->info.file.doubly_indirect,                         
        the_jnode->info.file.triply_indirect                          
      );                                                              
#else                                                                 
      fprintf(stdout, " (file %" PRId32 ")",                          
   43cc2:	2f2a 0050      	movel %a2@(80),%sp@-                        
   43cc6:	4879 0006 2725 	pea 62725 <IntUartPollCallbacks.6602+0x95>  
   43ccc:	2079 0006 4290 	moveal 64290 <_impure_ptr>,%a0              
   43cd2:	2f28 0008      	movel %a0@(8),%sp@-                         
   43cd6:	4eb9 0005 3654 	jsr 53654 <fprintf>                         
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
}                                                                     
   43cdc:	246e fffc      	moveal %fp@(-4),%a2                         
    default:                                                          
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
   43ce0:	203c 0006 2e22 	movel #405026,%d0                           
      );                                                              
#else                                                                 
      fprintf(stdout, " (file %" PRId32 ")",                          
        (uint32_t)the_jnode->info.file.size );                        
#endif                                                                
      break;                                                          
   43ce6:	4fef 000c      	lea %sp@(12),%sp                            
    default:                                                          
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
   43cea:	2d40 0008      	movel %d0,%fp@(8)                           
}                                                                     
   43cee:	4e5e           	unlk %fp                                    
    default:                                                          
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
   43cf0:	4ef9 0005 50b8 	jmp 550b8 <puts>                            
      fprintf(stdout, " links not printed\n" );                       
      assert(0);                                                      
      break;                                                          
                                                                      
    case IMFS_SYM_LINK:                                               
      fprintf(stdout, " links not printed\n" );                       
   43cf6:	2079 0006 4290 	moveal 64290 <_impure_ptr>,%a0              <== NOT EXECUTED
   43cfc:	2f28 0008      	movel %a0@(8),%sp@-                         <== NOT EXECUTED
   43d00:	4878 0013      	pea 13 <INVALID_OPERATION+0x3>              <== NOT EXECUTED
   43d04:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   43d08:	4879 0006 2731 	pea 62731 <IntUartPollCallbacks.6602+0xa1>  <== NOT EXECUTED
   43d0e:	4eb9 0005 4388 	jsr 54388 <fwrite>                          <== NOT EXECUTED
      assert(0);                                                      
   43d14:	4879 0006 1e19 	pea 61e19 <rtems_filesystem_mount_table_size+0x309><== NOT EXECUTED
   43d1a:	4879 0006 2848 	pea 62848 <__FUNCTION__.6573>               <== NOT EXECUTED
   43d20:	4878 0062      	pea 62 <DBL_MANT_DIG+0x2d>                  <== NOT EXECUTED
   43d24:	4879 0006 26ba 	pea 626ba <IntUartPollCallbacks.6602+0x2a>  <== NOT EXECUTED
   43d2a:	4eb9 0004 46bc 	jsr 446bc <__assert_func>                   <== NOT EXECUTED
        (uint32_t)the_jnode->info.file.size );                        
#endif                                                                
      break;                                                          
                                                                      
    case IMFS_HARD_LINK:                                              
      fprintf(stdout, " links not printed\n" );                       
   43d30:	2079 0006 4290 	moveal 64290 <_impure_ptr>,%a0              <== NOT EXECUTED
   43d36:	2f28 0008      	movel %a0@(8),%sp@-                         <== NOT EXECUTED
   43d3a:	4878 0013      	pea 13 <INVALID_OPERATION+0x3>              <== NOT EXECUTED
   43d3e:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   43d42:	4879 0006 2731 	pea 62731 <IntUartPollCallbacks.6602+0xa1>  <== NOT EXECUTED
   43d48:	4eb9 0005 4388 	jsr 54388 <fwrite>                          <== NOT EXECUTED
      assert(0);                                                      
   43d4e:	4879 0006 1e19 	pea 61e19 <rtems_filesystem_mount_table_size+0x309><== NOT EXECUTED
   43d54:	4879 0006 2848 	pea 62848 <__FUNCTION__.6573>               <== NOT EXECUTED
   43d5a:	4878 005d      	pea 5d <DBL_MANT_DIG+0x28>                  <== NOT EXECUTED
   43d5e:	4879 0006 26ba 	pea 626ba <IntUartPollCallbacks.6602+0x2a>  <== NOT EXECUTED
   43d64:	4eb9 0004 46bc 	jsr 446bc <__assert_func>                   <== NOT EXECUTED
    case IMFS_DIRECTORY:                                              
      fprintf(stdout, "/" );                                          
      break;                                                          
                                                                      
    case IMFS_DEVICE:                                                 
      fprintf(stdout, " (device %" PRId32 ", %" PRId32 ")",           
   43d6a:	2f2a 0050      	movel %a2@(80),%sp@-                        
   43d6e:	2f2a 004c      	movel %a2@(76),%sp@-                        
   43d72:	4879 0006 2703 	pea 62703 <IntUartPollCallbacks.6602+0x73>  
   43d78:	2079 0006 4290 	moveal 64290 <_impure_ptr>,%a0              
   43d7e:	2f28 0008      	movel %a0@(8),%sp@-                         
   43d82:	4eb9 0005 3654 	jsr 53654 <fprintf>                         
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
}                                                                     
   43d88:	246e fffc      	moveal %fp@(-4),%a2                         
    default:                                                          
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
   43d8c:	203c 0006 2e22 	movel #405026,%d0                           
      break;                                                          
                                                                      
    case IMFS_DEVICE:                                                 
      fprintf(stdout, " (device %" PRId32 ", %" PRId32 ")",           
        the_jnode->info.device.major, the_jnode->info.device.minor ); 
      break;                                                          
   43d92:	4fef 0010      	lea %sp@(16),%sp                            
    default:                                                          
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
   43d96:	2d40 0008      	movel %d0,%fp@(8)                           
}                                                                     
   43d9a:	4e5e           	unlk %fp                                    
    default:                                                          
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
   43d9c:	4ef9 0005 50b8 	jmp 550b8 <puts>                            
  assert( the_jnode );                                                
                                                                      
  fprintf(stdout, "%s", the_jnode->name );                            
  switch( the_jnode->type ) {                                         
    case IMFS_DIRECTORY:                                              
      fprintf(stdout, "/" );                                          
   43da2:	2079 0006 4290 	moveal 64290 <_impure_ptr>,%a0              
   43da8:	2f28 0008      	movel %a0@(8),%sp@-                         
   43dac:	4878 002f      	pea 2f <OPER2+0x1b>                         
   43db0:	4eb9 0005 3694 	jsr 53694 <fputc>                           
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
}                                                                     
   43db6:	246e fffc      	moveal %fp@(-4),%a2                         
    default:                                                          
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
   43dba:	203c 0006 2e22 	movel #405026,%d0                           
                                                                      
  fprintf(stdout, "%s", the_jnode->name );                            
  switch( the_jnode->type ) {                                         
    case IMFS_DIRECTORY:                                              
      fprintf(stdout, "/" );                                          
      break;                                                          
   43dc0:	508f           	addql #8,%sp                                
    default:                                                          
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
   43dc2:	2d40 0008      	movel %d0,%fp@(8)                           
}                                                                     
   43dc6:	4e5e           	unlk %fp                                    
    default:                                                          
      fprintf(stdout, " bad type %d\n", the_jnode->type );            
      assert(0);                                                      
      break;                                                          
  }                                                                   
  puts("");                                                           
   43dc8:	4ef9 0005 50b8 	jmp 550b8 <puts>                            
                                                                      
void IMFS_print_jnode(                                                
  IMFS_jnode_t *the_jnode                                             
)                                                                     
{                                                                     
  assert( the_jnode );                                                
   43dce:	4879 0006 26b0 	pea 626b0 <IntUartPollCallbacks.6602+0x20>  <== NOT EXECUTED
   43dd4:	4879 0006 2848 	pea 62848 <__FUNCTION__.6573>               <== NOT EXECUTED
   43dda:	4878 0038      	pea 38 <DBL_MANT_DIG+0x3>                   <== NOT EXECUTED
   43dde:	4879 0006 26ba 	pea 626ba <IntUartPollCallbacks.6602+0x2a>  <== NOT EXECUTED
   43de4:	4eb9 0004 46bc 	jsr 446bc <__assert_func>                   <== NOT EXECUTED
                                                                      
00043550 <IMFS_readlink>:                                             
  IMFS_jnode_t      *node;                                            
  int                i;                                               
                                                                      
  node = loc->node_access;                                            
                                                                      
  if ( node->type != IMFS_SYM_LINK )                                  
   43550:	7004           	moveq #4,%d0                                
int IMFS_readlink(                                                    
  rtems_filesystem_location_info_t  *loc,                             
 char                               *buf,         /* OUT */           
 size_t                             bufsize                           
)                                                                     
{                                                                     
   43552:	4e56 fff4      	linkw %fp,#-12                              
   43556:	206e 0008      	moveal %fp@(8),%a0                          
   4355a:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     
  IMFS_jnode_t      *node;                                            
  int                i;                                               
                                                                      
  node = loc->node_access;                                            
   4355e:	2450           	moveal %a0@,%a2                             
int IMFS_readlink(                                                    
  rtems_filesystem_location_info_t  *loc,                             
 char                               *buf,         /* OUT */           
 size_t                             bufsize                           
)                                                                     
{                                                                     
   43560:	266e 000c      	moveal %fp@(12),%a3                         
   43564:	242e 0010      	movel %fp@(16),%d2                          
  IMFS_jnode_t      *node;                                            
  int                i;                                               
                                                                      
  node = loc->node_access;                                            
                                                                      
  if ( node->type != IMFS_SYM_LINK )                                  
   43568:	b0aa 0048      	cmpl %a2@(72),%d0                           
   4356c:	663c           	bnes 435aa <IMFS_readlink+0x5a>             
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  for( i=0; ((i<bufsize) && (node->info.sym_link.name[i] != '\0')); i++ )
   4356e:	4a82           	tstl %d2                                    
   43570:	672c           	beqs 4359e <IMFS_readlink+0x4e>             
   43572:	206a 004c      	moveal %a2@(76),%a0                         
   43576:	1210           	moveb %a0@,%d1                              
   43578:	6724           	beqs 4359e <IMFS_readlink+0x4e>             
  int                i;                                               
                                                                      
  node = loc->node_access;                                            
                                                                      
  if ( node->type != IMFS_SYM_LINK )                                  
    rtems_set_errno_and_return_minus_one( EINVAL );                   
   4357a:	91c8           	subal %a0,%a0                               
   4357c:	4280           	clrl %d0                                    
                                                                      
  for( i=0; ((i<bufsize) && (node->info.sym_link.name[i] != '\0')); i++ )
   4357e:	5280           	addql #1,%d0                                
    buf[i] = node->info.sym_link.name[i];                             
   43580:	1781 8800      	moveb %d1,%a3@(00000000,%a0:l)              
  node = loc->node_access;                                            
                                                                      
  if ( node->type != IMFS_SYM_LINK )                                  
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  for( i=0; ((i<bufsize) && (node->info.sym_link.name[i] != '\0')); i++ )
   43584:	2040           	moveal %d0,%a0                              
   43586:	b082           	cmpl %d2,%d0                                
   43588:	640a           	bccs 43594 <IMFS_readlink+0x44>             
   4358a:	226a 004c      	moveal %a2@(76),%a1                         
   4358e:	1231 0800      	moveb %a1@(00000000,%d0:l),%d1              
   43592:	66ea           	bnes 4357e <IMFS_readlink+0x2e>             
    buf[i] = node->info.sym_link.name[i];                             
                                                                      
  return i;                                                           
}                                                                     
   43594:	4cee 0c04 fff4 	moveml %fp@(-12),%d2/%a2-%a3                
   4359a:	4e5e           	unlk %fp                                    
   4359c:	4e75           	rts                                         
  node = loc->node_access;                                            
                                                                      
  if ( node->type != IMFS_SYM_LINK )                                  
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  for( i=0; ((i<bufsize) && (node->info.sym_link.name[i] != '\0')); i++ )
   4359e:	4280           	clrl %d0                                    <== NOT EXECUTED
    buf[i] = node->info.sym_link.name[i];                             
                                                                      
  return i;                                                           
}                                                                     
   435a0:	4cee 0c04 fff4 	moveml %fp@(-12),%d2/%a2-%a3                <== NOT EXECUTED
   435a6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   435a8:	4e75           	rts                                         <== NOT EXECUTED
  int                i;                                               
                                                                      
  node = loc->node_access;                                            
                                                                      
  if ( node->type != IMFS_SYM_LINK )                                  
    rtems_set_errno_and_return_minus_one( EINVAL );                   
   435aa:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         <== NOT EXECUTED
   435b0:	7216           	moveq #22,%d1                               <== NOT EXECUTED
   435b2:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   435b4:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  for( i=0; ((i<bufsize) && (node->info.sym_link.name[i] != '\0')); i++ )
    buf[i] = node->info.sym_link.name[i];                             
                                                                      
  return i;                                                           
}                                                                     
   435b6:	4cee 0c04 fff4 	moveml %fp@(-12),%d2/%a2-%a3                <== NOT EXECUTED
  int                i;                                               
                                                                      
  node = loc->node_access;                                            
                                                                      
  if ( node->type != IMFS_SYM_LINK )                                  
    rtems_set_errno_and_return_minus_one( EINVAL );                   
   435bc:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
                                                                      
  for( i=0; ((i<bufsize) && (node->info.sym_link.name[i] != '\0')); i++ )
    buf[i] = node->info.sym_link.name[i];                             
                                                                      
  return i;                                                           
}                                                                     
   435be:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
000435c4 <IMFS_rename>:                                               
  rtems_filesystem_location_info_t  *old_parent_loc,  /* IN */        
  rtems_filesystem_location_info_t  *old_loc,         /* IN */        
  rtems_filesystem_location_info_t  *new_parent_loc,  /* IN */        
  const char                        *new_name         /* IN */        
)                                                                     
{                                                                     
   435c4:	4e56 fff8      	linkw %fp,#-8                               <== NOT EXECUTED
  IMFS_jnode_t *the_jnode;                                            
  IMFS_jnode_t *new_parent;                                           
                                                                      
  the_jnode = old_loc->node_access;                                   
   435c8:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
  rtems_filesystem_location_info_t  *old_parent_loc,  /* IN */        
  rtems_filesystem_location_info_t  *old_loc,         /* IN */        
  rtems_filesystem_location_info_t  *new_parent_loc,  /* IN */        
  const char                        *new_name         /* IN */        
)                                                                     
{                                                                     
   435cc:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
  IMFS_jnode_t *the_jnode;                                            
  IMFS_jnode_t *new_parent;                                           
                                                                      
  the_jnode = old_loc->node_access;                                   
                                                                      
  strncpy( the_jnode->name, new_name, IMFS_NAME_MAX );                
   435ce:	4878 0020      	pea 20 <OPER2+0xc>                          <== NOT EXECUTED
   435d2:	2f2e 0014      	movel %fp@(20),%sp@-                        <== NOT EXECUTED
)                                                                     
{                                                                     
  IMFS_jnode_t *the_jnode;                                            
  IMFS_jnode_t *new_parent;                                           
                                                                      
  the_jnode = old_loc->node_access;                                   
   435d6:	2450           	moveal %a0@,%a2                             <== NOT EXECUTED
                                                                      
  strncpy( the_jnode->name, new_name, IMFS_NAME_MAX );                
   435d8:	486a 000c      	pea %a2@(12)                                <== NOT EXECUTED
   435dc:	4eb9 0005 574c 	jsr 5574c <strncpy>                         <== NOT EXECUTED
                                                                      
  if ( the_jnode->Parent != NULL )                                    
   435e2:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   435e6:	4aaa 0008      	tstl %a2@(8)                                <== NOT EXECUTED
   435ea:	670a           	beqs 435f6 <IMFS_rename+0x32>               <== NOT EXECUTED
 */                                                                   
RTEMS_INLINE_ROUTINE void rtems_chain_extract(                        
  rtems_chain_node *the_node                                          
)                                                                     
{                                                                     
  _Chain_Extract( the_node );                                         
   435ec:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   435ee:	4eb9 0004 8720 	jsr 48720 <_Chain_Extract>                  <== NOT EXECUTED
   435f4:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_chain_extract( (rtems_chain_node *) the_jnode );            
                                                                      
  new_parent = new_parent_loc->node_access;                           
   435f6:	206e 0010      	moveal %fp@(16),%a0                         <== NOT EXECUTED
   435fa:	2050           	moveal %a0@,%a0                             <== NOT EXECUTED
  the_jnode->Parent = new_parent;                                     
   435fc:	2548 0008      	movel %a0,%a2@(8)                           <== NOT EXECUTED
RTEMS_INLINE_ROUTINE void rtems_chain_append(                         
  rtems_chain_control *the_chain,                                     
  rtems_chain_node    *the_node                                       
)                                                                     
{                                                                     
  _Chain_Append( the_chain, the_node );                               
   43600:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   43602:	4868 004c      	pea %a0@(76)                                <== NOT EXECUTED
   43606:	4eb9 0004 86e8 	jsr 486e8 <_Chain_Append>                   <== NOT EXECUTED
  rtems_chain_append( &new_parent->info.directory.Entries, &the_jnode->Node );
                                                                      
  /*                                                                  
   * Update the time.                                                 
   */                                                                 
  IMFS_update_ctime( the_jnode );                                     
   4360c:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4360e:	486e fff8      	pea %fp@(-8)                                <== NOT EXECUTED
   43612:	4eb9 0004 4060 	jsr 44060 <gettimeofday>                    <== NOT EXECUTED
   43618:	256e fff8 0044 	movel %fp@(-8),%a2@(68)                     <== NOT EXECUTED
                                                                      
  return 0;                                                           
}                                                                     
   4361e:	4280           	clrl %d0                                    <== NOT EXECUTED
   43620:	246e fff4      	moveal %fp@(-12),%a2                        <== NOT EXECUTED
   43624:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004a300 <IMFS_rmnod>:                                                
                                                                      
int IMFS_rmnod(                                                       
  rtems_filesystem_location_info_t  *parent_pathloc, /* IN */         
  rtems_filesystem_location_info_t  *pathloc         /* IN */         
)                                                                     
{                                                                     
   4a300:	4e56 fff8      	linkw %fp,#-8                               
   4a304:	2f0b           	movel %a3,%sp@-                             
   4a306:	266e 000c      	moveal %fp@(12),%a3                         
   4a30a:	2f0a           	movel %a2,%sp@-                             
  IMFS_jnode_t *the_jnode;                                            
                                                                      
  the_jnode = (IMFS_jnode_t *) pathloc->node_access;                  
   4a30c:	2453           	moveal %a3@,%a2                             
                                                                      
  /*                                                                  
   * Take the node out of the parent's chain that contains this node  
   */                                                                 
                                                                      
  if ( the_jnode->Parent != NULL ) {                                  
   4a30e:	4aaa 0008      	tstl %a2@(8)                                
   4a312:	670e           	beqs 4a322 <IMFS_rmnod+0x22>                
 */                                                                   
RTEMS_INLINE_ROUTINE void rtems_chain_extract(                        
  rtems_chain_node *the_node                                          
)                                                                     
{                                                                     
  _Chain_Extract( the_node );                                         
   4a314:	2f0a           	movel %a2,%sp@-                             
   4a316:	4eb9 0004 b998 	jsr 4b998 <_Chain_Extract>                  
    rtems_chain_extract( (rtems_chain_node *) the_jnode );            
    the_jnode->Parent = NULL;                                         
   4a31c:	588f           	addql #4,%sp                                
   4a31e:	42aa 0008      	clrl %a2@(8)                                
                                                                      
  /*                                                                  
   * Decrement the link counter and see if we can free the space.     
   */                                                                 
                                                                      
  the_jnode->st_nlink--;                                              
   4a322:	302a 0032      	movew %a2@(50),%d0                          
   4a326:	5380           	subql #1,%d0                                
   4a328:	3540 0032      	movew %d0,%a2@(50)                          
  IMFS_update_ctime( the_jnode );                                     
   4a32c:	42a7           	clrl %sp@-                                  
   4a32e:	486e fff8      	pea %fp@(-8)                                
   4a332:	4eb9 0004 a894 	jsr 4a894 <gettimeofday>                    
   4a338:	256e fff8 0044 	movel %fp@(-8),%a2@(68)                     
                                                                      
  /*                                                                  
   * The file cannot be open and the link must be less than 1 to free.
   */                                                                 
                                                                      
  if ( !rtems_libio_is_file_open( the_jnode ) && (the_jnode->st_nlink < 1) ) {
   4a33e:	2f0a           	movel %a2,%sp@-                             
   4a340:	4eb9 0004 a96e 	jsr 4a96e <rtems_libio_is_file_open>        
   4a346:	4fef 000c      	lea %sp@(12),%sp                            
   4a34a:	4a80           	tstl %d0                                    
   4a34c:	6628           	bnes 4a376 <IMFS_rmnod+0x76>                
   4a34e:	4a6a 0032      	tstw %a2@(50)                               
   4a352:	6622           	bnes 4a376 <IMFS_rmnod+0x76>                
                                                                      
    /*                                                                
     * Is rtems_filesystem_current this node?                         
     */                                                               
                                                                      
    if ( rtems_filesystem_current.node_access == pathloc->node_access )
   4a354:	2079 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a0   
   4a35a:	2653           	moveal %a3@,%a3                             
   4a35c:	b7e8 0004      	cmpal %a0@(4),%a3                           
   4a360:	6736           	beqs 4a398 <IMFS_rmnod+0x98>                
   4a362:	47f9 0004 a6f4 	lea 4a6f4 <free>,%a3                        
                                                                      
    /*                                                                
     * Free memory associated with a memory file.                     
     */                                                               
                                                                      
    if ( the_jnode->type == IMFS_SYM_LINK ) {                         
   4a368:	7004           	moveq #4,%d0                                
   4a36a:	b0aa 0048      	cmpl %a2@(72),%d0                           
   4a36e:	6714           	beqs 4a384 <IMFS_rmnod+0x84>                
      if ( the_jnode->info.sym_link.name )                            
        free( (void*) the_jnode->info.sym_link.name );                
    }                                                                 
    free( the_jnode );                                                
   4a370:	2f0a           	movel %a2,%sp@-                             
   4a372:	4e93           	jsr %a3@                                    
   4a374:	588f           	addql #4,%sp                                
  }                                                                   
                                                                      
  return 0;                                                           
                                                                      
}                                                                     
   4a376:	246e fff0      	moveal %fp@(-16),%a2                        
   4a37a:	4280           	clrl %d0                                    
   4a37c:	266e fff4      	moveal %fp@(-12),%a3                        
   4a380:	4e5e           	unlk %fp                                    
   4a382:	4e75           	rts                                         
    /*                                                                
     * Free memory associated with a memory file.                     
     */                                                               
                                                                      
    if ( the_jnode->type == IMFS_SYM_LINK ) {                         
      if ( the_jnode->info.sym_link.name )                            
   4a384:	202a 004c      	movel %a2@(76),%d0                          
   4a388:	67e6           	beqs 4a370 <IMFS_rmnod+0x70>                
        free( (void*) the_jnode->info.sym_link.name );                
   4a38a:	2f00           	movel %d0,%sp@-                             
   4a38c:	4e93           	jsr %a3@                                    
   4a38e:	588f           	addql #4,%sp                                
    }                                                                 
    free( the_jnode );                                                
   4a390:	2f0a           	movel %a2,%sp@-                             
   4a392:	4e93           	jsr %a3@                                    
   4a394:	588f           	addql #4,%sp                                
   4a396:	60de           	bras 4a376 <IMFS_rmnod+0x76>                
    /*                                                                
     * Is rtems_filesystem_current this node?                         
     */                                                               
                                                                      
    if ( rtems_filesystem_current.node_access == pathloc->node_access )
       rtems_filesystem_current.node_access = NULL;                   
   4a398:	42a8 0004      	clrl %a0@(4)                                <== NOT EXECUTED
   4a39c:	47f9 0004 a6f4 	lea 4a6f4 <free>,%a3                        <== NOT EXECUTED
                                                                      
    /*                                                                
     * Free memory associated with a memory file.                     
     */                                                               
                                                                      
    if ( the_jnode->type == IMFS_SYM_LINK ) {                         
   4a3a2:	7004           	moveq #4,%d0                                <== NOT EXECUTED
   4a3a4:	b0aa 0048      	cmpl %a2@(72),%d0                           <== NOT EXECUTED
   4a3a8:	66c6           	bnes 4a370 <IMFS_rmnod+0x70>                <== NOT EXECUTED
   4a3aa:	60d8           	bras 4a384 <IMFS_rmnod+0x84>                <== NOT EXECUTED
                                                                      
0004a3ac <IMFS_stat>:                                                 
  IMFS_device_t  *io;                                                 
                                                                      
  the_jnode = loc->node_access;                                       
                                                                      
                                                                      
  switch ( the_jnode->type ) {                                        
   4a3ac:	7007           	moveq #7,%d0                                
                                                                      
int IMFS_stat(                                                        
  rtems_filesystem_location_info_t *loc,                              
  struct stat                      *buf                               
)                                                                     
{                                                                     
   4a3ae:	4e56 0000      	linkw %fp,#0                                
   4a3b2:	206e 000c      	moveal %fp@(12),%a0                         
   4a3b6:	2f0a           	movel %a2,%sp@-                             
   4a3b8:	246e 0008      	moveal %fp@(8),%a2                          
  IMFS_fs_info_t *fs_info;                                            
  IMFS_jnode_t   *the_jnode;                                          
  IMFS_device_t  *io;                                                 
                                                                      
  the_jnode = loc->node_access;                                       
   4a3bc:	2252           	moveal %a2@,%a1                             
                                                                      
                                                                      
  switch ( the_jnode->type ) {                                        
   4a3be:	b0a9 0048      	cmpl %a1@(72),%d0                           
   4a3c2:	6418           	bccs 4a3dc <IMFS_stat+0x30>                 
    case IMFS_FIFO:                                                   
      buf->st_size = 0;                                               
      break;                                                          
                                                                      
    default:                                                          
      rtems_set_errno_and_return_minus_one( ENOTSUP );                
   4a3c4:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
  buf->st_atime = the_jnode->stat_atime;                              
  buf->st_mtime = the_jnode->stat_mtime;                              
  buf->st_ctime = the_jnode->stat_ctime;                              
                                                                      
  return 0;                                                           
}                                                                     
   4a3ca:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
    case IMFS_FIFO:                                                   
      buf->st_size = 0;                                               
      break;                                                          
                                                                      
    default:                                                          
      rtems_set_errno_and_return_minus_one( ENOTSUP );                
   4a3ce:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4a3d0:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
  buf->st_atime = the_jnode->stat_atime;                              
  buf->st_mtime = the_jnode->stat_mtime;                              
  buf->st_ctime = the_jnode->stat_ctime;                              
                                                                      
  return 0;                                                           
}                                                                     
   4a3d2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
    case IMFS_FIFO:                                                   
      buf->st_size = 0;                                               
      break;                                                          
                                                                      
    default:                                                          
      rtems_set_errno_and_return_minus_one( ENOTSUP );                
   4a3d4:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  buf->st_atime = the_jnode->stat_atime;                              
  buf->st_mtime = the_jnode->stat_mtime;                              
  buf->st_ctime = the_jnode->stat_ctime;                              
                                                                      
  return 0;                                                           
}                                                                     
   4a3da:	4e75           	rts                                         <== NOT EXECUTED
  IMFS_device_t  *io;                                                 
                                                                      
  the_jnode = loc->node_access;                                       
                                                                      
                                                                      
  switch ( the_jnode->type ) {                                        
   4a3dc:	2029 0048      	movel %a1@(72),%d0                          
   4a3e0:	d080           	addl %d0,%d0                                
   4a3e2:	303b 0808      	movew %pc@(4a3ec <IMFS_stat+0x40>,%d0:l),%d0
   4a3e6:	48c0           	extl %d0                                    
   4a3e8:	4efb 0802      	jmp %pc@(4a3ec <IMFS_stat+0x40>,%d0:l)      
   4a3ec:	ffd8           	0177730                                     <== NOT EXECUTED
   4a3ee:	ffd8           	0177730                                     <== NOT EXECUTED
   4a3f0:	00c2           	bitrev %d2                                  <== NOT EXECUTED
   4a3f2:	ffd8           	0177730                                     <== NOT EXECUTED
   4a3f4:	0010           	020                                         <== NOT EXECUTED
   4a3f6:	006a           	0152                                        <== NOT EXECUTED
   4a3f8:	006a           	0152                                        <== NOT EXECUTED
   4a3fa:	0010           	020                                         <== NOT EXECUTED
   * The device number of the IMFS is the major number and the minor is the
   * instance.                                                        
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
    rtems_filesystem_make_dev_t( IMFS_DEVICE_MAJOR_NUMBER, fs_info->instance );
   4a3fc:	246a 0010      	moveal %a2@(16),%a2                         <== NOT EXECUTED
                                                                      
  buf->st_mode  = the_jnode->st_mode;                                 
   4a400:	2169 002e 000c 	movel %a1@(46),%a0@(12)                     <== NOT EXECUTED
  buf->st_nlink = the_jnode->st_nlink;                                
  buf->st_ino   = the_jnode->st_ino;                                  
   4a406:	2169 0034 0008 	movel %a1@(52),%a0@(8)                      <== NOT EXECUTED
   * The device number of the IMFS is the major number and the minor is the
   * instance.                                                        
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
    rtems_filesystem_make_dev_t( IMFS_DEVICE_MAJOR_NUMBER, fs_info->instance );
   4a40c:	246a 0034      	moveal %a2@(52),%a2                         <== NOT EXECUTED
                                                                      
  buf->st_mode  = the_jnode->st_mode;                                 
  buf->st_nlink = the_jnode->st_nlink;                                
   4a410:	3169 0032 0010 	movew %a1@(50),%a0@(16)                     <== NOT EXECUTED
    case IMFS_SYM_LINK:                                               
      buf->st_size = 0;                                               
      break;                                                          
                                                                      
    case IMFS_FIFO:                                                   
      buf->st_size = 0;                                               
   4a416:	4280           	clrl %d0                                    <== NOT EXECUTED
   4a418:	4281           	clrl %d1                                    <== NOT EXECUTED
  buf->st_nlink = the_jnode->st_nlink;                                
  buf->st_ino   = the_jnode->st_ino;                                  
  buf->st_uid   = the_jnode->st_uid;                                  
  buf->st_gid   = the_jnode->st_gid;                                  
                                                                      
  buf->st_atime = the_jnode->stat_atime;                              
   4a41a:	2169 003c 0026 	movel %a1@(60),%a0@(38)                     <== NOT EXECUTED
  buf->st_mtime = the_jnode->stat_mtime;                              
   4a420:	2169 0040 002e 	movel %a1@(64),%a0@(46)                     <== NOT EXECUTED
  buf->st_ctime = the_jnode->stat_ctime;                              
   4a426:	2169 0044 0036 	movel %a1@(68),%a0@(54)                     <== NOT EXECUTED
    rtems_filesystem_make_dev_t( IMFS_DEVICE_MAJOR_NUMBER, fs_info->instance );
                                                                      
  buf->st_mode  = the_jnode->st_mode;                                 
  buf->st_nlink = the_jnode->st_nlink;                                
  buf->st_ino   = the_jnode->st_ino;                                  
  buf->st_uid   = the_jnode->st_uid;                                  
   4a42c:	3169 0038 0012 	movew %a1@(56),%a0@(18)                     <== NOT EXECUTED
    case IMFS_SYM_LINK:                                               
      buf->st_size = 0;                                               
      break;                                                          
                                                                      
    case IMFS_FIFO:                                                   
      buf->st_size = 0;                                               
   4a432:	2140 001e      	movel %d0,%a0@(30)                          <== NOT EXECUTED
   4a436:	2141 0022      	movel %d1,%a0@(34)                          <== NOT EXECUTED
   * The device number of the IMFS is the major number and the minor is the
   * instance.                                                        
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
    rtems_filesystem_make_dev_t( IMFS_DEVICE_MAJOR_NUMBER, fs_info->instance );
   4a43a:	2212           	movel %a2@,%d1                              <== NOT EXECUTED
  buf->st_uid   = the_jnode->st_uid;                                  
  buf->st_gid   = the_jnode->st_gid;                                  
                                                                      
  buf->st_atime = the_jnode->stat_atime;                              
  buf->st_mtime = the_jnode->stat_mtime;                              
  buf->st_ctime = the_jnode->stat_ctime;                              
   4a43c:	4280           	clrl %d0                                    <== NOT EXECUTED
                                                                      
  buf->st_mode  = the_jnode->st_mode;                                 
  buf->st_nlink = the_jnode->st_nlink;                                
  buf->st_ino   = the_jnode->st_ino;                                  
  buf->st_uid   = the_jnode->st_uid;                                  
  buf->st_gid   = the_jnode->st_gid;                                  
   4a43e:	3169 003a 0014 	movew %a1@(58),%a0@(20)                     <== NOT EXECUTED
  /*                                                                  
   * The device number of the IMFS is the major number and the minor is the
   * instance.                                                        
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
   4a444:	2141 0004      	movel %d1,%a0@(4)                           <== NOT EXECUTED
   4a448:	20bc 0000 fffe 	movel #65534,%a0@                           <== NOT EXECUTED
  buf->st_atime = the_jnode->stat_atime;                              
  buf->st_mtime = the_jnode->stat_mtime;                              
  buf->st_ctime = the_jnode->stat_ctime;                              
                                                                      
  return 0;                                                           
}                                                                     
   4a44e:	246e fffc      	moveal %fp@(-4),%a2                         
   4a452:	4e5e           	unlk %fp                                    
   4a454:	4e75           	rts                                         
   * The device number of the IMFS is the major number and the minor is the
   * instance.                                                        
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
    rtems_filesystem_make_dev_t( IMFS_DEVICE_MAJOR_NUMBER, fs_info->instance );
   4a456:	246a 0010      	moveal %a2@(16),%a2                         
      buf->st_rdev = rtems_filesystem_make_dev_t( io->major, io->minor );
      break;                                                          
                                                                      
    case IMFS_LINEAR_FILE:                                            
    case IMFS_MEMORY_FILE:                                            
      buf->st_size = the_jnode->info.file.size;                       
   4a45a:	2029 004c      	movel %a1@(76),%d0                          
   4a45e:	2229 0050      	movel %a1@(80),%d1                          
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
    rtems_filesystem_make_dev_t( IMFS_DEVICE_MAJOR_NUMBER, fs_info->instance );
                                                                      
  buf->st_mode  = the_jnode->st_mode;                                 
   4a462:	2169 002e 000c 	movel %a1@(46),%a0@(12)                     
  buf->st_nlink = the_jnode->st_nlink;                                
  buf->st_ino   = the_jnode->st_ino;                                  
   4a468:	2169 0034 0008 	movel %a1@(52),%a0@(8)                      
  buf->st_uid   = the_jnode->st_uid;                                  
  buf->st_gid   = the_jnode->st_gid;                                  
                                                                      
  buf->st_atime = the_jnode->stat_atime;                              
   4a46e:	2169 003c 0026 	movel %a1@(60),%a0@(38)                     
   * The device number of the IMFS is the major number and the minor is the
   * instance.                                                        
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
    rtems_filesystem_make_dev_t( IMFS_DEVICE_MAJOR_NUMBER, fs_info->instance );
   4a474:	246a 0034      	moveal %a2@(52),%a2                         
  buf->st_ino   = the_jnode->st_ino;                                  
  buf->st_uid   = the_jnode->st_uid;                                  
  buf->st_gid   = the_jnode->st_gid;                                  
                                                                      
  buf->st_atime = the_jnode->stat_atime;                              
  buf->st_mtime = the_jnode->stat_mtime;                              
   4a478:	2169 0040 002e 	movel %a1@(64),%a0@(46)                     
  buf->st_ctime = the_jnode->stat_ctime;                              
   4a47e:	2169 0044 0036 	movel %a1@(68),%a0@(54)                     
      buf->st_rdev = rtems_filesystem_make_dev_t( io->major, io->minor );
      break;                                                          
                                                                      
    case IMFS_LINEAR_FILE:                                            
    case IMFS_MEMORY_FILE:                                            
      buf->st_size = the_jnode->info.file.size;                       
   4a484:	2140 001e      	movel %d0,%a0@(30)                          
   4a488:	2141 0022      	movel %d1,%a0@(34)                          
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
    rtems_filesystem_make_dev_t( IMFS_DEVICE_MAJOR_NUMBER, fs_info->instance );
                                                                      
  buf->st_mode  = the_jnode->st_mode;                                 
  buf->st_nlink = the_jnode->st_nlink;                                
   4a48c:	3169 0032 0010 	movew %a1@(50),%a0@(16)                     
   * The device number of the IMFS is the major number and the minor is the
   * instance.                                                        
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
    rtems_filesystem_make_dev_t( IMFS_DEVICE_MAJOR_NUMBER, fs_info->instance );
   4a492:	2212           	movel %a2@,%d1                              
  buf->st_uid   = the_jnode->st_uid;                                  
  buf->st_gid   = the_jnode->st_gid;                                  
                                                                      
  buf->st_atime = the_jnode->stat_atime;                              
  buf->st_mtime = the_jnode->stat_mtime;                              
  buf->st_ctime = the_jnode->stat_ctime;                              
   4a494:	4280           	clrl %d0                                    
    rtems_filesystem_make_dev_t( IMFS_DEVICE_MAJOR_NUMBER, fs_info->instance );
                                                                      
  buf->st_mode  = the_jnode->st_mode;                                 
  buf->st_nlink = the_jnode->st_nlink;                                
  buf->st_ino   = the_jnode->st_ino;                                  
  buf->st_uid   = the_jnode->st_uid;                                  
   4a496:	3169 0038 0012 	movew %a1@(56),%a0@(18)                     
  /*                                                                  
   * The device number of the IMFS is the major number and the minor is the
   * instance.                                                        
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
   4a49c:	2141 0004      	movel %d1,%a0@(4)                           
                                                                      
  buf->st_mode  = the_jnode->st_mode;                                 
  buf->st_nlink = the_jnode->st_nlink;                                
  buf->st_ino   = the_jnode->st_ino;                                  
  buf->st_uid   = the_jnode->st_uid;                                  
  buf->st_gid   = the_jnode->st_gid;                                  
   4a4a0:	3169 003a 0014 	movew %a1@(58),%a0@(20)                     
  /*                                                                  
   * The device number of the IMFS is the major number and the minor is the
   * instance.                                                        
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
   4a4a6:	20bc 0000 fffe 	movel #65534,%a0@                           
   4a4ac:	60a0           	bras 4a44e <IMFS_stat+0xa2>                 
                                                                      
  switch ( the_jnode->type ) {                                        
                                                                      
    case IMFS_DEVICE:                                                 
      io           = &the_jnode->info.device;                         
      buf->st_rdev = rtems_filesystem_make_dev_t( io->major, io->minor );
   4a4ae:	2029 0050      	movel %a1@(80),%d0                          
   4a4b2:	2169 004c 0016 	movel %a1@(76),%a0@(22)                     
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
    rtems_filesystem_make_dev_t( IMFS_DEVICE_MAJOR_NUMBER, fs_info->instance );
                                                                      
  buf->st_mode  = the_jnode->st_mode;                                 
   4a4b8:	2169 002e 000c 	movel %a1@(46),%a0@(12)                     
  buf->st_nlink = the_jnode->st_nlink;                                
  buf->st_ino   = the_jnode->st_ino;                                  
   4a4be:	2169 0034 0008 	movel %a1@(52),%a0@(8)                      
   * The device number of the IMFS is the major number and the minor is the
   * instance.                                                        
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
    rtems_filesystem_make_dev_t( IMFS_DEVICE_MAJOR_NUMBER, fs_info->instance );
   4a4c4:	246a 0010      	moveal %a2@(16),%a2                         
  buf->st_nlink = the_jnode->st_nlink;                                
  buf->st_ino   = the_jnode->st_ino;                                  
  buf->st_uid   = the_jnode->st_uid;                                  
  buf->st_gid   = the_jnode->st_gid;                                  
                                                                      
  buf->st_atime = the_jnode->stat_atime;                              
   4a4c8:	2169 003c 0026 	movel %a1@(60),%a0@(38)                     
   * The device number of the IMFS is the major number and the minor is the
   * instance.                                                        
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
    rtems_filesystem_make_dev_t( IMFS_DEVICE_MAJOR_NUMBER, fs_info->instance );
   4a4ce:	246a 0034      	moveal %a2@(52),%a2                         
  buf->st_ino   = the_jnode->st_ino;                                  
  buf->st_uid   = the_jnode->st_uid;                                  
  buf->st_gid   = the_jnode->st_gid;                                  
                                                                      
  buf->st_atime = the_jnode->stat_atime;                              
  buf->st_mtime = the_jnode->stat_mtime;                              
   4a4d2:	2169 0040 002e 	movel %a1@(64),%a0@(46)                     
   * The device number of the IMFS is the major number and the minor is the
   * instance.                                                        
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
    rtems_filesystem_make_dev_t( IMFS_DEVICE_MAJOR_NUMBER, fs_info->instance );
   4a4d8:	2212           	movel %a2@,%d1                              
                                                                      
  buf->st_mode  = the_jnode->st_mode;                                 
  buf->st_nlink = the_jnode->st_nlink;                                
   4a4da:	3169 0032 0010 	movew %a1@(50),%a0@(16)                     
  buf->st_uid   = the_jnode->st_uid;                                  
  buf->st_gid   = the_jnode->st_gid;                                  
                                                                      
  buf->st_atime = the_jnode->stat_atime;                              
  buf->st_mtime = the_jnode->stat_mtime;                              
  buf->st_ctime = the_jnode->stat_ctime;                              
   4a4e0:	2169 0044 0036 	movel %a1@(68),%a0@(54)                     
    rtems_filesystem_make_dev_t( IMFS_DEVICE_MAJOR_NUMBER, fs_info->instance );
                                                                      
  buf->st_mode  = the_jnode->st_mode;                                 
  buf->st_nlink = the_jnode->st_nlink;                                
  buf->st_ino   = the_jnode->st_ino;                                  
  buf->st_uid   = the_jnode->st_uid;                                  
   4a4e6:	3169 0038 0012 	movew %a1@(56),%a0@(18)                     
                                                                      
  switch ( the_jnode->type ) {                                        
                                                                      
    case IMFS_DEVICE:                                                 
      io           = &the_jnode->info.device;                         
      buf->st_rdev = rtems_filesystem_make_dev_t( io->major, io->minor );
   4a4ec:	2140 001a      	movel %d0,%a0@(26)                          
  buf->st_uid   = the_jnode->st_uid;                                  
  buf->st_gid   = the_jnode->st_gid;                                  
                                                                      
  buf->st_atime = the_jnode->stat_atime;                              
  buf->st_mtime = the_jnode->stat_mtime;                              
  buf->st_ctime = the_jnode->stat_ctime;                              
   4a4f0:	4280           	clrl %d0                                    
  /*                                                                  
   * The device number of the IMFS is the major number and the minor is the
   * instance.                                                        
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
   4a4f2:	2141 0004      	movel %d1,%a0@(4)                           
                                                                      
  buf->st_mode  = the_jnode->st_mode;                                 
  buf->st_nlink = the_jnode->st_nlink;                                
  buf->st_ino   = the_jnode->st_ino;                                  
  buf->st_uid   = the_jnode->st_uid;                                  
  buf->st_gid   = the_jnode->st_gid;                                  
   4a4f6:	3169 003a 0014 	movew %a1@(58),%a0@(20)                     
  /*                                                                  
   * The device number of the IMFS is the major number and the minor is the
   * instance.                                                        
   */                                                                 
  fs_info = loc->mt_entry->fs_info;                                   
  buf->st_dev =                                                       
   4a4fc:	20bc 0000 fffe 	movel #65534,%a0@                           
   4a502:	6000 ff4a      	braw 4a44e <IMFS_stat+0xa2>                 
	...                                                                  
                                                                      
00043628 <IMFS_symlink>:                                              
int IMFS_symlink(                                                     
  rtems_filesystem_location_info_t  *parent_loc,                      
  const char                        *link_name,                       
  const char                        *node_name                        
)                                                                     
{                                                                     
   43628:	4e56 ffc4      	linkw %fp,#-60                              
   4362c:	2f03           	movel %d3,%sp@-                             
  int                i;                                               
                                                                      
  /*                                                                  
   * Remove any separators at the end of the string.                  
   */                                                                 
  IMFS_get_token( node_name, strlen( node_name ), new_name, &i );     
   4362e:	260e           	movel %fp,%d3                               
   43630:	0683 ffff ffc7 	addil #-57,%d3                              
int IMFS_symlink(                                                     
  rtems_filesystem_location_info_t  *parent_loc,                      
  const char                        *link_name,                       
  const char                        *node_name                        
)                                                                     
{                                                                     
   43636:	2f02           	movel %d2,%sp@-                             
   43638:	242e 0010      	movel %fp@(16),%d2                          
  int                i;                                               
                                                                      
  /*                                                                  
   * Remove any separators at the end of the string.                  
   */                                                                 
  IMFS_get_token( node_name, strlen( node_name ), new_name, &i );     
   4363c:	2f02           	movel %d2,%sp@-                             
   4363e:	4eb9 0005 5734 	jsr 55734 <strlen>                          
   43644:	588f           	addql #4,%sp                                
   43646:	486e fffc      	pea %fp@(-4)                                
   4364a:	2f03           	movel %d3,%sp@-                             
   4364c:	2f00           	movel %d0,%sp@-                             
   4364e:	2f02           	movel %d2,%sp@-                             
   43650:	4eb9 0004 f928 	jsr 4f928 <IMFS_get_token>                  
                                                                      
  /*                                                                  
   * Duplicate link name                                              
   */                                                                 
  info.sym_link.name = strdup(link_name);                             
   43656:	2f2e 000c      	movel %fp@(12),%sp@-                        
   4365a:	4eb9 0005 52a4 	jsr 552a4 <strdup>                          
  if (info.sym_link.name == NULL) {                                   
   43660:	4fef 0014      	lea %sp@(20),%sp                            
  IMFS_get_token( node_name, strlen( node_name ), new_name, &i );     
                                                                      
  /*                                                                  
   * Duplicate link name                                              
   */                                                                 
  info.sym_link.name = strdup(link_name);                             
   43664:	2d40 ffe8      	movel %d0,%fp@(-24)                         
  if (info.sym_link.name == NULL) {                                   
   43668:	6730           	beqs 4369a <IMFS_symlink+0x72>              
   *        was ONLY passed a NULL when we created the root node.  We 
   *        added a new IMFS_create_root_node() so this path no longer
   *        existed.  The result was simpler code which should not have
   *        this path.                                                
   */                                                                 
  new_node = IMFS_create_node(                                        
   4366a:	486e ffe8      	pea %fp@(-24)                               
   4366e:	2f3c 0000 a1ff 	movel #41471,%sp@-                          
   43674:	2f03           	movel %d3,%sp@-                             
   43676:	4878 0004      	pea 4 <CONTEXT_ARG>                         
   4367a:	2f2e 0008      	movel %fp@(8),%sp@-                         
   4367e:	4eb9 0004 eaec 	jsr 4eaec <IMFS_create_node>                
    new_name,                                                         
    ( S_IFLNK | ( S_IRWXU | S_IRWXG | S_IRWXO )),                     
    &info                                                             
  );                                                                  
                                                                      
  if (new_node == NULL) {                                             
   43684:	4fef 0014      	lea %sp@(20),%sp                            
   43688:	4a80           	tstl %d0                                    
   4368a:	6728           	beqs 436b4 <IMFS_symlink+0x8c>              
    free(info.sym_link.name);                                         
    rtems_set_errno_and_return_minus_one(ENOMEM);                     
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   4368c:	242e ffbc      	movel %fp@(-68),%d2                         
    new_name,                                                         
    ( S_IFLNK | ( S_IRWXU | S_IRWXG | S_IRWXO )),                     
    &info                                                             
  );                                                                  
                                                                      
  if (new_node == NULL) {                                             
   43690:	4280           	clrl %d0                                    
    free(info.sym_link.name);                                         
    rtems_set_errno_and_return_minus_one(ENOMEM);                     
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   43692:	262e ffc0      	movel %fp@(-64),%d3                         
   43696:	4e5e           	unlk %fp                                    
   43698:	4e75           	rts                                         
  /*                                                                  
   * Duplicate link name                                              
   */                                                                 
  info.sym_link.name = strdup(link_name);                             
  if (info.sym_link.name == NULL) {                                   
    rtems_set_errno_and_return_minus_one(ENOMEM);                     
   4369a:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         <== NOT EXECUTED
   436a0:	740c           	moveq #12,%d2                               <== NOT EXECUTED
   436a2:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   436a4:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   436a6:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
    free(info.sym_link.name);                                         
    rtems_set_errno_and_return_minus_one(ENOMEM);                     
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   436a8:	242e ffbc      	movel %fp@(-68),%d2                         <== NOT EXECUTED
   436ac:	262e ffc0      	movel %fp@(-64),%d3                         <== NOT EXECUTED
   436b0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   436b2:	4e75           	rts                                         <== NOT EXECUTED
    ( S_IFLNK | ( S_IRWXU | S_IRWXG | S_IRWXO )),                     
    &info                                                             
  );                                                                  
                                                                      
  if (new_node == NULL) {                                             
    free(info.sym_link.name);                                         
   436b4:	2f2e ffe8      	movel %fp@(-24),%sp@-                       <== NOT EXECUTED
   436b8:	4eb9 0004 3fd0 	jsr 43fd0 <free>                            <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one(ENOMEM);                     
   436be:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         <== NOT EXECUTED
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   436c4:	242e ffbc      	movel %fp@(-68),%d2                         <== NOT EXECUTED
    &info                                                             
  );                                                                  
                                                                      
  if (new_node == NULL) {                                             
    free(info.sym_link.name);                                         
    rtems_set_errno_and_return_minus_one(ENOMEM);                     
   436c8:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   436ca:	720c           	moveq #12,%d1                               <== NOT EXECUTED
   436cc:	588f           	addql #4,%sp                                <== NOT EXECUTED
   436ce:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   436d0:	262e ffc0      	movel %fp@(-64),%d3                         <== NOT EXECUTED
   436d4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
    &info                                                             
  );                                                                  
                                                                      
  if (new_node == NULL) {                                             
    free(info.sym_link.name);                                         
    rtems_set_errno_and_return_minus_one(ENOMEM);                     
   436d6:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
	...                                                                  
                                                                      
000436dc <IMFS_unlink>:                                               
  /*                                                                  
   * If this is the last last pointer to the node                     
   * free the node.                                                   
   */                                                                 
                                                                      
  if ( node->type == IMFS_HARD_LINK ) {                               
   436dc:	7003           	moveq #3,%d0                                
                                                                      
int IMFS_unlink(                                                      
  rtems_filesystem_location_info_t  *parentloc, /* IN */              
  rtems_filesystem_location_info_t  *loc        /* IN */              
)                                                                     
{                                                                     
   436de:	4e56 ffd0      	linkw %fp,#-48                              
   436e2:	48d7 0c1c      	moveml %d2-%d4/%a2-%a3,%sp@                 
   436e6:	246e 000c      	moveal %fp@(12),%a2                         
   436ea:	242e 0008      	movel %fp@(8),%d2                           
  IMFS_jnode_t                      *node;                            
  rtems_filesystem_location_info_t   the_link;                        
  int                                result = 0;                      
                                                                      
  node = loc->node_access;                                            
   436ee:	2652           	moveal %a2@,%a3                             
  /*                                                                  
   * If this is the last last pointer to the node                     
   * free the node.                                                   
   */                                                                 
                                                                      
  if ( node->type == IMFS_HARD_LINK ) {                               
   436f0:	b0ab 0048      	cmpl %a3@(72),%d0                           
   436f4:	671a           	beqs 43710 <IMFS_unlink+0x34>               
                                                                      
  /*                                                                  
   *  Now actually free the node we were asked to free.               
   */                                                                 
                                                                      
  result = (*loc->handlers->rmnod_h)( parentloc, loc );               
   436f6:	2f0a           	movel %a2,%sp@-                             
   436f8:	206a 0008      	moveal %a2@(8),%a0                          
   436fc:	2f02           	movel %d2,%sp@-                             
   436fe:	2068 0034      	moveal %a0@(52),%a0                         
   43702:	4e90           	jsr %a0@                                    
                                                                      
  return result;                                                      
   43704:	508f           	addql #8,%sp                                
}                                                                     
   43706:	4cee 0c1c ffd0 	moveml %fp@(-48),%d2-%d4/%a2-%a3            
   4370c:	4e5e           	unlk %fp                                    
   4370e:	4e75           	rts                                         
   * free the node.                                                   
   */                                                                 
                                                                      
  if ( node->type == IMFS_HARD_LINK ) {                               
                                                                      
    if ( !node->info.hard_link.link_node )                            
   43710:	202b 004c      	movel %a3@(76),%d0                          
   43714:	6700 0090      	beqw 437a6 <IMFS_unlink+0xca>               
      rtems_set_errno_and_return_minus_one( EINVAL );                 
                                                                      
    the_link = *loc;                                                  
   43718:	41ea 0004      	lea %a2@(4),%a0                             
    the_link.node_access = node->info.hard_link.link_node;            
    IMFS_Set_handlers( &the_link );                                   
   4371c:	260e           	movel %fp,%d3                               
   4371e:	0683 ffff ffe4 	addil #-28,%d3                              
    /*                                                                
     *  If removing the last hard link to a node, then we need        
     *  to remove the node that is a link and the node itself.        
     */                                                               
                                                                      
    if ( node->info.hard_link.link_node->st_nlink == 1)               
   43724:	7801           	moveq #1,%d4                                
  if ( node->type == IMFS_HARD_LINK ) {                               
                                                                      
    if ( !node->info.hard_link.link_node )                            
      rtems_set_errno_and_return_minus_one( EINVAL );                 
                                                                      
    the_link = *loc;                                                  
   43726:	2d58 ffe8      	movel %a0@+,%fp@(-24)                       
   4372a:	2d58 ffec      	movel %a0@+,%fp@(-20)                       
   4372e:	2d58 fff0      	movel %a0@+,%fp@(-16)                       
   43732:	2d50 fff4      	movel %a0@,%fp@(-12)                        
    the_link.node_access = node->info.hard_link.link_node;            
   43736:	2d40 ffe4      	movel %d0,%fp@(-28)                         
    IMFS_Set_handlers( &the_link );                                   
   4373a:	2f03           	movel %d3,%sp@-                             
   4373c:	4eb9 0004 ecf4 	jsr 4ecf4 <IMFS_Set_handlers>               
    /*                                                                
     *  If removing the last hard link to a node, then we need        
     *  to remove the node that is a link and the node itself.        
     */                                                               
                                                                      
    if ( node->info.hard_link.link_node->st_nlink == 1)               
   43742:	206b 004c      	moveal %a3@(76),%a0                         
   43746:	4281           	clrl %d1                                    
   43748:	588f           	addql #4,%sp                                
   4374a:	3028 0032      	movew %a0@(50),%d0                          
   4374e:	3200           	movew %d0,%d1                               
   43750:	b881           	cmpl %d1,%d4                                
   43752:	6730           	beqs 43784 <IMFS_unlink+0xa8>               
        if ( result != 0 )                                            
            return -1;                                                
    }                                                                 
    else                                                              
    {                                                                 
        node->info.hard_link.link_node->st_nlink --;                  
   43754:	5380           	subql #1,%d0                                
   43756:	3140 0032      	movew %d0,%a0@(50)                          
        IMFS_update_ctime( node->info.hard_link.link_node );          
   4375a:	42a7           	clrl %sp@-                                  
   4375c:	486e fff8      	pea %fp@(-8)                                
   43760:	4eb9 0004 4060 	jsr 44060 <gettimeofday>                    
   43766:	206b 004c      	moveal %a3@(76),%a0                         
   4376a:	508f           	addql #8,%sp                                
   4376c:	216e fff8 0044 	movel %fp@(-8),%a0@(68)                     
                                                                      
  /*                                                                  
   *  Now actually free the node we were asked to free.               
   */                                                                 
                                                                      
  result = (*loc->handlers->rmnod_h)( parentloc, loc );               
   43772:	2f0a           	movel %a2,%sp@-                             
   43774:	206a 0008      	moveal %a2@(8),%a0                          
   43778:	2f02           	movel %d2,%sp@-                             
   4377a:	2068 0034      	moveal %a0@(52),%a0                         
   4377e:	4e90           	jsr %a0@                                    
                                                                      
  return result;                                                      
   43780:	508f           	addql #8,%sp                                
   43782:	6082           	bras 43706 <IMFS_unlink+0x2a>               
     *  to remove the node that is a link and the node itself.        
     */                                                               
                                                                      
    if ( node->info.hard_link.link_node->st_nlink == 1)               
    {                                                                 
        result = (*the_link.handlers->rmnod_h)( parentloc, &the_link );
   43784:	2f03           	movel %d3,%sp@-                             
   43786:	2f02           	movel %d2,%sp@-                             
   43788:	206e ffec      	moveal %fp@(-20),%a0                        
   4378c:	2068 0034      	moveal %a0@(52),%a0                         
   43790:	4e90           	jsr %a0@                                    
        if ( result != 0 )                                            
   43792:	508f           	addql #8,%sp                                
   43794:	4a80           	tstl %d0                                    
   43796:	6700 ff5e      	beqw 436f6 <IMFS_unlink+0x1a>               
   4379a:	70ff           	moveq #-1,%d0                               
   */                                                                 
                                                                      
  result = (*loc->handlers->rmnod_h)( parentloc, loc );               
                                                                      
  return result;                                                      
}                                                                     
   4379c:	4cee 0c1c ffd0 	moveml %fp@(-48),%d2-%d4/%a2-%a3            
   437a2:	4e5e           	unlk %fp                                    
   437a4:	4e75           	rts                                         
   */                                                                 
                                                                      
  if ( node->type == IMFS_HARD_LINK ) {                               
                                                                      
    if ( !node->info.hard_link.link_node )                            
      rtems_set_errno_and_return_minus_one( EINVAL );                 
   437a6:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         <== NOT EXECUTED
   437ac:	7216           	moveq #22,%d1                               <== NOT EXECUTED
   437ae:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   437b0:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   */                                                                 
                                                                      
  result = (*loc->handlers->rmnod_h)( parentloc, loc );               
                                                                      
  return result;                                                      
}                                                                     
   437b2:	4cee 0c1c ffd0 	moveml %fp@(-48),%d2-%d4/%a2-%a3            <== NOT EXECUTED
   */                                                                 
                                                                      
  if ( node->type == IMFS_HARD_LINK ) {                               
                                                                      
    if ( !node->info.hard_link.link_node )                            
      rtems_set_errno_and_return_minus_one( EINVAL );                 
   437b8:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
   */                                                                 
                                                                      
  result = (*loc->handlers->rmnod_h)( parentloc, loc );               
                                                                      
  return result;                                                      
}                                                                     
   437ba:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
000437c0 <IMFS_unmount>:                                              
                                                                      
  /*                                                                  
   * Is the node that we are mounting onto a directory node ?         
   */                                                                 
                                                                      
  if ( node->type != IMFS_DIRECTORY )                                 
   437c0:	7001           	moveq #1,%d0                                
#include <rtems/seterr.h>                                             
                                                                      
int IMFS_unmount(                                                     
  rtems_filesystem_mount_table_entry_t *mt_entry                      
)                                                                     
{                                                                     
   437c2:	4e56 0000      	linkw %fp,#0                                
   437c6:	206e 0008      	moveal %fp@(8),%a0                          
  IMFS_jnode_t  *node;                                                
                                                                      
  node = mt_entry->mt_point_node.node_access;                         
   437ca:	2068 0008      	moveal %a0@(8),%a0                          
                                                                      
  /*                                                                  
   * Is the node that we are mounting onto a directory node ?         
   */                                                                 
                                                                      
  if ( node->type != IMFS_DIRECTORY )                                 
   437ce:	b0a8 0048      	cmpl %a0@(72),%d0                           
   437d2:	6610           	bnes 437e4 <IMFS_unmount+0x24>              
                                                                      
  /*                                                                  
   * Did the node indicate that there was a directory mounted here?   
   */                                                                 
                                                                      
  if ( node->info.directory.mt_fs == NULL )                           
   437d4:	4aa8 0058      	tstl %a0@(88)                               
   437d8:	671c           	beqs 437f6 <IMFS_unmount+0x36>              
  /*                                                                  
   * Set the mt_fs pointer to indicate that there is no longer        
   * a file system mounted to this point.                             
   */                                                                 
                                                                      
  node->info.directory.mt_fs = NULL;                                  
   437da:	42a8 0058      	clrl %a0@(88)                               
   437de:	4280           	clrl %d0                                    
                                                                      
  return 0;                                                           
}                                                                     
   437e0:	4e5e           	unlk %fp                                    
   437e2:	4e75           	rts                                         
  /*                                                                  
   * Is the node that we are mounting onto a directory node ?         
   */                                                                 
                                                                      
  if ( node->type != IMFS_DIRECTORY )                                 
    rtems_set_errno_and_return_minus_one( ENOTDIR );                  
   437e4:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         <== NOT EXECUTED
   437ea:	7214           	moveq #20,%d1                               <== NOT EXECUTED
   437ec:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   437ee:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   */                                                                 
                                                                      
  node->info.directory.mt_fs = NULL;                                  
                                                                      
  return 0;                                                           
}                                                                     
   437f0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  /*                                                                  
   * Is the node that we are mounting onto a directory node ?         
   */                                                                 
                                                                      
  if ( node->type != IMFS_DIRECTORY )                                 
    rtems_set_errno_and_return_minus_one( ENOTDIR );                  
   437f2:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
   */                                                                 
                                                                      
  node->info.directory.mt_fs = NULL;                                  
                                                                      
  return 0;                                                           
}                                                                     
   437f4:	4e75           	rts                                         <== NOT EXECUTED
  /*                                                                  
   * Did the node indicate that there was a directory mounted here?   
   */                                                                 
                                                                      
  if ( node->info.directory.mt_fs == NULL )                           
    rtems_set_errno_and_return_minus_one( EINVAL );  /* XXX */        
   437f6:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         <== NOT EXECUTED
   437fc:	7216           	moveq #22,%d1                               <== NOT EXECUTED
   437fe:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   43800:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   */                                                                 
                                                                      
  node->info.directory.mt_fs = NULL;                                  
                                                                      
  return 0;                                                           
}                                                                     
   43802:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  /*                                                                  
   * Did the node indicate that there was a directory mounted here?   
   */                                                                 
                                                                      
  if ( node->info.directory.mt_fs == NULL )                           
    rtems_set_errno_and_return_minus_one( EINVAL );  /* XXX */        
   43804:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
   */                                                                 
                                                                      
  node->info.directory.mt_fs = NULL;                                  
                                                                      
  return 0;                                                           
}                                                                     
                                                                      
000428b4 <RTEMS_Malloc_Initialize>:                                   
void RTEMS_Malloc_Initialize(                                         
  void *heap_begin,                                                   
  uintptr_t heap_size,                                                
  size_t sbrk_amount                                                  
)                                                                     
{                                                                     
   428b4:	4e56 0000      	linkw %fp,#0                                
  #endif                                                              
                                                                      
  /*                                                                  
   *  If configured, initialize the statistics support                
   */                                                                 
  if ( rtems_malloc_statistics_helpers != NULL ) {                    
   428b8:	2079 0005 dda6 	moveal 5dda6 <rtems_malloc_statistics_helpers>,%a0
void RTEMS_Malloc_Initialize(                                         
  void *heap_begin,                                                   
  uintptr_t heap_size,                                                
  size_t sbrk_amount                                                  
)                                                                     
{                                                                     
   428be:	2f03           	movel %d3,%sp@-                             
   428c0:	262e 0008      	movel %fp@(8),%d3                           
   428c4:	2f02           	movel %d2,%sp@-                             
   428c6:	242e 000c      	movel %fp@(12),%d2                          
  #endif                                                              
                                                                      
  /*                                                                  
   *  If configured, initialize the statistics support                
   */                                                                 
  if ( rtems_malloc_statistics_helpers != NULL ) {                    
   428ca:	4a88           	tstl %a0                                    
   428cc:	6704           	beqs 428d2 <RTEMS_Malloc_Initialize+0x1e>   
    (*rtems_malloc_statistics_helpers->initialize)();                 
   428ce:	2050           	moveal %a0@,%a0                             <== NOT EXECUTED
   428d0:	4e90           	jsr %a0@                                    <== NOT EXECUTED
  }                                                                   
                                                                      
  /*                                                                  
   *  Initialize the garbage collection list to start with nothing on it.
   */                                                                 
  malloc_deferred_frees_initialize();                                 
   428d2:	4eb9 0004 ac10 	jsr 4ac10 <malloc_deferred_frees_initialize>
                                                                      
  /*                                                                  
   *  Initialize the optional sbrk support for extending the heap     
   */                                                                 
  if ( rtems_malloc_sbrk_helpers != NULL ) {                          
   428d8:	2079 0005 ddaa 	moveal 5ddaa <rtems_malloc_sbrk_helpers>,%a0
   428de:	4a88           	tstl %a0                                    
   428e0:	6712           	beqs 428f4 <RTEMS_Malloc_Initialize+0x40>   
    void *new_heap_begin = (*rtems_malloc_sbrk_helpers->initialize)(  
   428e2:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
      heap_begin,                                                     
      sbrk_amount                                                     
    );                                                                
                                                                      
    heap_size -= (uintptr_t) new_heap_begin - (uintptr_t) heap_begin; 
   428e6:	d483           	addl %d3,%d2                                <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Initialize the optional sbrk support for extending the heap     
   */                                                                 
  if ( rtems_malloc_sbrk_helpers != NULL ) {                          
    void *new_heap_begin = (*rtems_malloc_sbrk_helpers->initialize)(  
   428e8:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   428ea:	2050           	moveal %a0@,%a0                             <== NOT EXECUTED
   428ec:	4e90           	jsr %a0@                                    <== NOT EXECUTED
      heap_begin,                                                     
      sbrk_amount                                                     
    );                                                                
                                                                      
    heap_size -= (uintptr_t) new_heap_begin - (uintptr_t) heap_begin; 
   428ee:	508f           	addql #8,%sp                                <== NOT EXECUTED
   428f0:	9480           	subl %d0,%d2                                <== NOT EXECUTED
   428f2:	2600           	movel %d0,%d3                               <== NOT EXECUTED
   *  of the time under UNIX because zero'ing memory when it is first 
   *  given to a process eliminates the chance of a process seeing data
   *  left over from another process.  This would be a security violation.
   */                                                                 
                                                                      
  if (                                                                
   428f4:	4a39 0005 dda5 	tstb 5dda5 <rtems_unified_work_area>        
   428fa:	6624           	bnes 42920 <RTEMS_Malloc_Initialize+0x6c>   
    !rtems_unified_work_area                                          
      && rtems_configuration_get_do_zero_of_workspace()               
   428fc:	4a39 0005 d7ec 	tstb 5d7ec <Configuration+0x28>             
   42902:	6644           	bnes 42948 <RTEMS_Malloc_Initialize+0x94>   
  void *area_begin,                                                   
  uintptr_t area_size,                                                
  uintptr_t page_size                                                 
)                                                                     
{                                                                     
  return _Heap_Initialize( heap, area_begin, area_size, page_size );  
   42904:	4878 0004      	pea 4 <CONTEXT_ARG>                         
   42908:	2f02           	movel %d2,%sp@-                             
   4290a:	2f03           	movel %d3,%sp@-                             
   4290c:	2f39 0005 d720 	movel 5d720 <RTEMS_Malloc_Heap>,%sp@-       
   42912:	4eb9 0004 6c60 	jsr 46c60 <_Heap_Initialize>                
      RTEMS_Malloc_Heap,                                              
      heap_begin,                                                     
      heap_size,                                                      
      CPU_HEAP_ALIGNMENT                                              
    );                                                                
    if ( status == 0 ) {                                              
   42918:	4fef 0010      	lea %sp@(16),%sp                            
   4291c:	4a80           	tstl %d0                                    
   4291e:	675c           	beqs 4297c <RTEMS_Malloc_Initialize+0xc8>   
      rtems_fatal_error_occurred( RTEMS_NO_MEMORY );                  
    }                                                                 
  }                                                                   
                                                                      
  MSBUMP( space_available, _Protected_heap_Get_size(RTEMS_Malloc_Heap) );
   42920:	2f39 0005 d720 	movel 5d720 <RTEMS_Malloc_Heap>,%sp@-       
   42926:	2439 0005 ee24 	movel 5ee24 <rtems_malloc_statistics>,%d2   
   4292c:	4eb9 0004 7824 	jsr 47824 <_Protected_heap_Get_size>        
      printk( "\n" );                                                 
      rtems_print_buffer( (heap_begin + heap_size) - 48, 48 );        
      rtems_fatal_error_occurred( RTEMS_NO_MEMORY );                  
    }                                                                 
  #endif                                                              
}                                                                     
   42932:	262e fffc      	movel %fp@(-4),%d3                          
    if ( status == 0 ) {                                              
      rtems_fatal_error_occurred( RTEMS_NO_MEMORY );                  
    }                                                                 
  }                                                                   
                                                                      
  MSBUMP( space_available, _Protected_heap_Get_size(RTEMS_Malloc_Heap) );
   42936:	d082           	addl %d2,%d0                                
   42938:	588f           	addql #4,%sp                                
      printk( "\n" );                                                 
      rtems_print_buffer( (heap_begin + heap_size) - 48, 48 );        
      rtems_fatal_error_occurred( RTEMS_NO_MEMORY );                  
    }                                                                 
  #endif                                                              
}                                                                     
   4293a:	242e fff8      	movel %fp@(-8),%d2                          
   4293e:	4e5e           	unlk %fp                                    
    if ( status == 0 ) {                                              
      rtems_fatal_error_occurred( RTEMS_NO_MEMORY );                  
    }                                                                 
  }                                                                   
                                                                      
  MSBUMP( space_available, _Protected_heap_Get_size(RTEMS_Malloc_Heap) );
   42940:	23c0 0005 ee24 	movel %d0,5ee24 <rtems_malloc_statistics>   
      printk( "\n" );                                                 
      rtems_print_buffer( (heap_begin + heap_size) - 48, 48 );        
      rtems_fatal_error_occurred( RTEMS_NO_MEMORY );                  
    }                                                                 
  #endif                                                              
}                                                                     
   42946:	4e75           	rts                                         
                                                                      
  if (                                                                
    !rtems_unified_work_area                                          
      && rtems_configuration_get_do_zero_of_workspace()               
  ) {                                                                 
     memset( heap_begin, 0, heap_size );                              
   42948:	2f02           	movel %d2,%sp@-                             
   4294a:	42a7           	clrl %sp@-                                  
   4294c:	2f03           	movel %d3,%sp@-                             
   4294e:	4eb9 0004 f484 	jsr 4f484 <memset>                          
   *  Unfortunately we cannot use assert if this fails because if this
   *  has failed we do not have a heap and if we do not have a heap   
   *  STDIO cannot work because there will be no buffers.             
   */                                                                 
                                                                      
  if ( !rtems_unified_work_area ) {                                   
   42954:	4fef 000c      	lea %sp@(12),%sp                            
   42958:	4a39 0005 dda5 	tstb 5dda5 <rtems_unified_work_area>        
   4295e:	66c0           	bnes 42920 <RTEMS_Malloc_Initialize+0x6c>   
   42960:	4878 0004      	pea 4 <CONTEXT_ARG>                         
   42964:	2f02           	movel %d2,%sp@-                             
   42966:	2f03           	movel %d3,%sp@-                             
   42968:	2f39 0005 d720 	movel 5d720 <RTEMS_Malloc_Heap>,%sp@-       
   4296e:	4eb9 0004 6c60 	jsr 46c60 <_Heap_Initialize>                
      RTEMS_Malloc_Heap,                                              
      heap_begin,                                                     
      heap_size,                                                      
      CPU_HEAP_ALIGNMENT                                              
    );                                                                
    if ( status == 0 ) {                                              
   42974:	4fef 0010      	lea %sp@(16),%sp                            
   42978:	4a80           	tstl %d0                                    
   4297a:	66a4           	bnes 42920 <RTEMS_Malloc_Initialize+0x6c>   
      rtems_fatal_error_occurred( RTEMS_NO_MEMORY );                  
   4297c:	4878 001a      	pea 1a <OPER2+0x6>                          <== NOT EXECUTED
   42980:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
	...                                                                  
                                                                      
00044836 <Stack_check_Dump_threads_usage>:                            
static rtems_printk_plugin_t   print_handler;                         
                                                                      
void Stack_check_Dump_threads_usage(                                  
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
   44836:	4e56 ffe0      	linkw %fp,#-32                              <== NOT EXECUTED
   4483a:	48d7 1c1c      	moveml %d2-%d4/%a2-%a4,%sp@                 <== NOT EXECUTED
   4483e:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
  void           *high_water_mark;                                    
  void           *current;                                            
  Stack_Control  *stack;                                              
  char            name[5];                                            
                                                                      
  if ( !the_thread )                                                  
   44842:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   44844:	6700 00c2      	beqw 44908 <Stack_check_Dump_threads_usage+0xd2><== NOT EXECUTED
    return;                                                           
                                                                      
  if ( !print_handler )                                               
   44848:	2879 000a 39c8 	moveal a39c8 <print_handler>,%a4            <== NOT EXECUTED
   4484e:	4a8c           	tstl %a4                                    <== NOT EXECUTED
   44850:	6700 00b6      	beqw 44908 <Stack_check_Dump_threads_usage+0xd2><== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Obtain interrupt stack information                              
   */                                                                 
                                                                      
  if (the_thread == (Thread_Control *) -1) {                          
   44854:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   44856:	b08a           	cmpl %a2,%d0                                <== NOT EXECUTED
   44858:	6700 00d8      	beqw 44932 <Stack_check_Dump_threads_usage+0xfc><== NOT EXECUTED
      current = 0;                                                    
    }                                                                 
    else                                                              
      return;                                                         
  } else {                                                            
    stack  = &the_thread->Start.Initial_stack;                        
   4485c:	47ea 00be      	lea %a2@(190),%a3                           <== NOT EXECUTED
    current = (void *)_CPU_Context_Get_SP( &the_thread->Registers );  
  }                                                                   
                                                                      
  low  = Stack_check_usable_stack_start(stack);                       
  size = Stack_check_usable_stack_size(stack);                        
   44860:	2413           	movel %a3@,%d2                              <== NOT EXECUTED
   44862:	0682 ffff fff0 	addil #-16,%d2                              <== NOT EXECUTED
  } else {                                                            
    stack  = &the_thread->Start.Initial_stack;                        
    current = (void *)_CPU_Context_Get_SP( &the_thread->Registers );  
  }                                                                   
                                                                      
  low  = Stack_check_usable_stack_start(stack);                       
   44868:	262b 0004      	movel %a3@(4),%d3                           <== NOT EXECUTED
   4486c:	0683 0000 0010 	addil #16,%d3                               <== NOT EXECUTED
    }                                                                 
    else                                                              
      return;                                                         
  } else {                                                            
    stack  = &the_thread->Start.Initial_stack;                        
    current = (void *)_CPU_Context_Get_SP( &the_thread->Registers );  
   44872:	282a 00fe      	movel %a2@(254),%d4                         <== NOT EXECUTED
  }                                                                   
                                                                      
  low  = Stack_check_usable_stack_start(stack);                       
  size = Stack_check_usable_stack_size(stack);                        
                                                                      
  high_water_mark = Stack_check_find_high_water_mark(low, size);      
   44876:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   44878:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4487a:	4eb9 0004 4802 	jsr 44802 <Stack_check_find_high_water_mark><== NOT EXECUTED
                                                                      
  if ( high_water_mark )                                              
   44880:	508f           	addql #8,%sp                                <== NOT EXECUTED
   44882:	4a80           	tstl %d0                                    <== NOT EXECUTED
   44884:	6700 00e2      	beqw 44968 <Stack_check_Dump_threads_usage+0x132><== NOT EXECUTED
    used = Stack_check_Calculate_used( low, size, high_water_mark );  
   44888:	d682           	addl %d2,%d3                                <== NOT EXECUTED
   4488a:	9680           	subl %d0,%d3                                <== NOT EXECUTED
  else                                                                
    used = 0;                                                         
                                                                      
  if ( the_thread ) {                                                 
   4488c:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4488e:	6700 00e0      	beqw 44970 <Stack_check_Dump_threads_usage+0x13a><== NOT EXECUTED
    (*print_handler)(                                                 
   44892:	486e fffb      	pea %fp@(-5)                                <== NOT EXECUTED
   44896:	4878 0005      	pea 5 <COMPARE>                             <== NOT EXECUTED
   4489a:	2f2a 0008      	movel %a2@(8),%sp@-                         <== NOT EXECUTED
   4489e:	4eb9 0004 a93c 	jsr 4a93c <rtems_object_get_name>           <== NOT EXECUTED
   448a4:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   448a6:	2f2a 0008      	movel %a2@(8),%sp@-                         <== NOT EXECUTED
   448aa:	4879 0009 9260 	pea 99260 <IntUartPollCallbacks.6602+0x20>  <== NOT EXECUTED
   448b0:	2f39 000a 39c4 	movel a39c4 <print_context>,%sp@-           <== NOT EXECUTED
   448b6:	4e94           	jsr %a4@                                    <== NOT EXECUTED
    );                                                                
  } else {                                                            
    (*print_handler)( print_context, "0x%08" PRIx32 "  INTR", ~0 );   
  }                                                                   
                                                                      
  (*print_handler)(                                                   
   448b8:	206b 0004      	moveal %a3@(4),%a0                          <== NOT EXECUTED
    used = Stack_check_Calculate_used( low, size, high_water_mark );  
  else                                                                
    used = 0;                                                         
                                                                      
  if ( the_thread ) {                                                 
    (*print_handler)(                                                 
   448bc:	4fef 001c      	lea %sp@(28),%sp                            <== NOT EXECUTED
    );                                                                
  } else {                                                            
    (*print_handler)( print_context, "0x%08" PRIx32 "  INTR", ~0 );   
  }                                                                   
                                                                      
  (*print_handler)(                                                   
   448c0:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   448c2:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   448c4:	2013           	movel %a3@,%d0                              <== NOT EXECUTED
   448c6:	5380           	subql #1,%d0                                <== NOT EXECUTED
   448c8:	4870 0800      	pea %a0@(00000000,%d0:l)                    <== NOT EXECUTED
   448cc:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   448ce:	4879 0009 927b 	pea 9927b <IntUartPollCallbacks.6602+0x3b>  <== NOT EXECUTED
   448d4:	2f39 000a 39c4 	movel a39c4 <print_context>,%sp@-           <== NOT EXECUTED
   448da:	2079 000a 39c8 	moveal a39c8 <print_handler>,%a0            <== NOT EXECUTED
   448e0:	4e90           	jsr %a0@                                    <== NOT EXECUTED
    stack->area + stack->size - 1,                                    
    current,                                                          
    size                                                              
  );                                                                  
                                                                      
  if (Stack_check_Initialized == 0) {                                 
   448e2:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
   448e6:	4ab9 000a 39c0 	tstl a39c0 <Stack_check_Initialized>        <== NOT EXECUTED
   448ec:	6724           	beqs 44912 <Stack_check_Dump_threads_usage+0xdc><== NOT EXECUTED
    (*print_handler)( print_context, "Unavailable\n" );               
  } else {                                                            
    (*print_handler)( print_context, "%8" PRId32 "\n", used );        
   448ee:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   448f0:	4879 0009 92a6 	pea 992a6 <IntUartPollCallbacks.6602+0x66>  <== NOT EXECUTED
   448f6:	2f39 000a 39c4 	movel a39c4 <print_context>,%sp@-           <== NOT EXECUTED
   448fc:	2079 000a 39c8 	moveal a39c8 <print_handler>,%a0            <== NOT EXECUTED
   44902:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   44904:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
  }                                                                   
                                                                      
                                                                      
}                                                                     
   44908:	4cee 1c1c ffe0 	moveml %fp@(-32),%d2-%d4/%a2-%a4            <== NOT EXECUTED
   4490e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44910:	4e75           	rts                                         <== NOT EXECUTED
    current,                                                          
    size                                                              
  );                                                                  
                                                                      
  if (Stack_check_Initialized == 0) {                                 
    (*print_handler)( print_context, "Unavailable\n" );               
   44912:	4879 0009 9299 	pea 99299 <IntUartPollCallbacks.6602+0x59>  <== NOT EXECUTED
   44918:	2f39 000a 39c4 	movel a39c4 <print_context>,%sp@-           <== NOT EXECUTED
   4491e:	2079 000a 39c8 	moveal a39c8 <print_handler>,%a0            <== NOT EXECUTED
   44924:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   44926:	508f           	addql #8,%sp                                <== NOT EXECUTED
  } else {                                                            
    (*print_handler)( print_context, "%8" PRId32 "\n", used );        
  }                                                                   
                                                                      
                                                                      
}                                                                     
   44928:	4cee 1c1c ffe0 	moveml %fp@(-32),%d2-%d4/%a2-%a4            <== NOT EXECUTED
   4492e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44930:	4e75           	rts                                         <== NOT EXECUTED
  /*                                                                  
   *  Obtain interrupt stack information                              
   */                                                                 
                                                                      
  if (the_thread == (Thread_Control *) -1) {                          
    if (Stack_check_Interrupt_stack.area) {                           
   44932:	4ab9 000a 6918 	tstl a6918 <Stack_check_Interrupt_stack+0x4><== NOT EXECUTED
   44938:	67ce           	beqs 44908 <Stack_check_Dump_threads_usage+0xd2><== NOT EXECUTED
   4493a:	47f9 000a 6914 	lea a6914 <Stack_check_Interrupt_stack>,%a3 <== NOT EXECUTED
   44940:	4284           	clrl %d4                                    <== NOT EXECUTED
   44942:	95ca           	subal %a2,%a2                               <== NOT EXECUTED
    stack  = &the_thread->Start.Initial_stack;                        
    current = (void *)_CPU_Context_Get_SP( &the_thread->Registers );  
  }                                                                   
                                                                      
  low  = Stack_check_usable_stack_start(stack);                       
  size = Stack_check_usable_stack_size(stack);                        
   44944:	2413           	movel %a3@,%d2                              <== NOT EXECUTED
   44946:	0682 ffff fff0 	addil #-16,%d2                              <== NOT EXECUTED
  } else {                                                            
    stack  = &the_thread->Start.Initial_stack;                        
    current = (void *)_CPU_Context_Get_SP( &the_thread->Registers );  
  }                                                                   
                                                                      
  low  = Stack_check_usable_stack_start(stack);                       
   4494c:	262b 0004      	movel %a3@(4),%d3                           <== NOT EXECUTED
   44950:	0683 0000 0010 	addil #16,%d3                               <== NOT EXECUTED
  size = Stack_check_usable_stack_size(stack);                        
                                                                      
  high_water_mark = Stack_check_find_high_water_mark(low, size);      
   44956:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   44958:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4495a:	4eb9 0004 4802 	jsr 44802 <Stack_check_find_high_water_mark><== NOT EXECUTED
                                                                      
  if ( high_water_mark )                                              
   44960:	508f           	addql #8,%sp                                <== NOT EXECUTED
   44962:	4a80           	tstl %d0                                    <== NOT EXECUTED
   44964:	6600 ff22      	bnew 44888 <Stack_check_Dump_threads_usage+0x52><== NOT EXECUTED
   44968:	4283           	clrl %d3                                    <== NOT EXECUTED
    used = Stack_check_Calculate_used( low, size, high_water_mark );  
  else                                                                
    used = 0;                                                         
                                                                      
  if ( the_thread ) {                                                 
   4496a:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4496c:	6600 ff24      	bnew 44892 <Stack_check_Dump_threads_usage+0x5c><== NOT EXECUTED
      "0x%08" PRIx32 "  %4s",                                         
      the_thread->Object.id,                                          
      rtems_object_get_name( the_thread->Object.id, sizeof(name), name )
    );                                                                
  } else {                                                            
    (*print_handler)( print_context, "0x%08" PRIx32 "  INTR", ~0 );   
   44970:	4878 ffff      	pea ffffffff <LESS>                         <== NOT EXECUTED
   44974:	4879 0009 926d 	pea 9926d <IntUartPollCallbacks.6602+0x2d>  <== NOT EXECUTED
   4497a:	2f39 000a 39c4 	movel a39c4 <print_context>,%sp@-           <== NOT EXECUTED
   44980:	4e94           	jsr %a4@                                    <== NOT EXECUTED
  }                                                                   
                                                                      
  (*print_handler)(                                                   
   44982:	206b 0004      	moveal %a3@(4),%a0                          <== NOT EXECUTED
      "0x%08" PRIx32 "  %4s",                                         
      the_thread->Object.id,                                          
      rtems_object_get_name( the_thread->Object.id, sizeof(name), name )
    );                                                                
  } else {                                                            
    (*print_handler)( print_context, "0x%08" PRIx32 "  INTR", ~0 );   
   44986:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
  }                                                                   
                                                                      
  (*print_handler)(                                                   
   4498a:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4498c:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4498e:	2013           	movel %a3@,%d0                              <== NOT EXECUTED
   44990:	5380           	subql #1,%d0                                <== NOT EXECUTED
   44992:	4870 0800      	pea %a0@(00000000,%d0:l)                    <== NOT EXECUTED
   44996:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   44998:	4879 0009 927b 	pea 9927b <IntUartPollCallbacks.6602+0x3b>  <== NOT EXECUTED
   4499e:	2f39 000a 39c4 	movel a39c4 <print_context>,%sp@-           <== NOT EXECUTED
   449a4:	2079 000a 39c8 	moveal a39c8 <print_handler>,%a0            <== NOT EXECUTED
   449aa:	4e90           	jsr %a0@                                    <== NOT EXECUTED
    stack->area + stack->size - 1,                                    
    current,                                                          
    size                                                              
  );                                                                  
                                                                      
  if (Stack_check_Initialized == 0) {                                 
   449ac:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
   449b0:	4ab9 000a 39c0 	tstl a39c0 <Stack_check_Initialized>        <== NOT EXECUTED
   449b6:	6600 ff36      	bnew 448ee <Stack_check_Dump_threads_usage+0xb8><== NOT EXECUTED
   449ba:	6000 ff56      	braw 44912 <Stack_check_Dump_threads_usage+0xdc><== NOT EXECUTED
                                                                      
00044802 <Stack_check_find_high_water_mark>:                          
     * start at lower memory and find first word that does not        
     * match pattern                                                  
     */                                                               
                                                                      
    base += PATTERN_SIZE_WORDS;                                       
    for (ebase = base + length; base < ebase; base++)                 
   44802:	70fc           	moveq #-4,%d0                               <== NOT EXECUTED
 */                                                                   
void *Stack_check_find_high_water_mark(                               
  const void *s,                                                      
  size_t      n                                                       
)                                                                     
{                                                                     
   44804:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
    /*                                                                
     * start at lower memory and find first word that does not        
     * match pattern                                                  
     */                                                               
                                                                      
    base += PATTERN_SIZE_WORDS;                                       
   44808:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   4480c:	41e8 0010      	lea %a0@(16),%a0                            <== NOT EXECUTED
    for (ebase = base + length; base < ebase; base++)                 
   44810:	c0ae 000c      	andl %fp@(12),%d0                           <== NOT EXECUTED
   44814:	d088           	addl %a0,%d0                                <== NOT EXECUTED
   44816:	b088           	cmpl %a0,%d0                                <== NOT EXECUTED
   44818:	6310           	blss 4482a <Stack_check_find_high_water_mark+0x28><== NOT EXECUTED
      if (*base != U32_PATTERN)                                       
   4481a:	223c a5a5 a5a5 	movel #-1515870811,%d1                      <== NOT EXECUTED
   44820:	b290           	cmpl %a0@,%d1                               <== NOT EXECUTED
   44822:	660c           	bnes 44830 <Stack_check_find_high_water_mark+0x2e><== NOT EXECUTED
     * start at lower memory and find first word that does not        
     * match pattern                                                  
     */                                                               
                                                                      
    base += PATTERN_SIZE_WORDS;                                       
    for (ebase = base + length; base < ebase; base++)                 
   44824:	5888           	addql #4,%a0                                <== NOT EXECUTED
   44826:	b1c0           	cmpal %d0,%a0                               <== NOT EXECUTED
   44828:	65f0           	bcss 4481a <Stack_check_find_high_water_mark+0x18><== NOT EXECUTED
   4482a:	4280           	clrl %d0                                    <== NOT EXECUTED
      if (*base != U32_PATTERN)                                       
        return (void *) base;                                         
  #endif                                                              
                                                                      
  return (void *)0;                                                   
}                                                                     
   4482c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4482e:	4e75           	rts                                         <== NOT EXECUTED
     */                                                               
                                                                      
    base += PATTERN_SIZE_WORDS;                                       
    for (ebase = base + length; base < ebase; base++)                 
      if (*base != U32_PATTERN)                                       
        return (void *) base;                                         
   44830:	2008           	movel %a0,%d0                               <== NOT EXECUTED
  #endif                                                              
                                                                      
  return (void *)0;                                                   
}                                                                     
   44832:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00044a38 <Stack_check_report_blown_task>:                             
 *                                                                    
 *  NOTE: The system is in a questionable state... we may not get     
 *        the following message out.                                  
 */                                                                   
void Stack_check_report_blown_task(Thread_Control *running, bool pattern_ok)
{                                                                     
   44a38:	4e56 ffd0      	linkw %fp,#-48                              <== NOT EXECUTED
   44a3c:	48d7 1c04      	moveml %d2/%a2-%a4,%sp@                     <== NOT EXECUTED
  Stack_Control *stack = &running->Start.Initial_stack;               
  void *pattern_area = Stack_check_Get_pattern_area(stack);           
  char name [32];                                                     
                                                                      
  printk("BLOWN STACK!!!\n");                                         
   44a40:	4879 0009 930d 	pea 9930d <IntUartPollCallbacks.6602+0xcd>  <== NOT EXECUTED
   44a46:	47f9 0004 79f4 	lea 479f4 <printk>,%a3                      <== NOT EXECUTED
 *                                                                    
 *  NOTE: The system is in a questionable state... we may not get     
 *        the following message out.                                  
 */                                                                   
void Stack_check_report_blown_task(Thread_Control *running, bool pattern_ok)
{                                                                     
   44a4c:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   44a50:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
  Stack_Control *stack = &running->Start.Initial_stack;               
  void *pattern_area = Stack_check_Get_pattern_area(stack);           
   44a54:	286a 00c2      	moveal %a2@(194),%a4                        <== NOT EXECUTED
  char name [32];                                                     
                                                                      
  printk("BLOWN STACK!!!\n");                                         
   44a58:	4e93           	jsr %a3@                                    <== NOT EXECUTED
  printk("task control block: 0x%08" PRIxPTR "\n", running);          
   44a5a:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   44a5c:	4879 0009 931d 	pea 9931d <IntUartPollCallbacks.6602+0xdd>  <== NOT EXECUTED
   44a62:	4e93           	jsr %a3@                                    <== NOT EXECUTED
  printk("task ID: 0x%08lx\n", (unsigned long) running->Object.id);   
   44a64:	2f2a 0008      	movel %a2@(8),%sp@-                         <== NOT EXECUTED
   44a68:	4879 0009 933a 	pea 9933a <IntUartPollCallbacks.6602+0xfa>  <== NOT EXECUTED
   44a6e:	4e93           	jsr %a3@                                    <== NOT EXECUTED
  printk(                                                             
   44a70:	2f2a 000c      	movel %a2@(12),%sp@-                        <== NOT EXECUTED
   44a74:	4879 0009 934c 	pea 9934c <IntUartPollCallbacks.6602+0x10c> <== NOT EXECUTED
   44a7a:	4e93           	jsr %a3@                                    <== NOT EXECUTED
    "task name: 0x%08" PRIx32 "\n",                                   
    running->Object.name.name_u32                                     
  );                                                                  
  printk(                                                             
   44a7c:	486e ffe0      	pea %fp@(-32)                               <== NOT EXECUTED
   44a80:	4878 0020      	pea 20 <OPER2+0xc>                          <== NOT EXECUTED
   44a84:	2f2a 0008      	movel %a2@(8),%sp@-                         <== NOT EXECUTED
   44a88:	4eb9 0004 a93c 	jsr 4a93c <rtems_object_get_name>           <== NOT EXECUTED
   44a8e:	4fef 0024      	lea %sp@(36),%sp                            <== NOT EXECUTED
   44a92:	2e80           	movel %d0,%sp@                              <== NOT EXECUTED
   44a94:	4879 0009 9360 	pea 99360 <IntUartPollCallbacks.6602+0x120> <== NOT EXECUTED
   44a9a:	4e93           	jsr %a3@                                    <== NOT EXECUTED
    "task name string: %s\n",                                         
    rtems_object_get_name(running->Object.id, sizeof(name), name)     
  );                                                                  
  printk(                                                             
   44a9c:	202a 00be      	movel %a2@(190),%d0                         <== NOT EXECUTED
   44aa0:	206a 00c2      	moveal %a2@(194),%a0                        <== NOT EXECUTED
   44aa4:	4870 0800      	pea %a0@(00000000,%d0:l)                    <== NOT EXECUTED
   44aa8:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   44aaa:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   44aac:	4879 0009 9376 	pea 99376 <IntUartPollCallbacks.6602+0x136> <== NOT EXECUTED
   44ab2:	4e93           	jsr %a3@                                    <== NOT EXECUTED
    "task stack area (%lu Bytes): 0x%08" PRIxPTR " .. 0x%08" PRIxPTR "\n",
    (unsigned long) stack->size,                                      
    stack->area,                                                      
    ((char *) stack->area + stack->size)                              
  );                                                                  
  if (!pattern_ok) {                                                  
   44ab4:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
   44ab8:	4a02           	tstb %d2                                    <== NOT EXECUTED
   44aba:	670a           	beqs 44ac6 <Stack_check_report_blown_task+0x8e><== NOT EXECUTED
          rtems_configuration_get_user_multiprocessing_table()->node  
      );                                                              
    }                                                                 
  #endif                                                              
                                                                      
  rtems_fatal_error_occurred(0x81);                                   
   44abc:	4878 0081      	pea 81 <DBL_MANT_DIG+0x4c>                  <== NOT EXECUTED
   44ac0:	4eb9 0004 b2c4 	jsr 4b2c4 <rtems_fatal_error_occurred>      <== NOT EXECUTED
    (unsigned long) stack->size,                                      
    stack->area,                                                      
    ((char *) stack->area + stack->size)                              
  );                                                                  
  if (!pattern_ok) {                                                  
    printk(                                                           
   44ac6:	486c 0018      	pea %a4@(24)                                <== NOT EXECUTED
   44aca:	486c 0008      	pea %a4@(8)                                 <== NOT EXECUTED
   44ace:	4878 0010      	pea 10 <INVALID_OPERATION>                  <== NOT EXECUTED
   44ad2:	4879 0009 93a7 	pea 993a7 <IntUartPollCallbacks.6602+0x167> <== NOT EXECUTED
   44ad8:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   44ada:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
          rtems_configuration_get_user_multiprocessing_table()->node  
      );                                                              
    }                                                                 
  #endif                                                              
                                                                      
  rtems_fatal_error_occurred(0x81);                                   
   44ade:	4878 0081      	pea 81 <DBL_MANT_DIG+0x4c>                  <== NOT EXECUTED
   44ae2:	4eb9 0004 b2c4 	jsr 4b2c4 <rtems_fatal_error_occurred>      <== NOT EXECUTED
                                                                      
00046764 <_API_Mutex_Unlock>:                                         
#include <rtems/score/apimutex.h>                                     
                                                                      
void _API_Mutex_Unlock(                                               
  API_Mutex_Control *the_mutex                                        
)                                                                     
{                                                                     
   46764:	4e56 0000      	linkw %fp,#0                                
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   46768:	2039 0005 ef78 	movel 5ef78 <_Thread_Dispatch_disable_level>,%d0
   4676e:	5280           	addql #1,%d0                                
   46770:	206e 0008      	moveal %fp@(8),%a0                          
   46774:	23c0 0005 ef78 	movel %d0,5ef78 <_Thread_Dispatch_disable_level>
  _Thread_Disable_dispatch();                                         
    _CORE_mutex_Surrender(                                            
   4677a:	42a7           	clrl %sp@-                                  
   4677c:	2f28 0008      	movel %a0@(8),%sp@-                         
   46780:	4868 0010      	pea %a0@(16)                                
   46784:	4eb9 0004 6a08 	jsr 46a08 <_CORE_mutex_Surrender>           
      &the_mutex->Mutex,                                              
      the_mutex->Object.id,                                           
      NULL                                                            
   );                                                                 
  _Thread_Enable_dispatch();                                          
   4678a:	4fef 000c      	lea %sp@(12),%sp                            
}                                                                     
   4678e:	4e5e           	unlk %fp                                    
    _CORE_mutex_Surrender(                                            
      &the_mutex->Mutex,                                              
      the_mutex->Object.id,                                           
      NULL                                                            
   );                                                                 
  _Thread_Enable_dispatch();                                          
   46790:	4ef9 0004 7dbc 	jmp 47dbc <_Thread_Enable_dispatch>         
	...                                                                  
                                                                      
00048bdc <_CORE_RWLock_Obtain_for_writing>:                           
   *  Otherwise, we have to block.                                    
   *  If locked for reading and no waiters, then OK to read.          
   *  If any thread is waiting, then we wait.                         
   */                                                                 
                                                                      
  _ISR_Disable( level );                                              
   48bdc:	203c 0000 0700 	movel #1792,%d0                             
  Objects_Id                           id,                            
  bool                                 wait,                          
  Watchdog_Interval                    timeout,                       
  CORE_RWLock_API_mp_support_callout   api_rwlock_mp_support          
)                                                                     
{                                                                     
   48be2:	4e56 fff4      	linkw %fp,#-12                              
   48be6:	206e 0008      	moveal %fp@(8),%a0                          
   48bea:	48d7 001c      	moveml %d2-%d4,%sp@                         
   48bee:	282e 000c      	movel %fp@(12),%d4                          
   48bf2:	242e 0010      	movel %fp@(16),%d2                          
   48bf6:	262e 0014      	movel %fp@(20),%d3                          
  ISR_Level       level;                                              
  Thread_Control *executing = _Thread_Executing;                      
   48bfa:	2279 0006 1d86 	moveal 61d86 <_Thread_Executing>,%a1        
   *  Otherwise, we have to block.                                    
   *  If locked for reading and no waiters, then OK to read.          
   *  If any thread is waiting, then we wait.                         
   */                                                                 
                                                                      
  _ISR_Disable( level );                                              
   48c00:	40c1           	movew %sr,%d1                               
   48c02:	8081           	orl %d1,%d0                                 
   48c04:	46c0           	movew %d0,%sr                               
    switch ( the_rwlock->current_state ) {                            
   48c06:	4aa8 0044      	tstl %a0@(68)                               
   48c0a:	6614           	bnes 48c20 <_CORE_RWLock_Obtain_for_writing+0x44>
      case CORE_RWLOCK_UNLOCKED:                                      
	the_rwlock->current_state = CORE_RWLOCK_LOCKED_FOR_WRITING;          
   48c0c:	7002           	moveq #2,%d0                                
   48c0e:	2140 0044      	movel %d0,%a0@(68)                          
	_ISR_Enable( level );                                                
   48c12:	46c1           	movew %d1,%sr                               
	executing->Wait.return_code = CORE_RWLOCK_SUCCESSFUL;                
   48c14:	42a9 0034      	clrl %a1@(52)                               
       _CORE_RWLock_Timeout                                           
    );                                                                
                                                                      
                                                                      
    /* return to API level so it can dispatch and we block */         
}                                                                     
   48c18:	4cd7 001c      	moveml %sp@,%d2-%d4                         
   48c1c:	4e5e           	unlk %fp                                    
   48c1e:	4e75           	rts                                         
                                                                      
    /*                                                                
     *  If the thread is not willing to wait, then return immediately.
     */                                                               
                                                                      
    if ( !wait ) {                                                    
   48c20:	4a02           	tstb %d2                                    
   48c22:	6610           	bnes 48c34 <_CORE_RWLock_Obtain_for_writing+0x58>
      _ISR_Enable( level );                                           
   48c24:	46c1           	movew %d1,%sr                               
      executing->Wait.return_code = CORE_RWLOCK_UNAVAILABLE;          
   48c26:	7002           	moveq #2,%d0                                
       _CORE_RWLock_Timeout                                           
    );                                                                
                                                                      
                                                                      
    /* return to API level so it can dispatch and we block */         
}                                                                     
   48c28:	4cd7 001c      	moveml %sp@,%d2-%d4                         
     *  If the thread is not willing to wait, then return immediately.
     */                                                               
                                                                      
    if ( !wait ) {                                                    
      _ISR_Enable( level );                                           
      executing->Wait.return_code = CORE_RWLOCK_UNAVAILABLE;          
   48c2c:	2340 0034      	movel %d0,%a1@(52)                          
       _CORE_RWLock_Timeout                                           
    );                                                                
                                                                      
                                                                      
    /* return to API level so it can dispatch and we block */         
}                                                                     
   48c30:	4e5e           	unlk %fp                                    
   48c32:	4e75           	rts                                         
     */                                                               
                                                                      
    _Thread_queue_Enter_critical_section( &the_rwlock->Wait_queue );  
    executing->Wait.queue       = &the_rwlock->Wait_queue;            
    executing->Wait.id          = id;                                 
    executing->Wait.option      = CORE_RWLOCK_THREAD_WAITING_FOR_WRITE;
   48c34:	7001           	moveq #1,%d0                                
     *  We need to wait to enter this critical section                
     */                                                               
                                                                      
    _Thread_queue_Enter_critical_section( &the_rwlock->Wait_queue );  
    executing->Wait.queue       = &the_rwlock->Wait_queue;            
    executing->Wait.id          = id;                                 
   48c36:	2344 0020      	movel %d4,%a1@(32)                          
    executing->Wait.option      = CORE_RWLOCK_THREAD_WAITING_FOR_WRITE;
    executing->Wait.return_code = CORE_RWLOCK_SUCCESSFUL;             
   48c3a:	42a9 0034      	clrl %a1@(52)                               
    /*                                                                
     *  We need to wait to enter this critical section                
     */                                                               
                                                                      
    _Thread_queue_Enter_critical_section( &the_rwlock->Wait_queue );  
    executing->Wait.queue       = &the_rwlock->Wait_queue;            
   48c3e:	2348 0044      	movel %a0,%a1@(68)                          
    executing->Wait.id          = id;                                 
    executing->Wait.option      = CORE_RWLOCK_THREAD_WAITING_FOR_WRITE;
   48c42:	2340 0030      	movel %d0,%a1@(48)                          
   48c46:	2140 0030      	movel %d0,%a0@(48)                          
    executing->Wait.return_code = CORE_RWLOCK_SUCCESSFUL;             
    _ISR_Enable( level );                                             
   48c4a:	46c1           	movew %d1,%sr                               
                                                                      
    _Thread_queue_Enqueue_with_handler(                               
   48c4c:	2d43 000c      	movel %d3,%fp@(12)                          
   48c50:	203c 0004 8d48 	movel #298312,%d0                           
   48c56:	2d48 0008      	movel %a0,%fp@(8)                           
   48c5a:	2d40 0010      	movel %d0,%fp@(16)                          
       _CORE_RWLock_Timeout                                           
    );                                                                
                                                                      
                                                                      
    /* return to API level so it can dispatch and we block */         
}                                                                     
   48c5e:	4cd7 001c      	moveml %sp@,%d2-%d4                         
   48c62:	4e5e           	unlk %fp                                    
    executing->Wait.id          = id;                                 
    executing->Wait.option      = CORE_RWLOCK_THREAD_WAITING_FOR_WRITE;
    executing->Wait.return_code = CORE_RWLOCK_SUCCESSFUL;             
    _ISR_Enable( level );                                             
                                                                      
    _Thread_queue_Enqueue_with_handler(                               
   48c64:	4ef9 0004 a5c4 	jmp 4a5c4 <_Thread_queue_Enqueue_with_handler>
	...                                                                  
                                                                      
0004df24 <_CORE_barrier_Wait>:                                        
  Thread_Control *executing;                                          
  ISR_Level       level;                                              
                                                                      
  executing = _Thread_Executing;                                      
  executing->Wait.return_code = CORE_BARRIER_STATUS_SUCCESSFUL;       
  _ISR_Disable( level );                                              
   4df24:	203c 0000 0700 	movel #1792,%d0                             
  Objects_Id                           id,                            
  bool                                 wait,                          
  Watchdog_Interval                    timeout,                       
  CORE_barrier_API_mp_support_callout  api_barrier_mp_support         
)                                                                     
{                                                                     
   4df2a:	4e56 fff4      	linkw %fp,#-12                              
  Thread_Control *executing;                                          
  ISR_Level       level;                                              
                                                                      
  executing = _Thread_Executing;                                      
   4df2e:	2279 0005 f032 	moveal 5f032 <_Thread_Executing>,%a1        
  Objects_Id                           id,                            
  bool                                 wait,                          
  Watchdog_Interval                    timeout,                       
  CORE_barrier_API_mp_support_callout  api_barrier_mp_support         
)                                                                     
{                                                                     
   4df34:	48d7 001c      	moveml %d2-%d4,%sp@                         
   4df38:	242e 000c      	movel %fp@(12),%d2                          
   4df3c:	262e 0014      	movel %fp@(20),%d3                          
  Thread_Control *executing;                                          
  ISR_Level       level;                                              
                                                                      
  executing = _Thread_Executing;                                      
  executing->Wait.return_code = CORE_BARRIER_STATUS_SUCCESSFUL;       
   4df40:	42a9 0034      	clrl %a1@(52)                               
  Objects_Id                           id,                            
  bool                                 wait,                          
  Watchdog_Interval                    timeout,                       
  CORE_barrier_API_mp_support_callout  api_barrier_mp_support         
)                                                                     
{                                                                     
   4df44:	206e 0008      	moveal %fp@(8),%a0                          
   4df48:	282e 0018      	movel %fp@(24),%d4                          
  Thread_Control *executing;                                          
  ISR_Level       level;                                              
                                                                      
  executing = _Thread_Executing;                                      
  executing->Wait.return_code = CORE_BARRIER_STATUS_SUCCESSFUL;       
  _ISR_Disable( level );                                              
   4df4c:	40c1           	movew %sr,%d1                               
   4df4e:	8081           	orl %d1,%d0                                 
   4df50:	46c0           	movew %d0,%sr                               
  the_barrier->number_of_waiting_threads++;                           
   4df52:	2028 0048      	movel %a0@(72),%d0                          
   4df56:	5280           	addql #1,%d0                                
   4df58:	2140 0048      	movel %d0,%a0@(72)                          
  if ( _CORE_barrier_Is_automatic( &the_barrier->Attributes ) ) {     
   4df5c:	4aa8 0040      	tstl %a0@(64)                               
   4df60:	6606           	bnes 4df68 <_CORE_barrier_Wait+0x44>        
    if ( the_barrier->number_of_waiting_threads ==                    
	 the_barrier->Attributes.maximum_count) {                            
   4df62:	b0a8 0044      	cmpl %a0@(68),%d0                           
   4df66:	672e           	beqs 4df96 <_CORE_barrier_Wait+0x72>        
   4df68:	7001           	moveq #1,%d0                                
    }                                                                 
  }                                                                   
                                                                      
  _Thread_queue_Enter_critical_section( &the_barrier->Wait_queue );   
  executing->Wait.queue          = &the_barrier->Wait_queue;          
  executing->Wait.id             = id;                                
   4df6a:	2342 0020      	movel %d2,%a1@(32)                          
      return;                                                         
    }                                                                 
  }                                                                   
                                                                      
  _Thread_queue_Enter_critical_section( &the_barrier->Wait_queue );   
  executing->Wait.queue          = &the_barrier->Wait_queue;          
   4df6e:	2348 0044      	movel %a0,%a1@(68)                          
   4df72:	2140 0030      	movel %d0,%a0@(48)                          
  executing->Wait.id             = id;                                
  _ISR_Enable( level );                                               
   4df76:	46c1           	movew %d1,%sr                               
                                                                      
  _Thread_queue_Enqueue( &the_barrier->Wait_queue, timeout );         
   4df78:	2d43 000c      	movel %d3,%fp@(12)                          
   4df7c:	203c 0004 8678 	movel #296568,%d0                           
   4df82:	2d48 0008      	movel %a0,%fp@(8)                           
   4df86:	2d40 0010      	movel %d0,%fp@(16)                          
}                                                                     
   4df8a:	4cd7 001c      	moveml %sp@,%d2-%d4                         
   4df8e:	4e5e           	unlk %fp                                    
  _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 );         
   4df90:	4ef9 0004 8318 	jmp 48318 <_Thread_queue_Enqueue_with_handler>
  _ISR_Disable( level );                                              
  the_barrier->number_of_waiting_threads++;                           
  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;
   4df96:	7001           	moveq #1,%d0                                
   4df98:	2340 0034      	movel %d0,%a1@(52)                          
      _ISR_Enable( level );                                           
   4df9c:	46c1           	movew %d1,%sr                               
      _CORE_barrier_Release( the_barrier, id, api_barrier_mp_support );
   4df9e:	2d44 0010      	movel %d4,%fp@(16)                          
   4dfa2:	2d42 000c      	movel %d2,%fp@(12)                          
   4dfa6:	2d48 0008      	movel %a0,%fp@(8)                           
  executing->Wait.queue          = &the_barrier->Wait_queue;          
  executing->Wait.id             = id;                                
  _ISR_Enable( level );                                               
                                                                      
  _Thread_queue_Enqueue( &the_barrier->Wait_queue, timeout );         
}                                                                     
   4dfaa:	4cd7 001c      	moveml %sp@,%d2-%d4                         
   4dfae:	4e5e           	unlk %fp                                    
  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 );
   4dfb0:	4ef9 0004 dee8 	jmp 4dee8 <_CORE_barrier_Release>           
	...                                                                  
                                                                      
00059f8c <_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                    
)                                                                     
{                                                                     
   59f8c:	4e56 ffe0      	linkw %fp,#-32                              
   59f90:	48d7 3c3c      	moveml %d2-%d5/%a2-%a5,%sp@                 
   59f94:	266e 0008      	moveal %fp@(8),%a3                          
   59f98:	282e 000c      	movel %fp@(12),%d4                          
   59f9c:	242e 0010      	movel %fp@(16),%d2                          
   59fa0:	2a2e 001c      	movel %fp@(28),%d5                          
  Thread_Control          *the_thread;                                
  uint32_t                 number_broadcasted;                        
  Thread_Wait_information *waitp;                                     
                                                                      
  if ( size > the_message_queue->maximum_message_size ) {             
   59fa4:	b4ab 004c      	cmpl %a3@(76),%d2                           
   59fa8:	6262           	bhis 5a00c <_CORE_message_queue_Broadcast+0x80>
   *  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 ) {         
   59faa:	4aab 0048      	tstl %a3@(72)                               
   59fae:	664c           	bnes 59ffc <_CORE_message_queue_Broadcast+0x70>
   *  There must be no pending messages if there is a thread waiting to
   *  receive a message.                                              
   */                                                                 
  number_broadcasted = 0;                                             
  while ((the_thread =                                                
          _Thread_queue_Dequeue(&the_message_queue->Wait_queue))) {   
   59fb0:	2f0b           	movel %a3,%sp@-                             
   59fb2:	49f9 0005 c6ec 	lea 5c6ec <_Thread_queue_Dequeue>,%a4       
   59fb8:	4283           	clrl %d3                                    
  const void *source,                                                 
  void       *destination,                                            
  size_t      size                                                    
)                                                                     
{                                                                     
  memcpy(destination, source, size);                                  
   59fba:	4bf9 0006 3654 	lea 63654 <memcpy>,%a5                      
   59fc0:	4e94           	jsr %a4@                                    
  /*                                                                  
   *  There must be no pending messages if there is a thread waiting to
   *  receive a message.                                              
   */                                                                 
  number_broadcasted = 0;                                             
  while ((the_thread =                                                
   59fc2:	588f           	addql #4,%sp                                
          _Thread_queue_Dequeue(&the_message_queue->Wait_queue))) {   
   59fc4:	2440           	moveal %d0,%a2                              
  /*                                                                  
   *  There must be no pending messages if there is a thread waiting to
   *  receive a message.                                              
   */                                                                 
  number_broadcasted = 0;                                             
  while ((the_thread =                                                
   59fc6:	4a80           	tstl %d0                                    
   59fc8:	6722           	beqs 59fec <_CORE_message_queue_Broadcast+0x60>
   59fca:	2f02           	movel %d2,%sp@-                             
          _Thread_queue_Dequeue(&the_message_queue->Wait_queue))) {   
    waitp = &the_thread->Wait;                                        
    number_broadcasted += 1;                                          
   59fcc:	5283           	addql #1,%d3                                
   59fce:	2f04           	movel %d4,%sp@-                             
   59fd0:	2f2a 002c      	movel %a2@(44),%sp@-                        
   59fd4:	4e95           	jsr %a5@                                    
      buffer,                                                         
      waitp->return_argument_second.mutable_object,                   
      size                                                            
    );                                                                
                                                                      
    *(size_t *) the_thread->Wait.return_argument = size;              
   59fd6:	206a 0028      	moveal %a2@(40),%a0                         
   59fda:	4fef 000c      	lea %sp@(12),%sp                            
   59fde:	2082           	movel %d2,%a0@                              
   *  There must be no pending messages if there is a thread waiting to
   *  receive a message.                                              
   */                                                                 
  number_broadcasted = 0;                                             
  while ((the_thread =                                                
          _Thread_queue_Dequeue(&the_message_queue->Wait_queue))) {   
   59fe0:	2f0b           	movel %a3,%sp@-                             
   59fe2:	4e94           	jsr %a4@                                    
  /*                                                                  
   *  There must be no pending messages if there is a thread waiting to
   *  receive a message.                                              
   */                                                                 
  number_broadcasted = 0;                                             
  while ((the_thread =                                                
   59fe4:	588f           	addql #4,%sp                                
          _Thread_queue_Dequeue(&the_message_queue->Wait_queue))) {   
   59fe6:	2440           	moveal %d0,%a2                              
  /*                                                                  
   *  There must be no pending messages if there is a thread waiting to
   *  receive a message.                                              
   */                                                                 
  number_broadcasted = 0;                                             
  while ((the_thread =                                                
   59fe8:	4a80           	tstl %d0                                    
   59fea:	66de           	bnes 59fca <_CORE_message_queue_Broadcast+0x3e>
      if ( !_Objects_Is_local_id( the_thread->Object.id ) )           
        (*api_message_queue_mp_support) ( the_thread, id );           
    #endif                                                            
                                                                      
  }                                                                   
  *count = number_broadcasted;                                        
   59fec:	2045           	moveal %d5,%a0                              
   59fee:	4280           	clrl %d0                                    
   59ff0:	2083           	movel %d3,%a0@                              
  return CORE_MESSAGE_QUEUE_STATUS_SUCCESSFUL;                        
}                                                                     
   59ff2:	4cee 3c3c ffe0 	moveml %fp@(-32),%d2-%d5/%a2-%a5            
   59ff8:	4e5e           	unlk %fp                                    
   59ffa:	4e75           	rts                                         
   *        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;                                                       
   59ffc:	2045           	moveal %d5,%a0                              
   59ffe:	4280           	clrl %d0                                    
    #endif                                                            
                                                                      
  }                                                                   
  *count = number_broadcasted;                                        
  return CORE_MESSAGE_QUEUE_STATUS_SUCCESSFUL;                        
}                                                                     
   5a000:	4cee 3c3c ffe0 	moveml %fp@(-32),%d2-%d5/%a2-%a5            
   *        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;                                                       
   5a006:	4290           	clrl %a0@                                   
    #endif                                                            
                                                                      
  }                                                                   
  *count = number_broadcasted;                                        
  return CORE_MESSAGE_QUEUE_STATUS_SUCCESSFUL;                        
}                                                                     
   5a008:	4e5e           	unlk %fp                                    
   5a00a:	4e75           	rts                                         
{                                                                     
  Thread_Control          *the_thread;                                
  uint32_t                 number_broadcasted;                        
  Thread_Wait_information *waitp;                                     
                                                                      
  if ( size > the_message_queue->maximum_message_size ) {             
   5a00c:	7001           	moveq #1,%d0                                <== NOT EXECUTED
    #endif                                                            
                                                                      
  }                                                                   
  *count = number_broadcasted;                                        
  return CORE_MESSAGE_QUEUE_STATUS_SUCCESSFUL;                        
}                                                                     
   5a00e:	4cee 3c3c ffe0 	moveml %fp@(-32),%d2-%d5/%a2-%a5            <== NOT EXECUTED
   5a014:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00053d28 <_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                                  
)                                                                     
{                                                                     
   53d28:	4e56 0000      	linkw %fp,#0                                
   53d2c:	2f0a           	movel %a2,%sp@-                             
  /*                                                                  
   *  This will flush blocked threads whether they were blocked on    
   *  a send or receive.                                              
   */                                                                 
                                                                      
  _Thread_queue_Flush(                                                
   53d2e:	2f2e 0010      	movel %fp@(16),%sp@-                        
   53d32:	2f2e 000c      	movel %fp@(12),%sp@-                        
void _CORE_message_queue_Close(                                       
  CORE_message_queue_Control *the_message_queue,                      
  Thread_queue_Flush_callout  remote_extract_callout,                 
  uint32_t                    status                                  
)                                                                     
{                                                                     
   53d36:	246e 0008      	moveal %fp@(8),%a2                          
  /*                                                                  
   *  This will flush blocked threads whether they were blocked on    
   *  a send or receive.                                              
   */                                                                 
                                                                      
  _Thread_queue_Flush(                                                
   53d3a:	2f0a           	movel %a2,%sp@-                             
   53d3c:	4eb9 0004 db4c 	jsr 4db4c <_Thread_queue_Flush>             
   *  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 )           
   53d42:	4fef 000c      	lea %sp@(12),%sp                            
   53d46:	4aaa 0048      	tstl %a2@(72)                               
   53d4a:	6612           	bnes 53d5e <_CORE_message_queue_Close+0x36> 
    (void) _CORE_message_queue_Flush_support( the_message_queue );    
                                                                      
  (void) _Workspace_Free( the_message_queue->message_buffers );       
   53d4c:	2d6a 005c 0008 	movel %a2@(92),%fp@(8)                      
                                                                      
}                                                                     
   53d52:	246e fffc      	moveal %fp@(-4),%a2                         
   53d56:	4e5e           	unlk %fp                                    
   */                                                                 
                                                                      
  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 );       
   53d58:	4ef9 0004 e87c 	jmp 4e87c <_Workspace_Free>                 
   *  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 )           
    (void) _CORE_message_queue_Flush_support( the_message_queue );    
   53d5e:	2f0a           	movel %a2,%sp@-                             
   53d60:	4eb9 0005 3d7c 	jsr 53d7c <_CORE_message_queue_Flush_support>
                                                                      
  (void) _Workspace_Free( the_message_queue->message_buffers );       
   53d66:	2d6a 005c 0008 	movel %a2@(92),%fp@(8)                      
   *  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 )           
    (void) _CORE_message_queue_Flush_support( the_message_queue );    
   53d6c:	588f           	addql #4,%sp                                
                                                                      
  (void) _Workspace_Free( the_message_queue->message_buffers );       
                                                                      
}                                                                     
   53d6e:	246e fffc      	moveal %fp@(-4),%a2                         
   53d72:	4e5e           	unlk %fp                                    
   */                                                                 
                                                                      
  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 );       
   53d74:	4ef9 0004 e87c 	jmp 4e87c <_Workspace_Free>                 
	...                                                                  
                                                                      
0004fde4 <_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)) {              
   4fde4:	7203           	moveq #3,%d1                                
  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                 
)                                                                     
{                                                                     
   4fde6:	4e56 fff4      	linkw %fp,#-12                              
   4fdea:	202e 0014      	movel %fp@(20),%d0                          
   4fdee:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
   4fdf2:	246e 0008      	moveal %fp@(8),%a2                          
   4fdf6:	242e 0010      	movel %fp@(16),%d2                          
  /*                                                                  
   *  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)) {              
   4fdfa:	c280           	andl %d0,%d1                                
)                                                                     
{                                                                     
  size_t message_buffering_required;                                  
  size_t allocated_message_size;                                      
                                                                      
  the_message_queue->maximum_pending_messages   = maximum_pending_messages;
   4fdfc:	2542 0044      	movel %d2,%a2@(68)                          
  the_message_queue->number_of_pending_messages = 0;                  
   4fe00:	42aa 0048      	clrl %a2@(72)                               
  the_message_queue->maximum_message_size       = maximum_message_size;
   4fe04:	2540 004c      	movel %d0,%a2@(76)                          
    CORE_message_queue_Control        *the_message_queue,             
    CORE_message_queue_Notify_Handler  the_handler,                   
    void                              *the_argument                   
  )                                                                   
  {                                                                   
    the_message_queue->notify_handler  = the_handler;                 
   4fe08:	42aa 0060      	clrl %a2@(96)                               
    the_message_queue->notify_argument = the_argument;                
   4fe0c:	42aa 0064      	clrl %a2@(100)                              
  /*                                                                  
   *  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)) {              
   4fe10:	4a81           	tstl %d1                                    
   4fe12:	6620           	bnes 4fe34 <_CORE_message_queue_Initialize+0x50>
   4fe14:	2200           	movel %d0,%d1                               
  /*                                                                  
   *  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));
   4fe16:	2601           	movel %d1,%d3                               
   4fe18:	0683 0000 0014 	addil #20,%d3                               
                                                                      
  /*                                                                  
   *  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 *    
   4fe1e:	2003           	movel %d3,%d0                               
   4fe20:	4c02 0800      	mulsl %d2,%d0                               
       (allocated_message_size + sizeof(CORE_message_queue_Buffer_control));
                                                                      
  if (message_buffering_required < allocated_message_size)            
   4fe24:	b280           	cmpl %d0,%d1                                
   4fe26:	631c           	blss 4fe44 <_CORE_message_queue_Initialize+0x60>
       THREAD_QUEUE_DISCIPLINE_PRIORITY : THREAD_QUEUE_DISCIPLINE_FIFO,
    STATES_WAITING_FOR_MESSAGE,                                       
    CORE_MESSAGE_QUEUE_STATUS_TIMEOUT                                 
  );                                                                  
                                                                      
  return true;                                                        
   4fe28:	4200           	clrb %d0                                    
}                                                                     
   4fe2a:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   4fe30:	4e5e           	unlk %fp                                    
   4fe32:	4e75           	rts                                         
   *  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)) {              
    allocated_message_size += sizeof(uint32_t);                       
   4fe34:	2200           	movel %d0,%d1                               
   4fe36:	5881           	addql #4,%d1                                
    allocated_message_size &= ~(sizeof(uint32_t) - 1);                
   4fe38:	76fc           	moveq #-4,%d3                               
   4fe3a:	c283           	andl %d3,%d1                                
  }                                                                   
                                                                      
  if (allocated_message_size < maximum_message_size)                  
   4fe3c:	b280           	cmpl %d0,%d1                                
   4fe3e:	64d6           	bccs 4fe16 <_CORE_message_queue_Initialize+0x32>
       THREAD_QUEUE_DISCIPLINE_PRIORITY : THREAD_QUEUE_DISCIPLINE_FIFO,
    STATES_WAITING_FOR_MESSAGE,                                       
    CORE_MESSAGE_QUEUE_STATUS_TIMEOUT                                 
  );                                                                  
                                                                      
  return true;                                                        
   4fe40:	4200           	clrb %d0                                    <== NOT EXECUTED
   4fe42:	60e6           	bras 4fe2a <_CORE_message_queue_Initialize+0x46><== NOT EXECUTED
    return false;                                                     
                                                                      
  /*                                                                  
   *  Attempt to allocate the message memory                          
   */                                                                 
  the_message_queue->message_buffers = (CORE_message_queue_Buffer *)  
   4fe44:	2f00           	movel %d0,%sp@-                             
   4fe46:	4eb9 0005 2c74 	jsr 52c74 <_Workspace_Allocate>             
     _Workspace_Allocate( message_buffering_required );               
                                                                      
  if (the_message_queue->message_buffers == 0)                        
   4fe4c:	588f           	addql #4,%sp                                
    return false;                                                     
                                                                      
  /*                                                                  
   *  Attempt to allocate the message memory                          
   */                                                                 
  the_message_queue->message_buffers = (CORE_message_queue_Buffer *)  
   4fe4e:	2540 005c      	movel %d0,%a2@(92)                          
     _Workspace_Allocate( message_buffering_required );               
                                                                      
  if (the_message_queue->message_buffers == 0)                        
   4fe52:	67d4           	beqs 4fe28 <_CORE_message_queue_Initialize+0x44>
                                                                      
  /*                                                                  
   *  Initialize the pool of inactive messages, pending messages,     
   *  and set of waiting threads.                                     
   */                                                                 
  _Chain_Initialize (                                                 
   4fe54:	2f03           	movel %d3,%sp@-                             
   4fe56:	2f02           	movel %d2,%sp@-                             
   4fe58:	2f00           	movel %d0,%sp@-                             
   4fe5a:	486a 0068      	pea %a2@(104)                               
   4fe5e:	4eb9 0005 51e4 	jsr 551e4 <_Chain_Initialize>               
    allocated_message_size + sizeof( CORE_message_queue_Buffer_control )
  );                                                                  
                                                                      
  _Chain_Initialize_empty( &the_message_queue->Pending_messages );    
                                                                      
  _Thread_queue_Initialize(                                           
   4fe64:	4878 0006      	pea 6 <EXTENDSFDF>                          
   4fe68:	7001           	moveq #1,%d0                                
   4fe6a:	206e 000c      	moveal %fp@(12),%a0                         
   4fe6e:	b090           	cmpl %a0@,%d0                               
   4fe70:	57c0           	seq %d0                                     
   4fe72:	4878 0080      	pea 80 <DBL_MANT_DIG+0x4b>                  
   4fe76:	49c0           	extbl %d0                                   
   4fe78:	4480           	negl %d0                                    
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
   4fe7a:	41ea 0054      	lea %a2@(84),%a0                            
   4fe7e:	2f00           	movel %d0,%sp@-                             
   4fe80:	2548 0050      	movel %a0,%a2@(80)                          
  the_chain->permanent_null = NULL;                                   
  the_chain->last           = _Chain_Head(the_chain);                 
   4fe84:	41ea 0050      	lea %a2@(80),%a0                            
   4fe88:	2548 0058      	movel %a0,%a2@(88)                          
   4fe8c:	2f0a           	movel %a2,%sp@-                             
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
  the_chain->permanent_null = NULL;                                   
   4fe8e:	42aa 0054      	clrl %a2@(84)                               
   4fe92:	4eb9 0005 2014 	jsr 52014 <_Thread_queue_Initialize>        
       THREAD_QUEUE_DISCIPLINE_PRIORITY : THREAD_QUEUE_DISCIPLINE_FIFO,
    STATES_WAITING_FOR_MESSAGE,                                       
    CORE_MESSAGE_QUEUE_STATUS_TIMEOUT                                 
  );                                                                  
                                                                      
  return true;                                                        
   4fe98:	4fef 0020      	lea %sp@(32),%sp                            
}                                                                     
   4fe9c:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
    allocated_message_size + sizeof( CORE_message_queue_Buffer_control )
  );                                                                  
                                                                      
  _Chain_Initialize_empty( &the_message_queue->Pending_messages );    
                                                                      
  _Thread_queue_Initialize(                                           
   4fea2:	7001           	moveq #1,%d0                                
    STATES_WAITING_FOR_MESSAGE,                                       
    CORE_MESSAGE_QUEUE_STATUS_TIMEOUT                                 
  );                                                                  
                                                                      
  return true;                                                        
}                                                                     
   4fea4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004fea8 <_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 );                                              
   4fea8:	203c 0000 0700 	movel #1792,%d0                             
  void                            *buffer,                            
  size_t                          *size_p,                            
  bool                             wait,                              
  Watchdog_Interval                timeout                            
)                                                                     
{                                                                     
   4feae:	4e56 ffe8      	linkw %fp,#-24                              
  ISR_Level                          level;                           
  CORE_message_queue_Buffer_control *the_message;                     
  Thread_Control                    *executing;                       
                                                                      
  executing = _Thread_Executing;                                      
   4feb2:	2279 0006 97c6 	moveal 697c6 <_Thread_Executing>,%a1        
  void                            *buffer,                            
  size_t                          *size_p,                            
  bool                             wait,                              
  Watchdog_Interval                timeout                            
)                                                                     
{                                                                     
   4feb8:	48d7 1c1c      	moveml %d2-%d4/%a2-%a4,%sp@                 
   4febc:	282e 000c      	movel %fp@(12),%d4                          
   4fec0:	286e 001c      	moveal %fp@(28),%a4                         
   4fec4:	246e 0008      	moveal %fp@(8),%a2                          
  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; 
   4fec8:	42a9 0034      	clrl %a1@(52)                               
  void                            *buffer,                            
  size_t                          *size_p,                            
  bool                             wait,                              
  Watchdog_Interval                timeout                            
)                                                                     
{                                                                     
   4fecc:	262e 0010      	movel %fp@(16),%d3                          
   4fed0:	206e 0014      	moveal %fp@(20),%a0                         
   4fed4:	242e 0018      	movel %fp@(24),%d2                          
  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 );                                              
   4fed8:	40c1           	movew %sr,%d1                               
   4feda:	8081           	orl %d1,%d0                                 
   4fedc:	46c0           	movew %d0,%sr                               
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Tail(                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
   return (Chain_Node *) &the_chain->permanent_null;                  
   4fede:	200a           	movel %a2,%d0                               
   4fee0:	0680 0000 0054 	addil #84,%d0                               
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  return (the_chain->first == _Chain_Tail(the_chain));                
   4fee6:	266a 0050      	moveal %a2@(80),%a3                         
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Tail(                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
   return (Chain_Node *) &the_chain->permanent_null;                  
   4feea:	b08b           	cmpl %a3,%d0                                
   4feec:	6700 0088      	beqw 4ff76 <_CORE_message_queue_Seize+0xce> 
{                                                                     
  Chain_Node  *return_node;                                           
  Chain_Node  *new_first;                                             
                                                                      
  return_node         = the_chain->first;                             
  new_first           = return_node->next;                            
   4fef0:	2253           	moveal %a3@,%a1                             
  the_message = _CORE_message_queue_Get_pending_message( the_message_queue );
  if ( the_message != NULL ) {                                        
    the_message_queue->number_of_pending_messages -= 1;               
   4fef2:	53aa 0048      	subql #1,%a2@(72)                           
  the_chain->first    = new_first;                                    
  new_first->previous = _Chain_Head(the_chain);                       
   4fef6:	49ea 0050      	lea %a2@(80),%a4                            
  Chain_Node  *return_node;                                           
  Chain_Node  *new_first;                                             
                                                                      
  return_node         = the_chain->first;                             
  new_first           = return_node->next;                            
  the_chain->first    = new_first;                                    
   4fefa:	2549 0050      	movel %a1,%a2@(80)                          
  new_first->previous = _Chain_Head(the_chain);                       
   4fefe:	234c 0004      	movel %a4,%a1@(4)                           
    _ISR_Enable( level );                                             
   4ff02:	46c1           	movew %d1,%sr                               
                                                                      
    *size_p = the_message->Contents.size;                             
    _Thread_Executing->Wait.count =                                   
   4ff04:	2279 0006 97c6 	moveal 697c6 <_Thread_Executing>,%a1        
      _CORE_message_queue_Get_message_priority( the_message );        
    _CORE_message_queue_Copy_buffer(                                  
      the_message->Contents.buffer,                                   
   4ff0a:	240b           	movel %a3,%d2                               
   4ff0c:	0682 0000 0010 	addil #16,%d2                               
  const void *source,                                                 
  void       *destination,                                            
  size_t      size                                                    
)                                                                     
{                                                                     
  memcpy(destination, source, size);                                  
   4ff12:	49f9 0005 8948 	lea 58948 <memcpy>,%a4                      
  the_message = _CORE_message_queue_Get_pending_message( the_message_queue );
  if ( the_message != NULL ) {                                        
    the_message_queue->number_of_pending_messages -= 1;               
    _ISR_Enable( level );                                             
                                                                      
    *size_p = the_message->Contents.size;                             
   4ff18:	20ab 000c      	movel %a3@(12),%a0@                         
    _Thread_Executing->Wait.count =                                   
   4ff1c:	236b 0008 0024 	movel %a3@(8),%a1@(36)                      
   4ff22:	2f10           	movel %a0@,%sp@-                            
   4ff24:	2f02           	movel %d2,%sp@-                             
   4ff26:	2f03           	movel %d3,%sp@-                             
   4ff28:	4e94           	jsr %a4@                                    
       *  is not, then we can go ahead and free the buffer.           
       *                                                              
       *  NOTE: If we note that the queue was not full before this receive,
       *  then we can avoid this dequeue.                             
       */                                                             
      the_thread = _Thread_queue_Dequeue( &the_message_queue->Wait_queue );
   4ff2a:	2f0a           	movel %a2,%sp@-                             
   4ff2c:	4eb9 0005 1c38 	jsr 51c38 <_Thread_queue_Dequeue>           
      if ( !the_thread ) {                                            
   4ff32:	4fef 0010      	lea %sp@(16),%sp                            
       *  is not, then we can go ahead and free the buffer.           
       *                                                              
       *  NOTE: If we note that the queue was not full before this receive,
       *  then we can avoid this dequeue.                             
       */                                                             
      the_thread = _Thread_queue_Dequeue( &the_message_queue->Wait_queue );
   4ff36:	2040           	moveal %d0,%a0                              
      if ( !the_thread ) {                                            
   4ff38:	4a80           	tstl %d0                                    
   4ff3a:	6700 0088      	beqw 4ffc4 <_CORE_message_queue_Seize+0x11c>
       */                                                             
      _CORE_message_queue_Set_message_priority(                       
        the_message,                                                  
        the_thread->Wait.count                                        
      );                                                              
      the_message->Contents.size = (size_t) the_thread->Wait.option;  
   4ff3e:	2028 0030      	movel %a0@(48),%d0                          
  CORE_message_queue_Buffer_control *the_message,                     
  int                                priority                         
)                                                                     
{                                                                     
  #if defined(RTEMS_SCORE_COREMSG_ENABLE_MESSAGE_PRIORITY)            
    the_message->priority = priority;                                 
   4ff42:	2768 0024 0008 	movel %a0@(36),%a3@(8)                      
   4ff48:	2740 000c      	movel %d0,%a3@(12)                          
  const void *source,                                                 
  void       *destination,                                            
  size_t      size                                                    
)                                                                     
{                                                                     
  memcpy(destination, source, size);                                  
   4ff4c:	2f00           	movel %d0,%sp@-                             
   4ff4e:	2f28 002c      	movel %a0@(44),%sp@-                        
   4ff52:	2f02           	movel %d2,%sp@-                             
   4ff54:	4e94           	jsr %a4@                                    
        the_thread->Wait.return_argument_second.immutable_object,     
        the_message->Contents.buffer,                                 
        the_message->Contents.size                                    
      );                                                              
                                                                      
      _CORE_message_queue_Insert_message(                             
   4ff56:	2d6b 0008 0010 	movel %a3@(8),%fp@(16)                      
   4ff5c:	4fef 000c      	lea %sp@(12),%sp                            
   4ff60:	2d4b 000c      	movel %a3,%fp@(12)                          
   4ff64:	2d4a 0008      	movel %a2,%fp@(8)                           
  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 );   
}                                                                     
   4ff68:	4cee 1c1c ffe8 	moveml %fp@(-24),%d2-%d4/%a2-%a4            
   4ff6e:	4e5e           	unlk %fp                                    
        the_thread->Wait.return_argument_second.immutable_object,     
        the_message->Contents.buffer,                                 
        the_message->Contents.size                                    
      );                                                              
                                                                      
      _CORE_message_queue_Insert_message(                             
   4ff70:	4ef9 0005 522c 	jmp 5522c <_CORE_message_queue_Insert_message>
      return;                                                         
    }                                                                 
    #endif                                                            
  }                                                                   
                                                                      
  if ( !wait ) {                                                      
   4ff76:	4a02           	tstb %d2                                    
   4ff78:	6612           	bnes 4ff8c <_CORE_message_queue_Seize+0xe4> 
    _ISR_Enable( level );                                             
   4ff7a:	46c1           	movew %d1,%sr                               
    executing->Wait.return_code = CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_NOWAIT;
   4ff7c:	7004           	moveq #4,%d0                                
  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 );   
}                                                                     
   4ff7e:	4cee 1c1c ffe8 	moveml %fp@(-24),%d2-%d4/%a2-%a4            
    #endif                                                            
  }                                                                   
                                                                      
  if ( !wait ) {                                                      
    _ISR_Enable( level );                                             
    executing->Wait.return_code = CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_NOWAIT;
   4ff84:	2340 0034      	movel %d0,%a1@(52)                          
  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 );   
}                                                                     
   4ff88:	4e5e           	unlk %fp                                    
   4ff8a:	4e75           	rts                                         
                                                                      
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;
   4ff8c:	7001           	moveq #1,%d0                                
   4ff8e:	2540 0030      	movel %d0,%a2@(48)                          
                                                                      
  _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;     
  executing->Wait.return_argument = size_p;                           
   4ff92:	2348 0028      	movel %a0,%a1@(40)                          
  }                                                                   
                                                                      
  _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;     
   4ff96:	2343 002c      	movel %d3,%a1@(44)                          
    return;                                                           
  }                                                                   
                                                                      
  _Thread_queue_Enter_critical_section( &the_message_queue->Wait_queue );
  executing->Wait.queue = &the_message_queue->Wait_queue;             
  executing->Wait.id = id;                                            
   4ff9a:	2344 0020      	movel %d4,%a1@(32)                          
    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;             
   4ff9e:	234a 0044      	movel %a2,%a1@(68)                          
  executing->Wait.id = id;                                            
  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 );                                               
   4ffa2:	46c1           	movew %d1,%sr                               
                                                                      
  _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout );   
   4ffa4:	2d4c 000c      	movel %a4,%fp@(12)                          
   4ffa8:	49f9 0005 20f8 	lea 520f8 <_Thread_queue_Timeout>,%a4       
   4ffae:	2d4a 0008      	movel %a2,%fp@(8)                           
   4ffb2:	2d4c 0010      	movel %a4,%fp@(16)                          
}                                                                     
   4ffb6:	4cee 1c1c ffe8 	moveml %fp@(-24),%d2-%d4/%a2-%a4            
   4ffbc:	4e5e           	unlk %fp                                    
  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 );   
   4ffbe:	4ef9 0005 1d98 	jmp 51d98 <_Thread_queue_Enqueue_with_handler>
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 );
   4ffc4:	45ea 0068      	lea %a2@(104),%a2                           
   4ffc8:	2d4b 000c      	movel %a3,%fp@(12)                          
   4ffcc:	2d4a 0008      	movel %a2,%fp@(8)                           
}                                                                     
   4ffd0:	4cee 1c1c ffe8 	moveml %fp@(-24),%d2-%d4/%a2-%a4            
   4ffd6:	4e5e           	unlk %fp                                    
   4ffd8:	4ef9 0004 fd18 	jmp 4fd18 <_Chain_Append>                   
	...                                                                  
                                                                      
0004ffe0 <_CORE_message_queue_Submit>:                                
  #endif                                                              
  CORE_message_queue_Submit_types            submit_type,             
  bool                                       wait,                    
  Watchdog_Interval                          timeout                  
)                                                                     
{                                                                     
   4ffe0:	4e56 ffec      	linkw %fp,#-20                              
   4ffe4:	48d7 0c1c      	moveml %d2-%d4/%a2-%a3,%sp@                 
   4ffe8:	246e 0008      	moveal %fp@(8),%a2                          
   4ffec:	242e 0010      	movel %fp@(16),%d2                          
   4fff0:	282e 001c      	movel %fp@(28),%d4                          
   4fff4:	162e 0023      	moveb %fp@(35),%d3                          
  CORE_message_queue_Buffer_control   *the_message;                   
  Thread_Control                      *the_thread;                    
                                                                      
  if ( size > the_message_queue->maximum_message_size ) {             
   4fff8:	b4aa 004c      	cmpl %a2@(76),%d2                           
   4fffc:	6228           	bhis 50026 <_CORE_message_queue_Submit+0x46>
  }                                                                   
                                                                      
  /*                                                                  
   *  Is there a thread currently waiting on this message queue?      
   */                                                                 
  if ( the_message_queue->number_of_pending_messages == 0 ) {         
   4fffe:	202a 0048      	movel %a2@(72),%d0                          
   50002:	672e           	beqs 50032 <_CORE_message_queue_Submit+0x52>
  /*                                                                  
   *  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 <                
       the_message_queue->maximum_pending_messages ) {                
   50004:	b0aa 0044      	cmpl %a2@(68),%d0                           
   50008:	6500 00ba      	bcsw 500c4 <_CORE_message_queue_Submit+0xe4>
    /*                                                                
     *  No message buffers were available so we may need to return an 
     *  overflow error or block the sender until the message is placed
     *  on the queue.                                                 
     */                                                               
    if ( !wait ) {                                                    
   5000c:	4a03           	tstb %d3                                    
   5000e:	6700 00f4      	beqw 50104 <_CORE_message_queue_Submit+0x124>
                                                                      
    /*                                                                
     *  Do NOT block on a send if the caller is in an ISR.  It is     
     *  deadly to block in an ISR.                                    
     */                                                               
    if ( _ISR_Is_in_progress() ) {                                    
   50012:	2039 0006 97a6 	movel 697a6 <_ISR_Nest_level>,%d0           
   50018:	6754           	beqs 5006e <_CORE_message_queue_Submit+0x8e>
   5001a:	7003           	moveq #3,%d0                                
      _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout );
    }                                                                 
                                                                      
    return CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_WAIT;                
  #endif                                                              
}                                                                     
   5001c:	4cee 0c1c ffec 	moveml %fp@(-20),%d2-%d4/%a2-%a3            
   50022:	4e5e           	unlk %fp                                    
   50024:	4e75           	rts                                         
)                                                                     
{                                                                     
  CORE_message_queue_Buffer_control   *the_message;                   
  Thread_Control                      *the_thread;                    
                                                                      
  if ( size > the_message_queue->maximum_message_size ) {             
   50026:	7001           	moveq #1,%d0                                
      _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout );
    }                                                                 
                                                                      
    return CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_WAIT;                
  #endif                                                              
}                                                                     
   50028:	4cee 0c1c ffec 	moveml %fp@(-20),%d2-%d4/%a2-%a3            
   5002e:	4e5e           	unlk %fp                                    
   50030:	4e75           	rts                                         
                                                                      
  /*                                                                  
   *  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 );
   50032:	2f0a           	movel %a2,%sp@-                             
   50034:	4eb9 0005 1c38 	jsr 51c38 <_Thread_queue_Dequeue>           
    if ( the_thread ) {                                               
   5003a:	588f           	addql #4,%sp                                
                                                                      
  /*                                                                  
   *  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 );
   5003c:	2640           	moveal %d0,%a3                              
    if ( the_thread ) {                                               
   5003e:	4a80           	tstl %d0                                    
   50040:	6700 00ce      	beqw 50110 <_CORE_message_queue_Submit+0x130>
  const void *source,                                                 
  void       *destination,                                            
  size_t      size                                                    
)                                                                     
{                                                                     
  memcpy(destination, source, size);                                  
   50044:	2f02           	movel %d2,%sp@-                             
   50046:	2f2e 000c      	movel %fp@(12),%sp@-                        
   5004a:	2f2b 002c      	movel %a3@(44),%sp@-                        
   5004e:	4eb9 0005 8948 	jsr 58948 <memcpy>                          
      _CORE_message_queue_Copy_buffer(                                
        buffer,                                                       
        the_thread->Wait.return_argument_second.mutable_object,       
        size                                                          
      );                                                              
      *(size_t *) the_thread->Wait.return_argument = size;            
   50054:	206b 0028      	moveal %a3@(40),%a0                         
                                                                      
      #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;                    
   50058:	4fef 000c      	lea %sp@(12),%sp                            
        buffer,                                                       
        the_thread->Wait.return_argument_second.mutable_object,       
        size                                                          
      );                                                              
      *(size_t *) the_thread->Wait.return_argument = size;            
      the_thread->Wait.count = (uint32_t) submit_type;                
   5005c:	4280           	clrl %d0                                    
      _CORE_message_queue_Copy_buffer(                                
        buffer,                                                       
        the_thread->Wait.return_argument_second.mutable_object,       
        size                                                          
      );                                                              
      *(size_t *) the_thread->Wait.return_argument = size;            
   5005e:	2082           	movel %d2,%a0@                              
      the_thread->Wait.count = (uint32_t) submit_type;                
   50060:	2744 0024      	movel %d4,%a3@(36)                          
      _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout );
    }                                                                 
                                                                      
    return CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_WAIT;                
  #endif                                                              
}                                                                     
   50064:	4cee 0c1c ffec 	moveml %fp@(-20),%d2-%d4/%a2-%a3            
   5006a:	4e5e           	unlk %fp                                    
   5006c:	4e75           	rts                                         
     *  Thus the unusual choice to open a new scope and declare       
     *  it as a variable.  Doing this emphasizes how dangerous it     
     *  would be to use this variable prior to here.                  
     */                                                               
    {                                                                 
      Thread_Control  *executing = _Thread_Executing;                 
   5006e:	2079 0006 97c6 	moveal 697c6 <_Thread_Executing>,%a0        
      ISR_Level        level;                                         
                                                                      
      _ISR_Disable( level );                                          
   50074:	203c 0000 0700 	movel #1792,%d0                             
   5007a:	40c1           	movew %sr,%d1                               
   5007c:	8081           	orl %d1,%d0                                 
   5007e:	46c0           	movew %d0,%sr                               
   50080:	7001           	moveq #1,%d0                                
      _Thread_queue_Enter_critical_section( &the_message_queue->Wait_queue );
      executing->Wait.queue = &the_message_queue->Wait_queue;         
      executing->Wait.id = id;                                        
   50082:	216e 0014 0020 	movel %fp@(20),%a0@(32)                     
   50088:	2540 0030      	movel %d0,%a2@(48)                          
      executing->Wait.return_argument_second.immutable_object = buffer;
   5008c:	202e 000c      	movel %fp@(12),%d0                          
      executing->Wait.option = (uint32_t) size;                       
      executing->Wait.count = submit_type;                            
   50090:	2144 0024      	movel %d4,%a0@(36)                          
                                                                      
      _ISR_Disable( level );                                          
      _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.immutable_object = buffer;
   50094:	2140 002c      	movel %d0,%a0@(44)                          
      executing->Wait.option = (uint32_t) size;                       
   50098:	2142 0030      	movel %d2,%a0@(48)                          
      Thread_Control  *executing = _Thread_Executing;                 
      ISR_Level        level;                                         
                                                                      
      _ISR_Disable( level );                                          
      _Thread_queue_Enter_critical_section( &the_message_queue->Wait_queue );
      executing->Wait.queue = &the_message_queue->Wait_queue;         
   5009c:	214a 0044      	movel %a2,%a0@(68)                          
      executing->Wait.id = id;                                        
      executing->Wait.return_argument_second.immutable_object = buffer;
      executing->Wait.option = (uint32_t) size;                       
      executing->Wait.count = submit_type;                            
      _ISR_Enable( level );                                           
   500a0:	46c1           	movew %d1,%sr                               
                                                                      
      _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout );
   500a2:	4879 0005 20f8 	pea 520f8 <_Thread_queue_Timeout>           
   500a8:	2f2e 0024      	movel %fp@(36),%sp@-                        
   500ac:	2f0a           	movel %a2,%sp@-                             
   500ae:	4eb9 0005 1d98 	jsr 51d98 <_Thread_queue_Enqueue_with_handler>
    }                                                                 
                                                                      
    return CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_WAIT;                
   500b4:	4fef 000c      	lea %sp@(12),%sp                            
      executing->Wait.return_argument_second.immutable_object = buffer;
      executing->Wait.option = (uint32_t) size;                       
      executing->Wait.count = submit_type;                            
      _ISR_Enable( level );                                           
                                                                      
      _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout );
   500b8:	7007           	moveq #7,%d0                                
    }                                                                 
                                                                      
    return CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_WAIT;                
  #endif                                                              
}                                                                     
   500ba:	4cee 0c1c ffec 	moveml %fp@(-20),%d2-%d4/%a2-%a3            
   500c0:	4e5e           	unlk %fp                                    
   500c2:	4e75           	rts                                         
RTEMS_INLINE_ROUTINE CORE_message_queue_Buffer_control *              
_CORE_message_queue_Allocate_message_buffer (                         
    CORE_message_queue_Control *the_message_queue                     
)                                                                     
{                                                                     
   return (CORE_message_queue_Buffer_control *)                       
   500c4:	486a 0068      	pea %a2@(104)                               
   500c8:	4eb9 0004 fd78 	jsr 4fd78 <_Chain_Get>                      
   500ce:	2640           	moveal %d0,%a3                              
  const void *source,                                                 
  void       *destination,                                            
  size_t      size                                                    
)                                                                     
{                                                                     
  memcpy(destination, source, size);                                  
   500d0:	2f02           	movel %d2,%sp@-                             
   500d2:	2f2e 000c      	movel %fp@(12),%sp@-                        
   500d6:	486b 0010      	pea %a3@(16)                                
   500da:	4eb9 0005 8948 	jsr 58948 <memcpy>                          
    _CORE_message_queue_Copy_buffer(                                  
      buffer,                                                         
      the_message->Contents.buffer,                                   
      size                                                            
    );                                                                
    the_message->Contents.size = size;                                
   500e0:	2742 000c      	movel %d2,%a3@(12)                          
  CORE_message_queue_Buffer_control *the_message,                     
  int                                priority                         
)                                                                     
{                                                                     
  #if defined(RTEMS_SCORE_COREMSG_ENABLE_MESSAGE_PRIORITY)            
    the_message->priority = priority;                                 
   500e4:	2744 0008      	movel %d4,%a3@(8)                           
    _CORE_message_queue_Set_message_priority( the_message, submit_type );
                                                                      
    _CORE_message_queue_Insert_message(                               
   500e8:	2f04           	movel %d4,%sp@-                             
   500ea:	2f0b           	movel %a3,%sp@-                             
   500ec:	2f0a           	movel %a2,%sp@-                             
   500ee:	4eb9 0005 522c 	jsr 5522c <_CORE_message_queue_Insert_message>
       the_message_queue,                                             
       the_message,                                                   
       submit_type                                                    
    );                                                                
    return CORE_MESSAGE_QUEUE_STATUS_SUCCESSFUL;                      
   500f4:	4fef 001c      	lea %sp@(28),%sp                            
      size                                                            
    );                                                                
    the_message->Contents.size = size;                                
    _CORE_message_queue_Set_message_priority( the_message, submit_type );
                                                                      
    _CORE_message_queue_Insert_message(                               
   500f8:	4280           	clrl %d0                                    
      _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout );
    }                                                                 
                                                                      
    return CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_WAIT;                
  #endif                                                              
}                                                                     
   500fa:	4cee 0c1c ffec 	moveml %fp@(-20),%d2-%d4/%a2-%a3            
   50100:	4e5e           	unlk %fp                                    
   50102:	4e75           	rts                                         
    /*                                                                
     *  No message buffers were available so we may need to return an 
     *  overflow error or block the sender until the message is placed
     *  on the queue.                                                 
     */                                                               
    if ( !wait ) {                                                    
   50104:	7002           	moveq #2,%d0                                
      _Thread_queue_Enqueue( &the_message_queue->Wait_queue, timeout );
    }                                                                 
                                                                      
    return CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_WAIT;                
  #endif                                                              
}                                                                     
   50106:	4cee 0c1c ffec 	moveml %fp@(-20),%d2-%d4/%a2-%a3            
   5010c:	4e5e           	unlk %fp                                    
   5010e:	4e75           	rts                                         
  /*                                                                  
   *  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 );
    if ( the_thread ) {                                               
   50110:	202a 0048      	movel %a2@(72),%d0                          
  /*                                                                  
   *  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 <                
       the_message_queue->maximum_pending_messages ) {                
   50114:	b0aa 0044      	cmpl %a2@(68),%d0                           
   50118:	6400 fef2      	bccw 5000c <_CORE_message_queue_Submit+0x2c>
   5011c:	60a6           	bras 500c4 <_CORE_message_queue_Submit+0xe4>
	...                                                                  
                                                                      
00046b6c <_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     
)                                                                     
{                                                                     
   46b6c:	4e56 0000      	linkw %fp,#0                                
   46b70:	2f0a           	movel %a2,%sp@-                             
   46b72:	246e 0008      	moveal %fp@(8),%a2                          
  ISR_Level       level;                                              
  CORE_semaphore_Status status;                                       
                                                                      
  status = CORE_SEMAPHORE_STATUS_SUCCESSFUL;                          
                                                                      
  if ( (the_thread = _Thread_queue_Dequeue(&the_semaphore->Wait_queue)) ) {
   46b76:	2f0a           	movel %a2,%sp@-                             
   46b78:	4eb9 0004 81b8 	jsr 481b8 <_Thread_queue_Dequeue>           
   46b7e:	588f           	addql #4,%sp                                
   46b80:	4a80           	tstl %d0                                    
   46b82:	670a           	beqs 46b8e <_CORE_semaphore_Surrender+0x22> 
        status = CORE_SEMAPHORE_MAXIMUM_COUNT_EXCEEDED;               
    _ISR_Enable( level );                                             
  }                                                                   
                                                                      
  return status;                                                      
}                                                                     
   46b84:	246e fffc      	moveal %fp@(-4),%a2                         
  ISR_Level       level;                                              
  CORE_semaphore_Status status;                                       
                                                                      
  status = CORE_SEMAPHORE_STATUS_SUCCESSFUL;                          
                                                                      
  if ( (the_thread = _Thread_queue_Dequeue(&the_semaphore->Wait_queue)) ) {
   46b88:	4280           	clrl %d0                                    
        status = CORE_SEMAPHORE_MAXIMUM_COUNT_EXCEEDED;               
    _ISR_Enable( level );                                             
  }                                                                   
                                                                      
  return status;                                                      
}                                                                     
   46b8a:	4e5e           	unlk %fp                                    
   46b8c:	4e75           	rts                                         
    if ( !_Objects_Is_local_id( the_thread->Object.id ) )             
      (*api_semaphore_mp_support) ( the_thread, id );                 
#endif                                                                
                                                                      
  } else {                                                            
    _ISR_Disable( level );                                            
   46b8e:	203c 0000 0700 	movel #1792,%d0                             
   46b94:	40c1           	movew %sr,%d1                               
   46b96:	8081           	orl %d1,%d0                                 
   46b98:	46c0           	movew %d0,%sr                               
      if ( the_semaphore->count < the_semaphore->Attributes.maximum_count )
   46b9a:	202a 0048      	movel %a2@(72),%d0                          
   46b9e:	b0aa 0040      	cmpl %a2@(64),%d0                           
   46ba2:	6412           	bccs 46bb6 <_CORE_semaphore_Surrender+0x4a> 
        the_semaphore->count += 1;                                    
   46ba4:	5280           	addql #1,%d0                                
   46ba6:	2540 0048      	movel %d0,%a2@(72)                          
   46baa:	4280           	clrl %d0                                    
      else                                                            
        status = CORE_SEMAPHORE_MAXIMUM_COUNT_EXCEEDED;               
    _ISR_Enable( level );                                             
   46bac:	46c1           	movew %d1,%sr                               
  }                                                                   
                                                                      
  return status;                                                      
}                                                                     
   46bae:	246e fffc      	moveal %fp@(-4),%a2                         
   46bb2:	4e5e           	unlk %fp                                    
   46bb4:	4e75           	rts                                         
      (*api_semaphore_mp_support) ( the_thread, id );                 
#endif                                                                
                                                                      
  } else {                                                            
    _ISR_Disable( level );                                            
      if ( the_semaphore->count < the_semaphore->Attributes.maximum_count )
   46bb6:	7004           	moveq #4,%d0                                <== NOT EXECUTED
        the_semaphore->count += 1;                                    
      else                                                            
        status = CORE_SEMAPHORE_MAXIMUM_COUNT_EXCEEDED;               
    _ISR_Enable( level );                                             
   46bb8:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
   46bba:	60f2           	bras 46bae <_CORE_semaphore_Surrender+0x42> <== NOT EXECUTED
                                                                      
0004599c <_Event_Timeout>:                                            
                                                                      
void _Event_Timeout(                                                  
  Objects_Id  id,                                                     
  void       *ignored                                                 
)                                                                     
{                                                                     
   4599c:	4e56 fffc      	linkw %fp,#-4                               
   459a0:	2f03           	movel %d3,%sp@-                             
   459a2:	2f02           	movel %d2,%sp@-                             
  Thread_Control    *the_thread;                                      
  Objects_Locations  location;                                        
  ISR_Level          level;                                           
                                                                      
  the_thread = _Thread_Get( id, &location );                          
   459a4:	486e fffc      	pea %fp@(-4)                                
   459a8:	2f2e 0008      	movel %fp@(8),%sp@-                         
   459ac:	4eb9 0004 7de4 	jsr 47de4 <_Thread_Get>                     
  switch ( location ) {                                               
   459b2:	508f           	addql #8,%sp                                
   459b4:	4aae fffc      	tstl %fp@(-4)                               
   459b8:	6642           	bnes 459fc <_Event_Timeout+0x60>            
       *                                                              
       *  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 );                                          
   459ba:	223c 0000 0700 	movel #1792,%d1                             
   459c0:	40c2           	movew %sr,%d2                               
   459c2:	8282           	orl %d2,%d1                                 
   459c4:	46c1           	movew %d1,%sr                               
            _ISR_Enable( level );                                     
            return;                                                   
          }                                                           
        #endif                                                        
                                                                      
        the_thread->Wait.count = 0;                                   
   459c6:	2040           	moveal %d0,%a0                              
   459c8:	42a8 0024      	clrl %a0@(36)                               
        if ( _Thread_Is_executing( the_thread ) ) {                   
   459cc:	b0b9 0005 f032 	cmpl 5f032 <_Thread_Executing>,%d0          
   459d2:	6734           	beqs 45a08 <_Event_Timeout+0x6c>            
          if ( _Event_Sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED )
            _Event_Sync_state = THREAD_BLOCKING_OPERATION_TIMEOUT;    
        }                                                             
                                                                      
        the_thread->Wait.return_code = RTEMS_TIMEOUT;                 
   459d4:	7606           	moveq #6,%d3                                
   459d6:	2040           	moveal %d0,%a0                              
   459d8:	2143 0034      	movel %d3,%a0@(52)                          
      _ISR_Enable( level );                                           
   459dc:	46c2           	movew %d2,%sr                               
   459de:	2f3c 1003 fff8 	movel #268697592,%sp@-                      
   459e4:	2f00           	movel %d0,%sp@-                             
   459e6:	4eb9 0004 79e8 	jsr 479e8 <_Thread_Clear_state>             
 */                                                                   
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unnest_dispatch( void )             
{                                                                     
  RTEMS_COMPILER_MEMORY_BARRIER();                                    
  _Thread_Dispatch_disable_level -= 1;                                
   459ec:	508f           	addql #8,%sp                                
   459ee:	2039 0005 ef78 	movel 5ef78 <_Thread_Dispatch_disable_level>,%d0
   459f4:	5380           	subql #1,%d0                                
   459f6:	23c0 0005 ef78 	movel %d0,5ef78 <_Thread_Dispatch_disable_level>
    case OBJECTS_REMOTE:  /* impossible */                            
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
}                                                                     
   459fc:	242e fff4      	movel %fp@(-12),%d2                         
   45a00:	262e fff8      	movel %fp@(-8),%d3                          
   45a04:	4e5e           	unlk %fp                                    
   45a06:	4e75           	rts                                         
          }                                                           
        #endif                                                        
                                                                      
        the_thread->Wait.count = 0;                                   
        if ( _Thread_Is_executing( the_thread ) ) {                   
          if ( _Event_Sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED )
   45a08:	2239 0005 f7c6 	movel 5f7c6 <_Event_Sync_state>,%d1         
   45a0e:	7601           	moveq #1,%d3                                
   45a10:	b681           	cmpl %d1,%d3                                
   45a12:	66c0           	bnes 459d4 <_Event_Timeout+0x38>            
            _Event_Sync_state = THREAD_BLOCKING_OPERATION_TIMEOUT;    
        }                                                             
                                                                      
        the_thread->Wait.return_code = RTEMS_TIMEOUT;                 
   45a14:	7606           	moveq #6,%d3                                
   45a16:	2040           	moveal %d0,%a0                              
        #endif                                                        
                                                                      
        the_thread->Wait.count = 0;                                   
        if ( _Thread_Is_executing( the_thread ) ) {                   
          if ( _Event_Sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED )
            _Event_Sync_state = THREAD_BLOCKING_OPERATION_TIMEOUT;    
   45a18:	7202           	moveq #2,%d1                                
        }                                                             
                                                                      
        the_thread->Wait.return_code = RTEMS_TIMEOUT;                 
   45a1a:	2143 0034      	movel %d3,%a0@(52)                          
        #endif                                                        
                                                                      
        the_thread->Wait.count = 0;                                   
        if ( _Thread_Is_executing( the_thread ) ) {                   
          if ( _Event_Sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED )
            _Event_Sync_state = THREAD_BLOCKING_OPERATION_TIMEOUT;    
   45a1e:	23c1 0005 f7c6 	movel %d1,5f7c6 <_Event_Sync_state>         
        }                                                             
                                                                      
        the_thread->Wait.return_code = RTEMS_TIMEOUT;                 
      _ISR_Enable( level );                                           
   45a24:	46c2           	movew %d2,%sr                               
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unblock (                           
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
  _Thread_Clear_state( the_thread, STATES_BLOCKED );                  
   45a26:	2f3c 1003 fff8 	movel #268697592,%sp@-                      
   45a2c:	2f00           	movel %d0,%sp@-                             
   45a2e:	4eb9 0004 79e8 	jsr 479e8 <_Thread_Clear_state>             
 */                                                                   
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unnest_dispatch( void )             
{                                                                     
  RTEMS_COMPILER_MEMORY_BARRIER();                                    
  _Thread_Dispatch_disable_level -= 1;                                
   45a34:	508f           	addql #8,%sp                                
   45a36:	2039 0005 ef78 	movel 5ef78 <_Thread_Dispatch_disable_level>,%d0
   45a3c:	5380           	subql #1,%d0                                
   45a3e:	23c0 0005 ef78 	movel %d0,5ef78 <_Thread_Dispatch_disable_level>
   45a44:	60b6           	bras 459fc <_Event_Timeout+0x60>            
	...                                                                  
                                                                      
0004bcc0 <_Heap_Allocate_aligned_with_boundary>:                      
  Heap_Control *heap,                                                 
  uintptr_t alloc_size,                                               
  uintptr_t alignment,                                                
  uintptr_t boundary                                                  
)                                                                     
{                                                                     
   4bcc0:	4e56 ffcc      	linkw %fp,#-52                              
   4bcc4:	226e 000c      	moveal %fp@(12),%a1                         
   4bcc8:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 
   4bccc:	246e 0008      	moveal %fp@(8),%a2                          
  Heap_Statistics *const stats = &heap->stats;                        
  Heap_Block *const free_list_tail = _Heap_Free_list_tail( heap );    
  Heap_Block *block = _Heap_Free_list_first( heap );                  
  uintptr_t const block_size_floor = alloc_size + HEAP_BLOCK_HEADER_SIZE
    - HEAP_BLOCK_SIZE_OFFSET;                                         
   4bcd0:	2c09           	movel %a1,%d6                               
   4bcd2:	5886           	addql #4,%d6                                
  uintptr_t const page_size = heap->page_size;                        
   4bcd4:	202a 0010      	movel %a2@(16),%d0                          
  Heap_Control *heap,                                                 
  uintptr_t alloc_size,                                               
  uintptr_t alignment,                                                
  uintptr_t boundary                                                  
)                                                                     
{                                                                     
   4bcd8:	222e 0010      	movel %fp@(16),%d1                          
   4bcdc:	282e 0014      	movel %fp@(20),%d4                          
  return &heap->free_list;                                            
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Free_list_first( Heap_Control *heap )
{                                                                     
  return _Heap_Free_list_head(heap)->next;                            
   4bce0:	206a 0008      	moveal %a2@(8),%a0                          
  Heap_Statistics *const stats = &heap->stats;                        
  Heap_Block *const free_list_tail = _Heap_Free_list_tail( heap );    
  Heap_Block *block = _Heap_Free_list_first( heap );                  
  uintptr_t const block_size_floor = alloc_size + HEAP_BLOCK_HEADER_SIZE
    - HEAP_BLOCK_SIZE_OFFSET;                                         
  uintptr_t const page_size = heap->page_size;                        
   4bce4:	2d40 fffc      	movel %d0,%fp@(-4)                          
  uintptr_t alloc_begin = 0;                                          
  uint32_t search_count = 0;                                          
                                                                      
  if ( block_size_floor < alloc_size ) {                              
   4bce8:	bc89           	cmpl %a1,%d6                                
   4bcea:	6500 0146      	bcsw 4be32 <_Heap_Allocate_aligned_with_boundary+0x172>
    /* Integer overflow occured */                                    
    return NULL;                                                      
  }                                                                   
                                                                      
  if ( boundary != 0 ) {                                              
   4bcee:	4a84           	tstl %d4                                    
   4bcf0:	6600 013c      	bnew 4be2e <_Heap_Allocate_aligned_with_boundary+0x16e>
    if ( alignment == 0 ) {                                           
      alignment = page_size;                                          
    }                                                                 
  }                                                                   
                                                                      
  while ( block != free_list_tail ) {                                 
   4bcf4:	b1ca           	cmpal %a2,%a0                               
   4bcf6:	6700 0152      	beqw 4be4a <_Heap_Allocate_aligned_with_boundary+0x18a>
  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;                         
   4bcfa:	242e fffc      	movel %fp@(-4),%d2                          
                                                                      
  uintptr_t alloc_end = block_end + HEAP_BLOCK_SIZE_OFFSET;           
  uintptr_t alloc_begin = alloc_end - alloc_size;                     
   4bcfe:	7a04           	moveq #4,%d5                                
  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;                         
   4bd00:	5e82           	addql #7,%d2                                
                                                                      
  uintptr_t alloc_end = block_end + HEAP_BLOCK_SIZE_OFFSET;           
  uintptr_t alloc_begin = alloc_end - alloc_size;                     
   4bd02:	9a89           	subl %a1,%d5                                
    if ( alignment == 0 ) {                                           
      alignment = page_size;                                          
    }                                                                 
  }                                                                   
                                                                      
  while ( block != free_list_tail ) {                                 
   4bd04:	4283           	clrl %d3                                    
  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;                         
   4bd06:	2d42 fff8      	movel %d2,%fp@(-8)                          
                                                                      
  uintptr_t alloc_end = block_end + HEAP_BLOCK_SIZE_OFFSET;           
  uintptr_t alloc_begin = alloc_end - alloc_size;                     
   4bd0a:	2d45 fff4      	movel %d5,%fp@(-12)                         
    /*                                                                
     * 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 ) {                  
   4bd0e:	2028 0004      	movel %a0@(4),%d0                           
                                                                      
  while ( block != free_list_tail ) {                                 
    _HAssert( _Heap_Is_prev_used( block ) );                          
                                                                      
    /* Statistics */                                                  
    ++search_count;                                                   
   4bd12:	5283           	addql #1,%d3                                
    /*                                                                
     * 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 ) {                  
   4bd14:	b086           	cmpl %d6,%d0                                
   4bd16:	630e           	blss 4bd26 <_Heap_Allocate_aligned_with_boundary+0x66>
      if ( alignment == 0 ) {                                         
   4bd18:	4a81           	tstl %d1                                    
   4bd1a:	6628           	bnes 4bd44 <_Heap_Allocate_aligned_with_boundary+0x84>
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Alloc_area_of_block(             
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block + HEAP_BLOCK_HEADER_SIZE;                  
   4bd1c:	2408           	movel %a0,%d2                               
   4bd1e:	5082           	addql #8,%d2                                
          boundary                                                    
        );                                                            
      }                                                               
    }                                                                 
                                                                      
    if ( alloc_begin != 0 ) {                                         
   4bd20:	4a82           	tstl %d2                                    
   4bd22:	6600 00ee      	bnew 4be12 <_Heap_Allocate_aligned_with_boundary+0x152>
      break;                                                          
    }                                                                 
                                                                      
    block = block->next;                                              
   4bd26:	2068 0008      	moveal %a0@(8),%a0                          
    if ( alignment == 0 ) {                                           
      alignment = page_size;                                          
    }                                                                 
  }                                                                   
                                                                      
  while ( block != free_list_tail ) {                                 
   4bd2a:	b1ca           	cmpal %a2,%a0                               
   4bd2c:	66e0           	bnes 4bd0e <_Heap_Allocate_aligned_with_boundary+0x4e>
   4bd2e:	4280           	clrl %d0                                    
  uintptr_t alloc_size,                                               
  uintptr_t alignment,                                                
  uintptr_t boundary                                                  
)                                                                     
{                                                                     
  Heap_Statistics *const stats = &heap->stats;                        
   4bd30:	b6aa 0044      	cmpl %a2@(68),%d3                           
   4bd34:	6304           	blss 4bd3a <_Heap_Allocate_aligned_with_boundary+0x7a>
    );                                                                
  }                                                                   
                                                                      
  /* Statistics */                                                    
  if ( stats->max_search < search_count ) {                           
    stats->max_search = search_count;                                 
   4bd36:	2543 0044      	movel %d3,%a2@(68)                          
  }                                                                   
                                                                      
  return (void *) alloc_begin;                                        
}                                                                     
   4bd3a:	4cee 3cfc ffcc 	moveml %fp@(-52),%d2-%d7/%a2-%a5            
   4bd40:	4e5e           	unlk %fp                                    
   4bd42:	4e75           	rts                                         
  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;               
   4bd44:	7efe           	moveq #-2,%d7                               
   4bd46:	4be8 0008      	lea %a0@(8),%a5                             
   4bd4a:	c087           	andl %d7,%d0                                
  uintptr_t alignment,                                                
  uintptr_t boundary                                                  
)                                                                     
{                                                                     
  uintptr_t const page_size = heap->page_size;                        
  uintptr_t const min_block_size = heap->min_block_size;              
   4bd4c:	286a 0014      	moveal %a2@(20),%a4                         
                                                                      
  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;               
   4bd50:	d088           	addl %a0,%d0                                
                                                                      
  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;                         
   4bd52:	2a2e fff8      	movel %fp@(-8),%d5                          
   4bd56:	9a8c           	subl %a4,%d5                                
                                                                      
  uintptr_t alloc_end = block_end + HEAP_BLOCK_SIZE_OFFSET;           
  uintptr_t alloc_begin = alloc_end - alloc_size;                     
   4bd58:	242e fff4      	movel %fp@(-12),%d2                         
   4bd5c:	d480           	addl %d0,%d2                                
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Align_down(                      
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  return value - (value % alignment);                                 
   4bd5e:	2e02           	movel %d2,%d7                               
  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;                         
   4bd60:	d085           	addl %d5,%d0                                
   4bd62:	4c41 7005      	remul %d1,%d5,%d7                           
   4bd66:	9485           	subl %d5,%d2                                
  uintptr_t alloc_begin = alloc_end - alloc_size;                     
                                                                      
  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 ) {                          
   4bd68:	b480           	cmpl %d0,%d2                                
   4bd6a:	630a           	blss 4bd76 <_Heap_Allocate_aligned_with_boundary+0xb6>
   4bd6c:	2a00           	movel %d0,%d5                               
   4bd6e:	4c41 5002      	remul %d1,%d2,%d5                           
   4bd72:	9082           	subl %d2,%d0                                
   4bd74:	2400           	movel %d0,%d2                               
  }                                                                   
                                                                      
  alloc_end = alloc_begin + alloc_size;                               
                                                                      
  /* Ensure boundary constaint */                                     
  if ( boundary != 0 ) {                                              
   4bd76:	4a84           	tstl %d4                                    
   4bd78:	676c           	beqs 4bde6 <_Heap_Allocate_aligned_with_boundary+0x126>
  /* 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;                               
   4bd7a:	2002           	movel %d2,%d0                               
   4bd7c:	d089           	addl %a1,%d0                                
   4bd7e:	2e00           	movel %d0,%d7                               
   4bd80:	4c44 7005      	remul %d4,%d5,%d7                           
   4bd84:	2e00           	movel %d0,%d7                               
   4bd86:	9e85           	subl %d5,%d7                                
   4bd88:	2a07           	movel %d7,%d5                               
  /* 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 ) {
   4bd8a:	be82           	cmpl %d2,%d7                                
   4bd8c:	6358           	blss 4bde6 <_Heap_Allocate_aligned_with_boundary+0x126>
   4bd8e:	be80           	cmpl %d0,%d7                                
   4bd90:	6454           	bccs 4bde6 <_Heap_Allocate_aligned_with_boundary+0x126>
                                                                      
  alloc_end = alloc_begin + alloc_size;                               
                                                                      
  /* Ensure boundary constaint */                                     
  if ( boundary != 0 ) {                                              
    uintptr_t const boundary_floor = alloc_begin_floor + alloc_size;  
   4bd92:	2e0d           	movel %a5,%d7                               
   4bd94:	de89           	addl %a1,%d7                                
    uintptr_t boundary_line = _Heap_Align_down( alloc_end, boundary );
                                                                      
    while ( alloc_begin < boundary_line && boundary_line < alloc_end ) {
      if ( boundary_line < boundary_floor ) {                         
   4bd96:	ba87           	cmpl %d7,%d5                                
   4bd98:	658c           	bcss 4bd26 <_Heap_Allocate_aligned_with_boundary+0x66>
        return 0;                                                     
      }                                                               
      alloc_begin = boundary_line - alloc_size;                       
   4bd9a:	9a89           	subl %a1,%d5                                
   4bd9c:	2005           	movel %d5,%d0                               
   4bd9e:	2647           	moveal %d7,%a3                              
   4bda0:	4c41 0002      	remul %d1,%d2,%d0                           
   4bda4:	9a82           	subl %d2,%d5                                
      alloc_begin = _Heap_Align_down( alloc_begin, alignment );       
      alloc_end = alloc_begin + alloc_size;                           
   4bda6:	2005           	movel %d5,%d0                               
   4bda8:	d089           	addl %a1,%d0                                
   4bdaa:	2405           	movel %d5,%d2                               
   4bdac:	2e00           	movel %d0,%d7                               
   4bdae:	4c44 7005      	remul %d4,%d5,%d7                           
   4bdb2:	2e00           	movel %d0,%d7                               
   4bdb4:	9e85           	subl %d5,%d7                                
   4bdb6:	2a07           	movel %d7,%d5                               
  /* 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 ) {
   4bdb8:	be82           	cmpl %d2,%d7                                
   4bdba:	632a           	blss 4bde6 <_Heap_Allocate_aligned_with_boundary+0x126>
   4bdbc:	be80           	cmpl %d0,%d7                                
   4bdbe:	6426           	bccs 4bde6 <_Heap_Allocate_aligned_with_boundary+0x126>
      if ( boundary_line < boundary_floor ) {                         
   4bdc0:	ba8b           	cmpl %a3,%d5                                
   4bdc2:	6500 ff62      	bcsw 4bd26 <_Heap_Allocate_aligned_with_boundary+0x66>
        return 0;                                                     
      }                                                               
      alloc_begin = boundary_line - alloc_size;                       
   4bdc6:	9a89           	subl %a1,%d5                                
   4bdc8:	2005           	movel %d5,%d0                               
   4bdca:	4c41 0002      	remul %d1,%d2,%d0                           
   4bdce:	9a82           	subl %d2,%d5                                
      alloc_begin = _Heap_Align_down( alloc_begin, alignment );       
      alloc_end = alloc_begin + alloc_size;                           
   4bdd0:	2005           	movel %d5,%d0                               
   4bdd2:	d089           	addl %a1,%d0                                
   4bdd4:	2405           	movel %d5,%d2                               
   4bdd6:	2e00           	movel %d0,%d7                               
   4bdd8:	4c44 7005      	remul %d4,%d5,%d7                           
   4bddc:	2e00           	movel %d0,%d7                               
   4bdde:	9e85           	subl %d5,%d7                                
   4bde0:	2a07           	movel %d7,%d5                               
  /* 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 ) {
   4bde2:	be82           	cmpl %d2,%d7                                
   4bde4:	62d6           	bhis 4bdbc <_Heap_Allocate_aligned_with_boundary+0xfc>
      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 ) {                           
   4bde6:	b48d           	cmpl %a5,%d2                                
   4bde8:	6500 ff3c      	bcsw 4bd26 <_Heap_Allocate_aligned_with_boundary+0x66>
    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;      
   4bdec:	70f8           	moveq #-8,%d0                               
   4bdee:	9088           	subl %a0,%d0                                
   4bdf0:	2a40           	moveal %d0,%a5                              
   4bdf2:	2e02           	movel %d2,%d7                               
   4bdf4:	dbc2           	addal %d2,%a5                               
   4bdf6:	202e fffc      	movel %fp@(-4),%d0                          
   4bdfa:	4c40 7005      	remul %d0,%d5,%d7                           
   4bdfe:	9bc5           	subal %d5,%a5                               
                                                                      
    if ( free_size >= min_block_size || free_size == 0 ) {            
   4be00:	bbcc           	cmpal %a4,%a5                               
   4be02:	6400 ff1c      	bccw 4bd20 <_Heap_Allocate_aligned_with_boundary+0x60>
   4be06:	4a8d           	tstl %a5                                    
   4be08:	6600 ff1c      	bnew 4bd26 <_Heap_Allocate_aligned_with_boundary+0x66>
          boundary                                                    
        );                                                            
      }                                                               
    }                                                                 
                                                                      
    if ( alloc_begin != 0 ) {                                         
   4be0c:	4a82           	tstl %d2                                    
   4be0e:	6700 ff16      	beqw 4bd26 <_Heap_Allocate_aligned_with_boundary+0x66>
                                                                      
  if ( alloc_begin != 0 ) {                                           
    /* Statistics */                                                  
    stats->searches += search_count;                                  
                                                                      
    block = _Heap_Block_allocate( heap, block, alloc_begin, alloc_size );
   4be12:	2f09           	movel %a1,%sp@-                             
    block = block->next;                                              
  }                                                                   
                                                                      
  if ( alloc_begin != 0 ) {                                           
    /* Statistics */                                                  
    stats->searches += search_count;                                  
   4be14:	d7aa 004c      	addl %d3,%a2@(76)                           
                                                                      
    block = _Heap_Block_allocate( heap, block, alloc_begin, alloc_size );
   4be18:	2f02           	movel %d2,%sp@-                             
   4be1a:	2f08           	movel %a0,%sp@-                             
   4be1c:	2f0a           	movel %a2,%sp@-                             
   4be1e:	4eb9 0004 6e94 	jsr 46e94 <_Heap_Block_allocate>            
   4be24:	4fef 0010      	lea %sp@(16),%sp                            
   4be28:	2002           	movel %d2,%d0                               
   4be2a:	6000 ff04      	braw 4bd30 <_Heap_Allocate_aligned_with_boundary+0x70>
    /* Integer overflow occured */                                    
    return NULL;                                                      
  }                                                                   
                                                                      
  if ( boundary != 0 ) {                                              
    if ( boundary < alloc_size ) {                                    
   4be2e:	b889           	cmpl %a1,%d4                                
   4be30:	640c           	bccs 4be3e <_Heap_Allocate_aligned_with_boundary+0x17e>
    );                                                                
  }                                                                   
                                                                      
  /* Statistics */                                                    
  if ( stats->max_search < search_count ) {                           
    stats->max_search = search_count;                                 
   4be32:	4280           	clrl %d0                                    
  }                                                                   
                                                                      
  return (void *) alloc_begin;                                        
}                                                                     
   4be34:	4cee 3cfc ffcc 	moveml %fp@(-52),%d2-%d7/%a2-%a5            
   4be3a:	4e5e           	unlk %fp                                    
   4be3c:	4e75           	rts                                         
  if ( boundary != 0 ) {                                              
    if ( boundary < alloc_size ) {                                    
      return NULL;                                                    
    }                                                                 
                                                                      
    if ( alignment == 0 ) {                                           
   4be3e:	4a81           	tstl %d1                                    
   4be40:	6600 feb2      	bnew 4bcf4 <_Heap_Allocate_aligned_with_boundary+0x34>
   4be44:	2200           	movel %d0,%d1                               
   4be46:	6000 feac      	braw 4bcf4 <_Heap_Allocate_aligned_with_boundary+0x34>
      alignment = page_size;                                          
    }                                                                 
  }                                                                   
                                                                      
  while ( block != free_list_tail ) {                                 
   4be4a:	4283           	clrl %d3                                    
   4be4c:	4280           	clrl %d0                                    
   4be4e:	6000 fee0      	braw 4bd30 <_Heap_Allocate_aligned_with_boundary+0x70>
	...                                                                  
                                                                      
00046e94 <_Heap_Block_allocate>:                                      
                                                                      
  Heap_Block *free_list_anchor = NULL;                                
                                                                      
  _HAssert( alloc_area_begin <= alloc_begin );                        
                                                                      
  if ( _Heap_Is_free( block ) ) {                                     
   46e94:	70fe           	moveq #-2,%d0                               
  Heap_Control *heap,                                                 
  Heap_Block *block,                                                  
  uintptr_t alloc_begin,                                              
  uintptr_t alloc_size                                                
)                                                                     
{                                                                     
   46e96:	4e56 ffe0      	linkw %fp,#-32                              
   46e9a:	222e 0010      	movel %fp@(16),%d1                          
                                                                      
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Alloc_area_of_block(             
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (uintptr_t) block + HEAP_BLOCK_HEADER_SIZE;                  
   46e9e:	2041           	moveal %d1,%a0                              
   46ea0:	5188           	subql #8,%a0                                
   46ea2:	48d7 3c3c      	moveml %d2-%d5/%a2-%a5,%sp@                 
   46ea6:	246e 000c      	moveal %fp@(12),%a2                         
                                                                      
  Heap_Block *free_list_anchor = NULL;                                
                                                                      
  _HAssert( alloc_area_begin <= alloc_begin );                        
                                                                      
  if ( _Heap_Is_free( block ) ) {                                     
   46eaa:	7601           	moveq #1,%d3                                
)                                                                     
{                                                                     
  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; 
   46eac:	2848           	moveal %a0,%a4                              
   46eae:	240a           	movel %a2,%d2                               
   46eb0:	99ca           	subal %a2,%a4                               
                                                                      
  Heap_Block *free_list_anchor = NULL;                                
                                                                      
  _HAssert( alloc_area_begin <= alloc_begin );                        
                                                                      
  if ( _Heap_Is_free( block ) ) {                                     
   46eb2:	c0aa 0004      	andl %a2@(4),%d0                            
  Heap_Control *heap,                                                 
  Heap_Block *block,                                                  
  uintptr_t alloc_begin,                                              
  uintptr_t alloc_size                                                
)                                                                     
{                                                                     
   46eb6:	266e 0008      	moveal %fp@(8),%a3                          
                                                                      
  Heap_Block *free_list_anchor = NULL;                                
                                                                      
  _HAssert( alloc_area_begin <= alloc_begin );                        
                                                                      
  if ( _Heap_Is_free( block ) ) {                                     
   46eba:	c6b2 0804      	andl %a2@(00000004,%d0:l),%d3               
  Heap_Control *heap,                                                 
  Heap_Block *block,                                                  
  uintptr_t alloc_begin,                                              
  uintptr_t alloc_size                                                
)                                                                     
{                                                                     
   46ebe:	2a2e 0014      	movel %fp@(20),%d5                          
                                                                      
  Heap_Block *free_list_anchor = NULL;                                
                                                                      
  _HAssert( alloc_area_begin <= alloc_begin );                        
                                                                      
  if ( _Heap_Is_free( block ) ) {                                     
   46ec2:	4a03           	tstb %d3                                    
   46ec4:	6600 00aa      	bnew 46f70 <_Heap_Block_allocate+0xdc>      
    free_list_anchor = block->prev;                                   
                                                                      
    _Heap_Free_list_remove( block );                                  
                                                                      
    /* Statistics */                                                  
    --stats->free_blocks;                                             
   46ec8:	53ab 0038      	subql #1,%a3@(56)                           
    ++stats->used_blocks;                                             
    stats->free_size -= _Heap_Block_size( block );                    
   46ecc:	76fe           	moveq #-2,%d3                               
                                                                      
    _Heap_Free_list_remove( block );                                  
                                                                      
    /* Statistics */                                                  
    --stats->free_blocks;                                             
    ++stats->used_blocks;                                             
   46ece:	52ab 0040      	addql #1,%a3@(64)                           
  return _Heap_Free_list_tail(heap)->prev;                            
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE void _Heap_Free_list_remove( Heap_Block *block ) 
{                                                                     
  Heap_Block *next = block->next;                                     
   46ed2:	202a 0008      	movel %a2@(8),%d0                           
  Heap_Block *prev = block->prev;                                     
                                                                      
  prev->next = next;                                                  
  next->prev = prev;                                                  
   46ed6:	2a40           	moveal %d0,%a5                              
  Heap_Block *free_list_anchor = NULL;                                
                                                                      
  _HAssert( alloc_area_begin <= alloc_begin );                        
                                                                      
  if ( _Heap_Is_free( block ) ) {                                     
    free_list_anchor = block->prev;                                   
   46ed8:	226a 000c      	moveal %a2@(12),%a1                         
    _Heap_Free_list_remove( block );                                  
                                                                      
    /* Statistics */                                                  
    --stats->free_blocks;                                             
    ++stats->used_blocks;                                             
    stats->free_size -= _Heap_Block_size( block );                    
   46edc:	c6aa 0004      	andl %a2@(4),%d3                            
RTEMS_INLINE_ROUTINE void _Heap_Free_list_remove( Heap_Block *block ) 
{                                                                     
  Heap_Block *next = block->next;                                     
  Heap_Block *prev = block->prev;                                     
                                                                      
  prev->next = next;                                                  
   46ee0:	2340 0008      	movel %d0,%a1@(8)                           
  } else {                                                            
    free_list_anchor = _Heap_Free_list_head( heap );                  
  }                                                                   
                                                                      
  if ( alloc_area_offset < heap->page_size ) {                        
   46ee4:	202b 0010      	movel %a3@(16),%d0                          
    _Heap_Free_list_remove( block );                                  
                                                                      
    /* Statistics */                                                  
    --stats->free_blocks;                                             
    ++stats->used_blocks;                                             
    stats->free_size -= _Heap_Block_size( block );                    
   46ee8:	97ab 0030      	subl %d3,%a3@(48)                           
  next->prev = prev;                                                  
   46eec:	2b49 000c      	movel %a1,%a5@(12)                          
  } else {                                                            
    free_list_anchor = _Heap_Free_list_head( heap );                  
  }                                                                   
                                                                      
  if ( alloc_area_offset < heap->page_size ) {                        
   46ef0:	b08c           	cmpl %a4,%d0                                
   46ef2:	6200 0088      	bhiw 46f7c <_Heap_Block_allocate+0xe8>      
    - 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;                
   46ef6:	262a 0004      	movel %a2@(4),%d3                           
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 )   
   46efa:	4c40 1004      	remul %d0,%d4,%d1                           
  _HAssert( new_block_size >= heap->min_block_size );                 
                                                                      
  /* Statistics */                                                    
  stats->free_size += block_size;                                     
                                                                      
  if ( _Heap_Is_prev_used( block ) ) {                                
   46efe:	7201           	moveq #1,%d1                                
   46f00:	91c4           	subal %d4,%a0                               
    _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;       
                                                                      
  block_end = new_block_begin;                                        
  block_size = block_end - block_begin;                               
   46f02:	2008           	movel %a0,%d0                               
   46f04:	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;                                     
   46f06:	d1ab 0030      	addl %d0,%a3@(48)                           
                                                                      
  if ( _Heap_Is_prev_used( block ) ) {                                
   46f0a:	c2aa 0004      	andl %a2@(4),%d1                            
   46f0e:	6700 0082      	beqw 46f92 <_Heap_Block_allocate+0xfe>      
  }                                                                   
                                                                      
  block->size_and_flag = block_size | HEAP_PREV_BLOCK_USED;           
                                                                      
  new_block->prev_size = block_size;                                  
  new_block->size_and_flag = new_block_size;                          
   46f12:	78fe           	moveq #-2,%d4                               
    _Heap_Free_list_insert_after( free_list_anchor, block );          
                                                                      
    free_list_anchor = block;                                         
                                                                      
    /* Statistics */                                                  
    ++stats->free_blocks;                                             
   46f14:	52ab 0038      	addql #1,%a3@(56)                           
   46f18:	220a           	movel %a2,%d1                               
RTEMS_INLINE_ROUTINE void _Heap_Free_list_insert_after(               
  Heap_Block *block_before,                                           
  Heap_Block *new_block                                               
)                                                                     
{                                                                     
  Heap_Block *next = block_before->next;                              
   46f1a:	2869 0008      	moveal %a1@(8),%a4                          
  }                                                                   
                                                                      
  block->size_and_flag = block_size | HEAP_PREV_BLOCK_USED;           
                                                                      
  new_block->prev_size = block_size;                                  
  new_block->size_and_flag = new_block_size;                          
   46f1e:	c684           	andl %d4,%d3                                
    block = prev_block;                                               
    block_begin = (uintptr_t) block;                                  
    block_size += prev_block_size;                                    
  }                                                                   
                                                                      
  block->size_and_flag = block_size | HEAP_PREV_BLOCK_USED;           
   46f20:	7801           	moveq #1,%d4                                
   46f22:	8880           	orl %d0,%d4                                 
                                                                      
  new_block->next = next;                                             
   46f24:	254c 0008      	movel %a4,%a2@(8)                           
                                                                      
  new_block->prev_size = block_size;                                  
  new_block->size_and_flag = new_block_size;                          
   46f28:	d483           	addl %d3,%d2                                
   46f2a:	9488           	subl %a0,%d2                                
  new_block->prev = block_before;                                     
   46f2c:	2549 000c      	movel %a1,%a2@(12)                          
    block = prev_block;                                               
    block_begin = (uintptr_t) block;                                  
    block_size += prev_block_size;                                    
  }                                                                   
                                                                      
  block->size_and_flag = block_size | HEAP_PREV_BLOCK_USED;           
   46f30:	2544 0004      	movel %d4,%a2@(4)                           
  block_before->next = new_block;                                     
   46f34:	234a 0008      	movel %a2,%a1@(8)                           
  next->prev = new_block;                                             
   46f38:	294a 000c      	movel %a2,%a4@(12)                          
                                                                      
  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 ); 
   46f3c:	2448           	moveal %a0,%a2                              
    block_size += prev_block_size;                                    
  }                                                                   
                                                                      
  block->size_and_flag = block_size | HEAP_PREV_BLOCK_USED;           
                                                                      
  new_block->prev_size = block_size;                                  
   46f3e:	2080           	movel %d0,%a0@                              
  new_block->size_and_flag = new_block_size;                          
   46f40:	2142 0004      	movel %d2,%a0@(4)                           
                                                                      
  _Heap_Block_split( heap, new_block, free_list_anchor, alloc_size ); 
   46f44:	2f05           	movel %d5,%sp@-                             
   46f46:	2f01           	movel %d1,%sp@-                             
   46f48:	2f08           	movel %a0,%sp@-                             
   46f4a:	2f0b           	movel %a3,%sp@-                             
   46f4c:	4eb9 0004 6da0 	jsr 46da0 <_Heap_Block_split>               
   46f52:	4fef 0010      	lea %sp@(16),%sp                            
      alloc_size                                                      
    );                                                                
  }                                                                   
                                                                      
  /* Statistics */                                                    
  if ( stats->min_free_size > stats->free_size ) {                    
   46f56:	202b 0030      	movel %a3@(48),%d0                          
  Heap_Block *block,                                                  
  uintptr_t alloc_begin,                                              
  uintptr_t alloc_size                                                
)                                                                     
{                                                                     
  Heap_Statistics *const stats = &heap->stats;                        
   46f5a:	b0ab 0034      	cmpl %a3@(52),%d0                           
   46f5e:	6404           	bccs 46f64 <_Heap_Block_allocate+0xd0>      
    );                                                                
  }                                                                   
                                                                      
  /* Statistics */                                                    
  if ( stats->min_free_size > stats->free_size ) {                    
    stats->min_free_size = stats->free_size;                          
   46f60:	2740 0034      	movel %d0,%a3@(52)                          
  }                                                                   
                                                                      
  return block;                                                       
}                                                                     
   46f64:	200a           	movel %a2,%d0                               
   46f66:	4cee 3c3c ffe0 	moveml %fp@(-32),%d2-%d5/%a2-%a5            
   46f6c:	4e5e           	unlk %fp                                    
   46f6e:	4e75           	rts                                         
    stats->free_size -= _Heap_Block_size( block );                    
  } else {                                                            
    free_list_anchor = _Heap_Free_list_head( heap );                  
  }                                                                   
                                                                      
  if ( alloc_area_offset < heap->page_size ) {                        
   46f70:	202b 0010      	movel %a3@(16),%d0                          
    /* Statistics */                                                  
    --stats->free_blocks;                                             
    ++stats->used_blocks;                                             
    stats->free_size -= _Heap_Block_size( block );                    
  } else {                                                            
    free_list_anchor = _Heap_Free_list_head( heap );                  
   46f74:	224b           	moveal %a3,%a1                              
  }                                                                   
                                                                      
  if ( alloc_area_offset < heap->page_size ) {                        
   46f76:	b08c           	cmpl %a4,%d0                                
   46f78:	6300 ff7c      	blsw 46ef6 <_Heap_Block_allocate+0x62>      
  Heap_Block *block,                                                  
  Heap_Block *free_list_anchor,                                       
  uintptr_t alloc_size                                                
)                                                                     
{                                                                     
  _Heap_Block_split( heap, block, free_list_anchor, alloc_size );     
   46f7c:	4874 5800      	pea %a4@(00000000,%d5:l)                    
   46f80:	2f09           	movel %a1,%sp@-                             
   46f82:	2f0a           	movel %a2,%sp@-                             
   46f84:	2f0b           	movel %a3,%sp@-                             
   46f86:	4eb9 0004 6da0 	jsr 46da0 <_Heap_Block_split>               
   46f8c:	4fef 0010      	lea %sp@(16),%sp                            
   46f90:	60c4           	bras 46f56 <_Heap_Block_allocate+0xc2>      
                                                                      
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Prev_block(                    
  const Heap_Block *block                                             
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block - block->prev_size);       
   46f92:	95d2           	subal %a2@,%a2                              
    Heap_Block *const prev_block = _Heap_Prev_block( block );         
    uintptr_t const prev_block_size = _Heap_Block_size( prev_block ); 
                                                                      
    block = prev_block;                                               
    block_begin = (uintptr_t) block;                                  
    block_size += prev_block_size;                                    
   46f94:	78fe           	moveq #-2,%d4                               
   46f96:	2209           	movel %a1,%d1                               
   46f98:	c8aa 0004      	andl %a2@(4),%d4                            
   46f9c:	d084           	addl %d4,%d0                                
  }                                                                   
                                                                      
  block->size_and_flag = block_size | HEAP_PREV_BLOCK_USED;           
                                                                      
  new_block->prev_size = block_size;                                  
  new_block->size_and_flag = new_block_size;                          
   46f9e:	78fe           	moveq #-2,%d4                               
   46fa0:	c684           	andl %d4,%d3                                
    block = prev_block;                                               
    block_begin = (uintptr_t) block;                                  
    block_size += prev_block_size;                                    
  }                                                                   
                                                                      
  block->size_and_flag = block_size | HEAP_PREV_BLOCK_USED;           
   46fa2:	7801           	moveq #1,%d4                                
   46fa4:	8880           	orl %d0,%d4                                 
                                                                      
  new_block->prev_size = block_size;                                  
  new_block->size_and_flag = new_block_size;                          
   46fa6:	d483           	addl %d3,%d2                                
   46fa8:	9488           	subl %a0,%d2                                
    block = prev_block;                                               
    block_begin = (uintptr_t) block;                                  
    block_size += prev_block_size;                                    
  }                                                                   
                                                                      
  block->size_and_flag = block_size | HEAP_PREV_BLOCK_USED;           
   46faa:	2544 0004      	movel %d4,%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 ); 
   46fae:	2448           	moveal %a0,%a2                              
    block_size += prev_block_size;                                    
  }                                                                   
                                                                      
  block->size_and_flag = block_size | HEAP_PREV_BLOCK_USED;           
                                                                      
  new_block->prev_size = block_size;                                  
   46fb0:	2080           	movel %d0,%a0@                              
  new_block->size_and_flag = new_block_size;                          
   46fb2:	2142 0004      	movel %d2,%a0@(4)                           
                                                                      
  _Heap_Block_split( heap, new_block, free_list_anchor, alloc_size ); 
   46fb6:	2f05           	movel %d5,%sp@-                             
   46fb8:	2f01           	movel %d1,%sp@-                             
   46fba:	2f08           	movel %a0,%sp@-                             
   46fbc:	2f0b           	movel %a3,%sp@-                             
   46fbe:	4eb9 0004 6da0 	jsr 46da0 <_Heap_Block_split>               
   46fc4:	4fef 0010      	lea %sp@(16),%sp                            
   46fc8:	608c           	bras 46f56 <_Heap_Block_allocate+0xc2>      
	...                                                                  
                                                                      
00050dc4 <_Heap_Extend>:                                              
  Heap_Control *heap,                                                 
  void *area_begin_ptr,                                               
  uintptr_t area_size,                                                
  uintptr_t *amount_extended                                          
)                                                                     
{                                                                     
   50dc4:	4e56 fff4      	linkw %fp,#-12                              
   50dc8:	206e 0008      	moveal %fp@(8),%a0                          
   50dcc:	202e 000c      	movel %fp@(12),%d0                          
  Heap_Statistics *const stats = &heap->stats;                        
  uintptr_t const area_begin = (uintptr_t) area_begin_ptr;            
  uintptr_t const heap_area_begin = heap->area_begin;                 
  uintptr_t const heap_area_end = heap->area_end;                     
   50dd0:	2228 001c      	movel %a0@(28),%d1                          
  uintptr_t const new_heap_area_end = heap_area_end + area_size;      
  uintptr_t extend_size = 0;                                          
  Heap_Block *const last_block = heap->last_block;                    
   50dd4:	2268 0024      	moveal %a0@(36),%a1                         
  Heap_Control *heap,                                                 
  void *area_begin_ptr,                                               
  uintptr_t area_size,                                                
  uintptr_t *amount_extended                                          
)                                                                     
{                                                                     
   50dd8:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
  Heap_Statistics *const stats = &heap->stats;                        
  uintptr_t const area_begin = (uintptr_t) area_begin_ptr;            
  uintptr_t const heap_area_begin = heap->area_begin;                 
   50ddc:	b0a8 0018      	cmpl %a0@(24),%d0                           
   50de0:	6410           	bccs 50df2 <_Heap_Extend+0x2e>              
   *  As noted, this code only supports (4).                          
   */                                                                 
                                                                      
  if ( area_begin >= heap_area_begin && area_begin < heap_area_end ) {
    return HEAP_EXTEND_ERROR; /* case 3 */                            
  } else if ( area_begin != heap_area_end ) {                         
   50de2:	b280           	cmpl %d0,%d1                                
   50de4:	671c           	beqs 50e02 <_Heap_Extend+0x3e>              
   50de6:	7002           	moveq #2,%d0                                
                                                                      
    _Heap_Free( heap, (void *) _Heap_Alloc_area_of_block( last_block ));
  }                                                                   
                                                                      
  return HEAP_EXTEND_SUCCESSFUL;                                      
}                                                                     
   50de8:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   50dee:	4e5e           	unlk %fp                                    
   50df0:	4e75           	rts                                         
   *    5. non-contiguous higher address    (NOT SUPPORTED)           
   *                                                                  
   *  As noted, this code only supports (4).                          
   */                                                                 
                                                                      
  if ( area_begin >= heap_area_begin && area_begin < heap_area_end ) {
   50df2:	b280           	cmpl %d0,%d1                                
   50df4:	63ec           	blss 50de2 <_Heap_Extend+0x1e>              
   50df6:	7001           	moveq #1,%d0                                
                                                                      
    _Heap_Free( heap, (void *) _Heap_Alloc_area_of_block( last_block ));
  }                                                                   
                                                                      
  return HEAP_EXTEND_SUCCESSFUL;                                      
}                                                                     
   50df8:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   50dfe:	4e5e           	unlk %fp                                    
   50e00:	4e75           	rts                                         
{                                                                     
  Heap_Statistics *const stats = &heap->stats;                        
  uintptr_t const area_begin = (uintptr_t) area_begin_ptr;            
  uintptr_t const heap_area_begin = heap->area_begin;                 
  uintptr_t const heap_area_end = heap->area_end;                     
  uintptr_t const new_heap_area_end = heap_area_end + area_size;      
   50e02:	2200           	movel %d0,%d1                               
   50e04:	d2ae 0010      	addl %fp@(16),%d1                           
   *  block and free it.                                              
   */                                                                 
                                                                      
  heap->area_end = new_heap_area_end;                                 
                                                                      
  extend_size = new_heap_area_end                                     
   50e08:	70f8           	moveq #-8,%d0                               
   50e0a:	9089           	subl %a1,%d0                                
   50e0c:	d081           	addl %d1,%d0                                
RTEMS_INLINE_ROUTINE uintptr_t _Heap_Align_down(                      
  uintptr_t value,                                                    
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  return value - (value % alignment);                                 
   50e0e:	2600           	movel %d0,%d3                               
   50e10:	4c68 3002 0010 	remul %a0@(16),%d2,%d3                      
   *  Currently only case 4 should make it to this point.             
   *  The basic trick is to make the extend area look like a used     
   *  block and free it.                                              
   */                                                                 
                                                                      
  heap->area_end = new_heap_area_end;                                 
   50e16:	2141 001c      	movel %d1,%a0@(28)                          
                                                                      
  extend_size = new_heap_area_end                                     
    - (uintptr_t) last_block - HEAP_BLOCK_HEADER_SIZE;                
  extend_size = _Heap_Align_down( extend_size, heap->page_size );     
                                                                      
  *amount_extended = extend_size;                                     
   50e1a:	246e 0014      	moveal %fp@(20),%a2                         
   50e1e:	9082           	subl %d2,%d0                                
   50e20:	2480           	movel %d0,%a2@                              
                                                                      
  if( extend_size >= heap->min_block_size ) {                         
   50e22:	b0a8 0014      	cmpl %a0@(20),%d0                           
   50e26:	640c           	bccs 50e34 <_Heap_Extend+0x70>              
    /* Statistics */                                                  
    stats->size += extend_size;                                       
    ++stats->used_blocks;                                             
    --stats->frees; /* Do not count subsequent call as actual free() */
                                                                      
    _Heap_Free( heap, (void *) _Heap_Alloc_area_of_block( last_block ));
   50e28:	4280           	clrl %d0                                    <== NOT EXECUTED
  }                                                                   
                                                                      
  return HEAP_EXTEND_SUCCESSFUL;                                      
}                                                                     
   50e2a:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   50e30:	4e5e           	unlk %fp                                    
   50e32:	4e75           	rts                                         
  uintptr_t size                                                      
)                                                                     
{                                                                     
  uintptr_t flag = block->size_and_flag & HEAP_PREV_BLOCK_USED;       
                                                                      
  block->size_and_flag = size | flag;                                 
   50e34:	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);                 
   50e36:	45f1 0800      	lea %a1@(00000000,%d0:l),%a2                
  uintptr_t size                                                      
)                                                                     
{                                                                     
  uintptr_t flag = block->size_and_flag & HEAP_PREV_BLOCK_USED;       
                                                                      
  block->size_and_flag = size | flag;                                 
   50e3a:	c4a9 0004      	andl %a1@(4),%d2                            
  if( extend_size >= heap->min_block_size ) {                         
    Heap_Block *const new_last_block = _Heap_Block_at( last_block, extend_size );
                                                                      
    _Heap_Block_set_size( last_block, extend_size );                  
                                                                      
    new_last_block->size_and_flag =                                   
   50e3e:	2228 0020      	movel %a0@(32),%d1                          
   50e42:	928a           	subl %a2,%d1                                
   50e44:	8480           	orl %d0,%d2                                 
      ((uintptr_t) heap->first_block - (uintptr_t) new_last_block)    
        | HEAP_PREV_BLOCK_USED;                                       
                                                                      
    heap->last_block = new_last_block;                                
   50e46:	214a 0024      	movel %a2,%a0@(36)                          
   50e4a:	2342 0004      	movel %d2,%a1@(4)                           
  if( extend_size >= heap->min_block_size ) {                         
    Heap_Block *const new_last_block = _Heap_Block_at( last_block, extend_size );
                                                                      
    _Heap_Block_set_size( last_block, extend_size );                  
                                                                      
    new_last_block->size_and_flag =                                   
   50e4e:	7401           	moveq #1,%d2                                
   50e50:	8481           	orl %d1,%d2                                 
   50e52:	2542 0004      	movel %d2,%a2@(4)                           
    /* Statistics */                                                  
    stats->size += extend_size;                                       
    ++stats->used_blocks;                                             
    --stats->frees; /* Do not count subsequent call as actual free() */
                                                                      
    _Heap_Free( heap, (void *) _Heap_Alloc_area_of_block( last_block ));
   50e56:	4869 0008      	pea %a1@(8)                                 
        | HEAP_PREV_BLOCK_USED;                                       
                                                                      
    heap->last_block = new_last_block;                                
                                                                      
    /* Statistics */                                                  
    stats->size += extend_size;                                       
   50e5a:	d1a8 002c      	addl %d0,%a0@(44)                           
    ++stats->used_blocks;                                             
   50e5e:	52a8 0040      	addql #1,%a0@(64)                           
    --stats->frees; /* Do not count subsequent call as actual free() */
   50e62:	53a8 0050      	subql #1,%a0@(80)                           
                                                                      
    _Heap_Free( heap, (void *) _Heap_Alloc_area_of_block( last_block ));
   50e66:	2f08           	movel %a0,%sp@-                             
   50e68:	4eb9 0004 b5e8 	jsr 4b5e8 <_Heap_Free>                      
   50e6e:	508f           	addql #8,%sp                                
   50e70:	4280           	clrl %d0                                    
   50e72:	60b6           	bras 50e2a <_Heap_Extend+0x66>              
                                                                      
0004be54 <_Heap_Free>:                                                
#include <rtems/system.h>                                             
#include <rtems/score/sysstate.h>                                     
#include <rtems/score/heap.h>                                         
                                                                      
bool _Heap_Free( Heap_Control *heap, void *alloc_begin_ptr )          
{                                                                     
   4be54:	4e56 ffe4      	linkw %fp,#-28                              
   4be58:	202e 000c      	movel %fp@(12),%d0                          
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 )   
   4be5c:	2040           	moveal %d0,%a0                              
   4be5e:	5188           	subql #8,%a0                                
   4be60:	226e 0008      	moveal %fp@(8),%a1                          
   4be64:	4c69 0001 0010 	remul %a1@(16),%d1,%d0                      
   4be6a:	48d7 0c7c      	moveml %d2-%d6/%a2-%a3,%sp@                 
  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;             
   4be6e:	2029 0020      	movel %a1@(32),%d0                          
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 )   
   4be72:	91c1           	subal %d1,%a0                               
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           
   4be74:	b088           	cmpl %a0,%d0                                
   4be76:	6200 00a0      	bhiw 4bf18 <_Heap_Free+0xc4>                
    && (uintptr_t) block <= (uintptr_t) heap->last_block;             
   4be7a:	2229 0024      	movel %a1@(36),%d1                          
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           
   4be7e:	b288           	cmpl %a0,%d1                                
   4be80:	6500 0096      	bcsw 4bf18 <_Heap_Free+0xc4>                
    - 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;                
   4be84:	2628 0004      	movel %a0@(4),%d3                           
   4be88:	74fe           	moveq #-2,%d2                               
   4be8a:	c483           	andl %d3,%d2                                
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(                      
  const Heap_Block *block,                                            
  uintptr_t offset                                                    
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block + offset);                 
   4be8c:	45f0 2800      	lea %a0@(00000000,%d2:l),%a2                
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           
   4be90:	b5c0           	cmpal %d0,%a2                               
   4be92:	6500 0084      	bcsw 4bf18 <_Heap_Free+0xc4>                
   4be96:	b5c1           	cmpal %d1,%a2                               
   4be98:	627e           	bhis 4bf18 <_Heap_Free+0xc4>                
  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;                 
   4be9a:	282a 0004      	movel %a2@(4),%d4                           
  if ( !_Heap_Is_block_in_heap( heap, next_block ) ) {                
    _HAssert( false );                                                
    return false;                                                     
  }                                                                   
                                                                      
  if ( !_Heap_Is_prev_used( next_block ) ) {                          
   4be9e:	7a01           	moveq #1,%d5                                
   4bea0:	ca84           	andl %d4,%d5                                
   4bea2:	4a05           	tstb %d5                                    
   4bea4:	6772           	beqs 4bf18 <_Heap_Free+0xc4>                
    - 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;                
   4bea6:	7afe           	moveq #-2,%d5                               
   4bea8:	c885           	andl %d5,%d4                                
    _HAssert( false );                                                
    return false;                                                     
  }                                                                   
                                                                      
  next_block_size = _Heap_Block_size( next_block );                   
  next_is_free = next_block != heap->last_block                       
   4beaa:	b5c1           	cmpal %d1,%a2                               
   4beac:	6700 00fa      	beqw 4bfa8 <_Heap_Free+0x154>               
                                                                      
#include <rtems/system.h>                                             
#include <rtems/score/sysstate.h>                                     
#include <rtems/score/heap.h>                                         
                                                                      
bool _Heap_Free( Heap_Control *heap, void *alloc_begin_ptr )          
   4beb0:	7a01           	moveq #1,%d5                                
   4beb2:	7c01           	moveq #1,%d6                                
   4beb4:	cab2 4804      	andl %a2@(00000004,%d4:l),%d5               
   4beb8:	bd85           	eorl %d6,%d5                                
                                                                      
  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 ));
                                                                      
  if ( !_Heap_Is_prev_used( block ) ) {                               
   4beba:	7c01           	moveq #1,%d6                                
   4bebc:	c686           	andl %d6,%d3                                
   4bebe:	4a03           	tstb %d3                                    
   4bec0:	6660           	bnes 4bf22 <_Heap_Free+0xce>                
    uintptr_t const prev_size = block->prev_size;                     
   4bec2:	2610           	movel %a0@,%d3                              
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(                      
  const Heap_Block *block,                                            
  uintptr_t offset                                                    
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block + offset);                 
   4bec4:	91c3           	subal %d3,%a0                               
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           
   4bec6:	b1c0           	cmpal %d0,%a0                               
   4bec8:	654e           	bcss 4bf18 <_Heap_Free+0xc4>                
   4beca:	b1c1           	cmpal %d1,%a0                               
   4becc:	624a           	bhis 4bf18 <_Heap_Free+0xc4>                
      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) ) {                        
   4bece:	7001           	moveq #1,%d0                                
   4bed0:	c0a8 0004      	andl %a0@(4),%d0                            
   4bed4:	4a00           	tstb %d0                                    
   4bed6:	6740           	beqs 4bf18 <_Heap_Free+0xc4>                
      _HAssert( false );                                              
      return( false );                                                
    }                                                                 
                                                                      
    if ( next_is_free ) {       /* coalesce both */                   
   4bed8:	4a05           	tstb %d5                                    
   4beda:	6700 00d2      	beqw 4bfae <_Heap_Free+0x15a>               
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE void _Heap_Free_list_remove( Heap_Block *block ) 
{                                                                     
  Heap_Block *next = block->next;                                     
  Heap_Block *prev = block->prev;                                     
   4bede:	266a 000c      	moveal %a2@(12),%a3                         
      uintptr_t const size = block_size + prev_size + next_block_size;
      _Heap_Free_list_remove( next_block );                           
      stats->free_blocks -= 1;                                        
   4bee2:	53a9 0038      	subql #1,%a1@(56)                           
      _HAssert( false );                                              
      return( false );                                                
    }                                                                 
                                                                      
    if ( next_is_free ) {       /* coalesce both */                   
      uintptr_t const size = block_size + prev_size + next_block_size;
   4bee6:	d882           	addl %d2,%d4                                
   4bee8:	d684           	addl %d4,%d3                                
      _Heap_Free_list_remove( next_block );                           
      stats->free_blocks -= 1;                                        
      prev_block->size_and_flag = size | HEAP_PREV_BLOCK_USED;        
   4beea:	7001           	moveq #1,%d0                                
  return _Heap_Free_list_tail(heap)->prev;                            
}                                                                     
                                                                      
RTEMS_INLINE_ROUTINE void _Heap_Free_list_remove( Heap_Block *block ) 
{                                                                     
  Heap_Block *next = block->next;                                     
   4beec:	246a 0008      	moveal %a2@(8),%a2                          
   4bef0:	8083           	orl %d3,%d0                                 
      next_block = _Heap_Block_at( prev_block, size );                
      _HAssert(!_Heap_Is_prev_used( next_block));                     
      next_block->prev_size = size;                                   
   4bef2:	2183 3800      	movel %d3,%a0@(00000000,%d3:l)              
                                                                      
    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;        
   4bef6:	2140 0004      	movel %d0,%a0@(4)                           
  Heap_Block *prev = block->prev;                                     
                                                                      
  prev->next = next;                                                  
  next->prev = prev;                                                  
   4befa:	254b 000c      	movel %a3,%a2@(12)                          
RTEMS_INLINE_ROUTINE void _Heap_Free_list_remove( Heap_Block *block ) 
{                                                                     
  Heap_Block *next = block->next;                                     
  Heap_Block *prev = block->prev;                                     
                                                                      
  prev->next = next;                                                  
   4befe:	274a 0008      	movel %a2,%a3@(8)                           
  }                                                                   
                                                                      
  /* Statistics */                                                    
  --stats->used_blocks;                                               
  ++stats->frees;                                                     
  stats->free_size += block_size;                                     
   4bf02:	d5a9 0030      	addl %d2,%a1@(48)                           
      stats->max_free_blocks = stats->free_blocks;                    
    }                                                                 
  }                                                                   
                                                                      
  /* Statistics */                                                    
  --stats->used_blocks;                                               
   4bf06:	53a9 0040      	subql #1,%a1@(64)                           
  ++stats->frees;                                                     
   4bf0a:	52a9 0050      	addql #1,%a1@(80)                           
  stats->free_size += block_size;                                     
   4bf0e:	7001           	moveq #1,%d0                                
                                                                      
  return( true );                                                     
}                                                                     
   4bf10:	4cd7 0c7c      	moveml %sp@,%d2-%d6/%a2-%a3                 
   4bf14:	4e5e           	unlk %fp                                    
   4bf16:	4e75           	rts                                         
   4bf18:	4cd7 0c7c      	moveml %sp@,%d2-%d6/%a2-%a3                 
  /* Statistics */                                                    
  --stats->used_blocks;                                               
  ++stats->frees;                                                     
  stats->free_size += block_size;                                     
                                                                      
  return( true );                                                     
   4bf1c:	4200           	clrb %d0                                    
}                                                                     
   4bf1e:	4e5e           	unlk %fp                                    
   4bf20:	4e75           	rts                                         
      uintptr_t const size = block_size + prev_size;                  
      prev_block->size_and_flag = size | HEAP_PREV_BLOCK_USED;        
      next_block->size_and_flag &= ~HEAP_PREV_BLOCK_USED;             
      next_block->prev_size = size;                                   
    }                                                                 
  } else if ( next_is_free ) {    /* coalesce next */                 
   4bf22:	4a05           	tstb %d5                                    
   4bf24:	6736           	beqs 4bf5c <_Heap_Free+0x108>               
  Heap_Block *old_block,                                              
  Heap_Block *new_block                                               
)                                                                     
{                                                                     
  Heap_Block *next = old_block->next;                                 
  Heap_Block *prev = old_block->prev;                                 
   4bf26:	266a 000c      	moveal %a2@(12),%a3                         
    uintptr_t const size = block_size + next_block_size;              
   4bf2a:	d882           	addl %d2,%d4                                
    _Heap_Free_list_replace( next_block, block );                     
    block->size_and_flag = size | HEAP_PREV_BLOCK_USED;               
   4bf2c:	7001           	moveq #1,%d0                                
RTEMS_INLINE_ROUTINE void _Heap_Free_list_replace(                    
  Heap_Block *old_block,                                              
  Heap_Block *new_block                                               
)                                                                     
{                                                                     
  Heap_Block *next = old_block->next;                                 
   4bf2e:	246a 0008      	moveal %a2@(8),%a2                          
   4bf32:	8084           	orl %d4,%d0                                 
    next_block  = _Heap_Block_at( block, size );                      
    next_block->prev_size = size;                                     
   4bf34:	2184 4800      	movel %d4,%a0@(00000000,%d4:l)              
  Heap_Block *prev = old_block->prev;                                 
                                                                      
  new_block->next = next;                                             
  new_block->prev = prev;                                             
   4bf38:	214b 000c      	movel %a3,%a0@(12)                          
)                                                                     
{                                                                     
  Heap_Block *next = old_block->next;                                 
  Heap_Block *prev = old_block->prev;                                 
                                                                      
  new_block->next = next;                                             
   4bf3c:	214a 0008      	movel %a2,%a0@(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;               
   4bf40:	2140 0004      	movel %d0,%a0@(4)                           
  }                                                                   
                                                                      
  /* Statistics */                                                    
  --stats->used_blocks;                                               
  ++stats->frees;                                                     
  stats->free_size += block_size;                                     
   4bf44:	d5a9 0030      	addl %d2,%a1@(48)                           
      stats->max_free_blocks = stats->free_blocks;                    
    }                                                                 
  }                                                                   
                                                                      
  /* Statistics */                                                    
  --stats->used_blocks;                                               
   4bf48:	53a9 0040      	subql #1,%a1@(64)                           
  ++stats->frees;                                                     
   4bf4c:	52a9 0050      	addql #1,%a1@(80)                           
  stats->free_size += block_size;                                     
   4bf50:	7001           	moveq #1,%d0                                
  new_block->prev = prev;                                             
                                                                      
  next->prev = new_block;                                             
   4bf52:	2548 000c      	movel %a0,%a2@(12)                          
  prev->next = new_block;                                             
   4bf56:	2748 0008      	movel %a0,%a3@(8)                           
   4bf5a:	60b4           	bras 4bf10 <_Heap_Free+0xbc>                
    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;         
   4bf5c:	7a01           	moveq #1,%d5                                
    next_block->size_and_flag &= ~HEAP_PREV_BLOCK_USED;               
   4bf5e:	7cfe           	moveq #-2,%d6                               
    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;         
   4bf60:	8a82           	orl %d2,%d5                                 
RTEMS_INLINE_ROUTINE void _Heap_Free_list_insert_after(               
  Heap_Block *block_before,                                           
  Heap_Block *new_block                                               
)                                                                     
{                                                                     
  Heap_Block *next = block_before->next;                              
   4bf62:	2669 0008      	moveal %a1@(8),%a3                          
   4bf66:	2145 0004      	movel %d5,%a0@(4)                           
    next_block->size_and_flag &= ~HEAP_PREV_BLOCK_USED;               
   4bf6a:	cdaa 0004      	andl %d6,%a2@(4)                            
    next_block->prev_size = block_size;                               
   4bf6e:	2482           	movel %d2,%a2@                              
                                                                      
    /* Statistics */                                                  
    ++stats->free_blocks;                                             
   4bf70:	2029 0038      	movel %a1@(56),%d0                          
   4bf74:	5280           	addql #1,%d0                                
                                                                      
  new_block->next = next;                                             
   4bf76:	214b 0008      	movel %a3,%a0@(8)                           
  new_block->prev = block_before;                                     
   4bf7a:	2149 000c      	movel %a1,%a0@(12)                          
  block_before->next = new_block;                                     
   4bf7e:	2348 0008      	movel %a0,%a1@(8)                           
  next->prev = new_block;                                             
   4bf82:	2748 000c      	movel %a0,%a3@(12)                          
   4bf86:	2340 0038      	movel %d0,%a1@(56)                          
#include <rtems/score/sysstate.h>                                     
#include <rtems/score/heap.h>                                         
                                                                      
bool _Heap_Free( Heap_Control *heap, void *alloc_begin_ptr )          
{                                                                     
  Heap_Statistics *const stats = &heap->stats;                        
   4bf8a:	b0a9 003c      	cmpl %a1@(60),%d0                           
   4bf8e:	6300 ff72      	blsw 4bf02 <_Heap_Free+0xae>                
  }                                                                   
                                                                      
  /* Statistics */                                                    
  --stats->used_blocks;                                               
  ++stats->frees;                                                     
  stats->free_size += block_size;                                     
   4bf92:	d5a9 0030      	addl %d2,%a1@(48)                           
      stats->max_free_blocks = stats->free_blocks;                    
    }                                                                 
  }                                                                   
                                                                      
  /* Statistics */                                                    
  --stats->used_blocks;                                               
   4bf96:	53a9 0040      	subql #1,%a1@(64)                           
  ++stats->frees;                                                     
   4bf9a:	52a9 0050      	addql #1,%a1@(80)                           
    next_block->prev_size = block_size;                               
                                                                      
    /* Statistics */                                                  
    ++stats->free_blocks;                                             
    if ( stats->max_free_blocks < stats->free_blocks ) {              
      stats->max_free_blocks = stats->free_blocks;                    
   4bf9e:	2340 003c      	movel %d0,%a1@(60)                          
  }                                                                   
                                                                      
  /* Statistics */                                                    
  --stats->used_blocks;                                               
  ++stats->frees;                                                     
  stats->free_size += block_size;                                     
   4bfa2:	7001           	moveq #1,%d0                                
   4bfa4:	6000 ff6a      	braw 4bf10 <_Heap_Free+0xbc>                
    _HAssert( false );                                                
    return false;                                                     
  }                                                                   
                                                                      
  next_block_size = _Heap_Block_size( next_block );                   
  next_is_free = next_block != heap->last_block                       
   4bfa8:	4205           	clrb %d5                                    
   4bfaa:	6000 ff0e      	braw 4beba <_Heap_Free+0x66>                
      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;                                   
    } else {                      /* coalesce prev */                 
      uintptr_t const size = block_size + prev_size;                  
   4bfae:	d682           	addl %d2,%d3                                
      prev_block->size_and_flag = size | HEAP_PREV_BLOCK_USED;        
   4bfb0:	7a01           	moveq #1,%d5                                
      next_block->size_and_flag &= ~HEAP_PREV_BLOCK_USED;             
   4bfb2:	7cfe           	moveq #-2,%d6                               
      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;        
   4bfb4:	8a83           	orl %d3,%d5                                 
      next_block->size_and_flag &= ~HEAP_PREV_BLOCK_USED;             
      next_block->prev_size = size;                                   
   4bfb6:	2483           	movel %d3,%a2@                              
  }                                                                   
                                                                      
  /* Statistics */                                                    
  --stats->used_blocks;                                               
  ++stats->frees;                                                     
  stats->free_size += block_size;                                     
   4bfb8:	7001           	moveq #1,%d0                                
      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;        
   4bfba:	2145 0004      	movel %d5,%a0@(4)                           
      next_block->size_and_flag &= ~HEAP_PREV_BLOCK_USED;             
   4bfbe:	cdaa 0004      	andl %d6,%a2@(4)                            
  }                                                                   
                                                                      
  /* Statistics */                                                    
  --stats->used_blocks;                                               
  ++stats->frees;                                                     
  stats->free_size += block_size;                                     
   4bfc2:	d5a9 0030      	addl %d2,%a1@(48)                           
      stats->max_free_blocks = stats->free_blocks;                    
    }                                                                 
  }                                                                   
                                                                      
  /* Statistics */                                                    
  --stats->used_blocks;                                               
   4bfc6:	53a9 0040      	subql #1,%a1@(64)                           
  ++stats->frees;                                                     
   4bfca:	52a9 0050      	addql #1,%a1@(80)                           
   4bfce:	6000 ff40      	braw 4bf10 <_Heap_Free+0xbc>                
	...                                                                  
                                                                      
0007bf88 <_Heap_Get_information>:                                     
                                                                      
void _Heap_Get_information(                                           
  Heap_Control            *the_heap,                                  
  Heap_Information_block  *the_info                                   
)                                                                     
{                                                                     
   7bf88:	4e56 fff4      	linkw %fp,#-12                              
   7bf8c:	206e 0008      	moveal %fp@(8),%a0                          
   7bf90:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
   7bf94:	246e 000c      	moveal %fp@(12),%a2                         
  Heap_Block *the_block = the_heap->first_block;                      
  Heap_Block *const end = the_heap->last_block;                       
   7bf98:	2428 0024      	movel %a0@(36),%d2                          
void _Heap_Get_information(                                           
  Heap_Control            *the_heap,                                  
  Heap_Information_block  *the_info                                   
)                                                                     
{                                                                     
  Heap_Block *the_block = the_heap->first_block;                      
   7bf9c:	2268 0020      	moveal %a0@(32),%a1                         
  Heap_Block *const end = the_heap->last_block;                       
                                                                      
  _HAssert(the_block->prev_size == the_heap->page_size);              
  _HAssert(_Heap_Is_prev_used(the_block));                            
                                                                      
  the_info->Free.number  = 0;                                         
   7bfa0:	4292           	clrl %a2@                                   
  the_info->Free.total   = 0;                                         
   7bfa2:	42aa 0008      	clrl %a2@(8)                                
  the_info->Free.largest = 0;                                         
   7bfa6:	42aa 0004      	clrl %a2@(4)                                
  the_info->Used.number  = 0;                                         
   7bfaa:	42aa 000c      	clrl %a2@(12)                               
  the_info->Used.total   = 0;                                         
   7bfae:	42aa 0014      	clrl %a2@(20)                               
  the_info->Used.largest = 0;                                         
   7bfb2:	42aa 0010      	clrl %a2@(16)                               
                                                                      
  while ( the_block != end ) {                                        
   7bfb6:	b489           	cmpl %a1,%d2                                
   7bfb8:	6746           	beqs 7c000 <_Heap_Get_information+0x78>     
    uintptr_t const     the_size = _Heap_Block_size(the_block);       
    Heap_Block *const  next_block = _Heap_Block_at(the_block, the_size);
    Heap_Information  *info;                                          
                                                                      
    if ( _Heap_Is_prev_used(next_block) )                             
      info = &the_info->Used;                                         
   7bfba:	260a           	movel %a2,%d3                               
   7bfbc:	0683 0000 000c 	addil #12,%d3                               
  the_info->Free.largest = 0;                                         
  the_info->Used.number  = 0;                                         
  the_info->Used.total   = 0;                                         
  the_info->Used.largest = 0;                                         
                                                                      
  while ( the_block != end ) {                                        
   7bfc2:	2229 0004      	movel %a1@(4),%d1                           
    - 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;                
   7bfc6:	70fe           	moveq #-2,%d0                               
    uintptr_t const     the_size = _Heap_Block_size(the_block);       
    Heap_Block *const  next_block = _Heap_Block_at(the_block, the_size);
    Heap_Information  *info;                                          
                                                                      
    if ( _Heap_Is_prev_used(next_block) )                             
   7bfc8:	204a           	moveal %a2,%a0                              
   7bfca:	c081           	andl %d1,%d0                                
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(                      
  const Heap_Block *block,                                            
  uintptr_t offset                                                    
)                                                                     
{                                                                     
  return (Heap_Block *) ((uintptr_t) block + offset);                 
   7bfcc:	d3c0           	addal %d0,%a1                               
  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;                 
   7bfce:	2229 0004      	movel %a1@(4),%d1                           
   7bfd2:	0801 0000      	btst #0,%d1                                 
   7bfd6:	6702           	beqs 7bfda <_Heap_Get_information+0x52>     
   7bfd8:	2043           	moveal %d3,%a0                              
      info = &the_info->Used;                                         
    else                                                              
      info = &the_info->Free;                                         
                                                                      
    info->number++;                                                   
   7bfda:	5290           	addql #1,%a0@                               
    info->total += the_size;                                          
   7bfdc:	d1a8 0008      	addl %d0,%a0@(8)                            
    if ( info->largest < the_size )                                   
   7bfe0:	b0a8 0004      	cmpl %a0@(4),%d0                            
   7bfe4:	6304           	blss 7bfea <_Heap_Get_information+0x62>     
      info->largest = the_size;                                       
   7bfe6:	2140 0004      	movel %d0,%a0@(4)                           
  the_info->Free.largest = 0;                                         
  the_info->Used.number  = 0;                                         
  the_info->Used.total   = 0;                                         
  the_info->Used.largest = 0;                                         
                                                                      
  while ( the_block != end ) {                                        
   7bfea:	b3c2           	cmpal %d2,%a1                               
   7bfec:	66d8           	bnes 7bfc6 <_Heap_Get_information+0x3e>     
   7bfee:	202a 0014      	movel %a2@(20),%d0                          
   7bff2:	5080           	addql #8,%d0                                
  /*                                                                  
   *  Handle the last dummy block. Don't consider this block to be    
   *  "used" as client never allocated it. Make 'Used.total' contain this
   *  blocks' overhead though.                                        
   */                                                                 
  the_info->Used.total += HEAP_BLOCK_HEADER_SIZE;                     
   7bff4:	2540 0014      	movel %d0,%a2@(20)                          
}                                                                     
   7bff8:	4cd7 040c      	moveml %sp@,%d2-%d3/%a2                     
   7bffc:	4e5e           	unlk %fp                                    
   7bffe:	4e75           	rts                                         
  the_info->Free.largest = 0;                                         
  the_info->Used.number  = 0;                                         
  the_info->Used.total   = 0;                                         
  the_info->Used.largest = 0;                                         
                                                                      
  while ( the_block != end ) {                                        
   7c000:	7008           	moveq #8,%d0                                <== NOT EXECUTED
  /*                                                                  
   *  Handle the last dummy block. Don't consider this block to be    
   *  "used" as client never allocated it. Make 'Used.total' contain this
   *  blocks' overhead though.                                        
   */                                                                 
  the_info->Used.total += HEAP_BLOCK_HEADER_SIZE;                     
   7c002:	2540 0014      	movel %d0,%a2@(20)                          <== NOT EXECUTED
}                                                                     
   7c006:	4cd7 040c      	moveml %sp@,%d2-%d3/%a2                     <== NOT EXECUTED
   7c00a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
000464a6 <_IO_Manager_initialization>:                                
 *  workspace.                                                        
 *                                                                    
 */                                                                   
                                                                      
void _IO_Manager_initialization(void)                                 
{                                                                     
   464a6:	4e56 fff0      	linkw %fp,#-16                              
   464aa:	48d7 003c      	moveml %d2-%d5,%sp@                         
  uint32_t                    index;                                  
  rtems_driver_address_table *driver_table;                           
  uint32_t                    drivers_in_table;                       
  uint32_t                    number_of_drivers;                      
                                                                      
  driver_table      = Configuration.Device_driver_table;              
   464ae:	2639 0005 d7f6 	movel 5d7f6 <Configuration+0x32>,%d3        
  drivers_in_table  = Configuration.number_of_device_drivers;         
   464b4:	2439 0005 d7f2 	movel 5d7f2 <Configuration+0x2e>,%d2        
  number_of_drivers = Configuration.maximum_drivers;                  
   464ba:	2839 0005 d7ee 	movel 5d7ee <Configuration+0x2a>,%d4        
                                                                      
  /*                                                                  
   *  If the user claims there are less drivers than are actually in  
   *  the table, then let's just go with the table's count.           
   */                                                                 
  if ( number_of_drivers <= drivers_in_table )                        
   464c0:	b882           	cmpl %d2,%d4                                
   464c2:	6216           	bhis 464da <_IO_Manager_initialization+0x34>
   *  If the maximum number of driver is the same as the number in the
   *  table, then we do not have to copy the driver table.  They can't
   *  register any dynamically.                                       
   */                                                                 
  if ( number_of_drivers == drivers_in_table ) {                      
    _IO_Driver_address_table = driver_table;                          
   464c4:	23c3 0005 f808 	movel %d3,5f808 <_IO_Driver_address_table>  
    _IO_Number_of_drivers = number_of_drivers;                        
   464ca:	23c2 0005 f804 	movel %d2,5f804 <_IO_Number_of_drivers>     
  );                                                                  
                                                                      
  for ( index = 0 ; index < drivers_in_table ; index++ )              
    _IO_Driver_address_table[index] = driver_table[index];            
  number_of_drivers = drivers_in_table;                               
}                                                                     
   464d0:	4cee 003c fff0 	moveml %fp@(-16),%d2-%d5                    
   464d6:	4e5e           	unlk %fp                                    
   464d8:	4e75           	rts                                         
  /*                                                                  
   *  The application requested extra slots in the driver table, so we
   *  have to allocate a new driver table and copy theirs to it.      
   */                                                                 
                                                                      
  _IO_Driver_address_table = (rtems_driver_address_table *)           
   464da:	2004           	movel %d4,%d0                               
   464dc:	2a04           	movel %d4,%d5                               
   464de:	e788           	lsll #3,%d0                                 
   464e0:	eb8d           	lsll #5,%d5                                 
   464e2:	9a80           	subl %d0,%d5                                
   464e4:	2f05           	movel %d5,%sp@-                             
   464e6:	4eb9 0004 91c0 	jsr 491c0 <_Workspace_Allocate_or_fatal_error>
      _Workspace_Allocate_or_fatal_error(                             
        sizeof( rtems_driver_address_table ) * ( number_of_drivers )  
      );                                                              
  _IO_Number_of_drivers = number_of_drivers;                          
                                                                      
  memset(                                                             
   464ec:	2f05           	movel %d5,%sp@-                             
   464ee:	42a7           	clrl %sp@-                                  
                                                                      
  _IO_Driver_address_table = (rtems_driver_address_table *)           
      _Workspace_Allocate_or_fatal_error(                             
        sizeof( rtems_driver_address_table ) * ( number_of_drivers )  
      );                                                              
  _IO_Number_of_drivers = number_of_drivers;                          
   464f0:	23c4 0005 f804 	movel %d4,5f804 <_IO_Number_of_drivers>     
                                                                      
  memset(                                                             
   464f6:	2f00           	movel %d0,%sp@-                             
  /*                                                                  
   *  The application requested extra slots in the driver table, so we
   *  have to allocate a new driver table and copy theirs to it.      
   */                                                                 
                                                                      
  _IO_Driver_address_table = (rtems_driver_address_table *)           
   464f8:	23c0 0005 f808 	movel %d0,5f808 <_IO_Driver_address_table>  
      _Workspace_Allocate_or_fatal_error(                             
        sizeof( rtems_driver_address_table ) * ( number_of_drivers )  
      );                                                              
  _IO_Number_of_drivers = number_of_drivers;                          
                                                                      
  memset(                                                             
   464fe:	4eb9 0004 f484 	jsr 4f484 <memset>                          
    _IO_Driver_address_table, 0,                                      
    sizeof( rtems_driver_address_table ) * ( number_of_drivers )      
  );                                                                  
                                                                      
  for ( index = 0 ; index < drivers_in_table ; index++ )              
   46504:	4fef 0010      	lea %sp@(16),%sp                            
   46508:	4a82           	tstl %d2                                    
   4650a:	67c4           	beqs 464d0 <_IO_Manager_initialization+0x2a>
   4650c:	2839 0005 f808 	movel 5f808 <_IO_Driver_address_table>,%d4  
   46512:	4280           	clrl %d0                                    
   46514:	4281           	clrl %d1                                    
    _IO_Driver_address_table[index] = driver_table[index];            
   46516:	2243           	moveal %d3,%a1                              
   46518:	2044           	moveal %d4,%a0                              
   4651a:	d3c0           	addal %d0,%a1                               
   4651c:	d1c0           	addal %d0,%a0                               
  memset(                                                             
    _IO_Driver_address_table, 0,                                      
    sizeof( rtems_driver_address_table ) * ( number_of_drivers )      
  );                                                                  
                                                                      
  for ( index = 0 ; index < drivers_in_table ; index++ )              
   4651e:	5281           	addql #1,%d1                                
   46520:	0680 0000 0018 	addil #24,%d0                               
    _IO_Driver_address_table[index] = driver_table[index];            
   46526:	20d9           	movel %a1@+,%a0@+                           
   46528:	20d9           	movel %a1@+,%a0@+                           
   4652a:	20d9           	movel %a1@+,%a0@+                           
   4652c:	20d9           	movel %a1@+,%a0@+                           
   4652e:	20d9           	movel %a1@+,%a0@+                           
   46530:	2091           	movel %a1@,%a0@                             
  memset(                                                             
    _IO_Driver_address_table, 0,                                      
    sizeof( rtems_driver_address_table ) * ( number_of_drivers )      
  );                                                                  
                                                                      
  for ( index = 0 ; index < drivers_in_table ; index++ )              
   46532:	b282           	cmpl %d2,%d1                                
   46534:	649a           	bccs 464d0 <_IO_Manager_initialization+0x2a>
    _IO_Driver_address_table[index] = driver_table[index];            
   46536:	2243           	moveal %d3,%a1                              
   46538:	2044           	moveal %d4,%a0                              
   4653a:	d3c0           	addal %d0,%a1                               
   4653c:	d1c0           	addal %d0,%a0                               
  memset(                                                             
    _IO_Driver_address_table, 0,                                      
    sizeof( rtems_driver_address_table ) * ( number_of_drivers )      
  );                                                                  
                                                                      
  for ( index = 0 ; index < drivers_in_table ; index++ )              
   4653e:	5281           	addql #1,%d1                                
   46540:	0680 0000 0018 	addil #24,%d0                               
    _IO_Driver_address_table[index] = driver_table[index];            
   46546:	20d9           	movel %a1@+,%a0@+                           
   46548:	20d9           	movel %a1@+,%a0@+                           
   4654a:	20d9           	movel %a1@+,%a0@+                           
   4654c:	20d9           	movel %a1@+,%a0@+                           
   4654e:	20d9           	movel %a1@+,%a0@+                           
   46550:	2091           	movel %a1@,%a0@                             
  memset(                                                             
    _IO_Driver_address_table, 0,                                      
    sizeof( rtems_driver_address_table ) * ( number_of_drivers )      
  );                                                                  
                                                                      
  for ( index = 0 ; index < drivers_in_table ; index++ )              
   46552:	b282           	cmpl %d2,%d1                                
   46554:	65c0           	bcss 46516 <_IO_Manager_initialization+0x70>
   46556:	6000 ff78      	braw 464d0 <_IO_Manager_initialization+0x2a>
	...                                                                  
                                                                      
00046fcc <_Internal_error_Occurred>:                                  
                                                                      
  _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 );       
   46fcc:	4280           	clrl %d0                                    
void _Internal_error_Occurred(                                        
  Internal_errors_Source  the_source,                                 
  bool                    is_internal,                                
  Internal_errors_t       the_error                                   
)                                                                     
{                                                                     
   46fce:	4e56 0000      	linkw %fp,#0                                
   46fd2:	222e 000c      	movel %fp@(12),%d1                          
                                                                      
  _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 );       
   46fd6:	1001           	moveb %d1,%d0                               
   46fd8:	2040           	moveal %d0,%a0                              
void _Internal_error_Occurred(                                        
  Internal_errors_Source  the_source,                                 
  bool                    is_internal,                                
  Internal_errors_t       the_error                                   
)                                                                     
{                                                                     
   46fda:	2f03           	movel %d3,%sp@-                             
   46fdc:	202e 0008      	movel %fp@(8),%d0                           
   46fe0:	2f02           	movel %d2,%sp@-                             
   46fe2:	242e 0010      	movel %fp@(16),%d2                          
                                                                      
  _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 );       
   46fe6:	2f02           	movel %d2,%sp@-                             
  Internal_errors_t       the_error                                   
)                                                                     
{                                                                     
                                                                      
  _Internal_errors_What_happened.the_source  = the_source;            
  _Internal_errors_What_happened.is_internal = is_internal;           
   46fe8:	13c1 0005 f022 	moveb %d1,5f022 <_Internal_errors_What_happened+0x4>
  _Internal_errors_What_happened.the_error   = the_error;             
                                                                      
  _User_extensions_Fatal( the_source, is_internal, the_error );       
   46fee:	2f08           	movel %a0,%sp@-                             
  bool                    is_internal,                                
  Internal_errors_t       the_error                                   
)                                                                     
{                                                                     
                                                                      
  _Internal_errors_What_happened.the_source  = the_source;            
   46ff0:	23c0 0005 f01e 	movel %d0,5f01e <_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 );       
   46ff6:	2f00           	movel %d0,%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;             
   46ff8:	23c2 0005 f024 	movel %d2,5f024 <_Internal_errors_What_happened+0x6>
                                                                      
  _User_extensions_Fatal( the_source, is_internal, the_error );       
   46ffe:	4eb9 0004 8df2 	jsr 48df2 <_User_extensions_Fatal>          
                                                                      
  _System_state_Set( SYSTEM_STATE_FAILED );                           
                                                                      
  _CPU_Fatal_halt( the_error );                                       
   47004:	307c 0700      	moveaw #1792,%a0                            
   47008:	2608           	movel %a0,%d3                               
   4700a:	40c0           	movew %sr,%d0                               
   4700c:	8083           	orl %d3,%d0                                 
   4700e:	46c0           	movew %d0,%sr                               
   47010:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   47012:	223c dead beef 	movel #-559038737,%d1                       <== NOT EXECUTED
   47018:	4ac8           	halt                                        <== NOT EXECUTED
                                                                      
RTEMS_INLINE_ROUTINE void _System_state_Set (                         
  System_state_Codes state                                            
)                                                                     
{                                                                     
  _System_state_Current = state;                                      
   4701a:	7005           	moveq #5,%d0                                
   4701c:	4fef 000c      	lea %sp@(12),%sp                            
   47020:	23c0 0005 f100 	movel %d0,5f100 <_System_state_Current>     
   47026:	60fe           	bras 47026 <_Internal_error_Occurred+0x5a>  
                                                                      
00047090 <_Objects_Allocate>:                                         
 */                                                                   
                                                                      
Objects_Control *_Objects_Allocate(                                   
  Objects_Information *information                                    
)                                                                     
{                                                                     
   47090:	4e56 fff0      	linkw %fp,#-16                              
   47094:	48d7 0c0c      	moveml %d2-%d3/%a2-%a3,%sp@                 
   47098:	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 )                                       
   4709c:	4aaa 0014      	tstl %a2@(20)                               
   470a0:	660c           	bnes 470ae <_Objects_Allocate+0x1e>         
   470a2:	4280           	clrl %d0                                    <== NOT EXECUTED
      information->inactive--;                                        
    }                                                                 
  }                                                                   
                                                                      
  return the_object;                                                  
}                                                                     
   470a4:	4cee 0c0c fff0 	moveml %fp@(-16),%d2-%d3/%a2-%a3            
   470aa:	4e5e           	unlk %fp                                    
   470ac:	4e75           	rts                                         
                                                                      
  /*                                                                  
   *  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 );
   470ae:	240a           	movel %a2,%d2                               
   470b0:	0682 0000 001c 	addil #28,%d2                               
   470b6:	47f9 0004 b9c0 	lea 4b9c0 <_Chain_Get>,%a3                  
   470bc:	2f02           	movel %d2,%sp@-                             
   470be:	4e93           	jsr %a3@                                    
                                                                      
  if ( information->auto_extend ) {                                   
   470c0:	588f           	addql #4,%sp                                
   470c2:	4a2a 0010      	tstb %a2@(16)                               
   470c6:	67dc           	beqs 470a4 <_Objects_Allocate+0x14>         
    /*                                                                
     *  If the list is empty then we are out of objects and need to   
     *  extend information base.                                      
     */                                                               
                                                                      
    if ( !the_object ) {                                              
   470c8:	4a80           	tstl %d0                                    
   470ca:	6738           	beqs 47104 <_Objects_Allocate+0x74>         
    }                                                                 
                                                                      
    if ( the_object ) {                                               
      uint32_t   block;                                               
                                                                      
      block = (uint32_t) _Objects_Get_index( the_object->id ) -       
   470cc:	2040           	moveal %d0,%a0                              
   470ce:	4281           	clrl %d1                                    
   470d0:	4283           	clrl %d3                                    
              _Objects_Get_index( information->minimum_id );          
      block /= information->allocation_size;                          
                                                                      
      information->inactive_per_block[ block ]--;                     
   470d2:	4282           	clrl %d2                                    
    }                                                                 
                                                                      
    if ( the_object ) {                                               
      uint32_t   block;                                               
                                                                      
      block = (uint32_t) _Objects_Get_index( the_object->id ) -       
   470d4:	362a 0008      	movew %a2@(8),%d3                           
   470d8:	3228 000a      	movew %a0@(10),%d1                          
              _Objects_Get_index( information->minimum_id );          
      block /= information->allocation_size;                          
                                                                      
      information->inactive_per_block[ block ]--;                     
      information->inactive--;                                        
   470dc:	306a 0028      	moveaw %a2@(40),%a0                         
                                                                      
      block = (uint32_t) _Objects_Get_index( the_object->id ) -       
              _Objects_Get_index( information->minimum_id );          
      block /= information->allocation_size;                          
                                                                      
      information->inactive_per_block[ block ]--;                     
   470e0:	342a 0012      	movew %a2@(18),%d2                          
    }                                                                 
                                                                      
    if ( the_object ) {                                               
      uint32_t   block;                                               
                                                                      
      block = (uint32_t) _Objects_Get_index( the_object->id ) -       
   470e4:	9283           	subl %d3,%d1                                
              _Objects_Get_index( information->minimum_id );          
      block /= information->allocation_size;                          
                                                                      
      information->inactive_per_block[ block ]--;                     
      information->inactive--;                                        
   470e6:	5388           	subql #1,%a0                                
                                                                      
      block = (uint32_t) _Objects_Get_index( the_object->id ) -       
              _Objects_Get_index( information->minimum_id );          
      block /= information->allocation_size;                          
                                                                      
      information->inactive_per_block[ block ]--;                     
   470e8:	4c42 1001      	remul %d2,%d1,%d1                           
      information->inactive--;                                        
   470ec:	3548 0028      	movew %a0,%a2@(40)                          
                                                                      
      block = (uint32_t) _Objects_Get_index( the_object->id ) -       
              _Objects_Get_index( information->minimum_id );          
      block /= information->allocation_size;                          
                                                                      
      information->inactive_per_block[ block ]--;                     
   470f0:	206a 002a      	moveal %a2@(42),%a0                         
   470f4:	e589           	lsll #2,%d1                                 
      information->inactive--;                                        
    }                                                                 
  }                                                                   
                                                                      
  return the_object;                                                  
}                                                                     
   470f6:	4cee 0c0c fff0 	moveml %fp@(-16),%d2-%d3/%a2-%a3            
   470fc:	4e5e           	unlk %fp                                    
                                                                      
      block = (uint32_t) _Objects_Get_index( the_object->id ) -       
              _Objects_Get_index( information->minimum_id );          
      block /= information->allocation_size;                          
                                                                      
      information->inactive_per_block[ block ]--;                     
   470fe:	d1c1           	addal %d1,%a0                               
   47100:	5390           	subql #1,%a0@                               
      information->inactive--;                                        
    }                                                                 
  }                                                                   
                                                                      
  return the_object;                                                  
}                                                                     
   47102:	4e75           	rts                                         
     *  If the list is empty then we are out of objects and need to   
     *  extend information base.                                      
     */                                                               
                                                                      
    if ( !the_object ) {                                              
      _Objects_Extend_information( information );                     
   47104:	2f0a           	movel %a2,%sp@-                             
   47106:	4eb9 0004 714c 	jsr 4714c <_Objects_Extend_information>     
      the_object =  (Objects_Control *) _Chain_Get( &information->Inactive );
   4710c:	2f02           	movel %d2,%sp@-                             
   4710e:	4e93           	jsr %a3@                                    
    }                                                                 
                                                                      
    if ( the_object ) {                                               
   47110:	508f           	addql #8,%sp                                
   47112:	4a80           	tstl %d0                                    
   47114:	66b6           	bnes 470cc <_Objects_Allocate+0x3c>         
      information->inactive--;                                        
    }                                                                 
  }                                                                   
                                                                      
  return the_object;                                                  
}                                                                     
   47116:	4cee 0c0c fff0 	moveml %fp@(-16),%d2-%d3/%a2-%a3            
   4711c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00047120 <_Objects_Close>:                                            
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   47120:	4280           	clrl %d0                                    
                                                                      
void _Objects_Close(                                                  
  Objects_Information  *information,                                  
  Objects_Control      *the_object                                    
)                                                                     
{                                                                     
   47122:	4e56 0000      	linkw %fp,#0                                
   47126:	226e 000c      	moveal %fp@(12),%a1                         
   4712a:	206e 0008      	moveal %fp@(8),%a0                          
   4712e:	2f0a           	movel %a2,%sp@-                             
   47130:	2468 0018      	moveal %a0@(24),%a2                         
   47134:	3029 000a      	movew %a1@(10),%d0                          
   47138:	42b2 0c00      	clrl %a2@(00000000,%d0:l:4)                 
  _Objects_Invalidate_Id( information, the_object );                  
                                                                      
  _Objects_Namespace_remove( information, the_object );               
   4713c:	2d49 000c      	movel %a1,%fp@(12)                          
}                                                                     
   47140:	245f           	moveal %sp@+,%a2                            
   47142:	4e5e           	unlk %fp                                    
  Objects_Control      *the_object                                    
)                                                                     
{                                                                     
  _Objects_Invalidate_Id( information, the_object );                  
                                                                      
  _Objects_Namespace_remove( information, the_object );               
   47144:	4ef9 0004 76a8 	jmp 476a8 <_Objects_Namespace_remove>       
	...                                                                  
                                                                      
0004714c <_Objects_Extend_information>:                               
 */                                                                   
                                                                      
void _Objects_Extend_information(                                     
  Objects_Information *information                                    
)                                                                     
{                                                                     
   4714c:	4e56 ffcc      	linkw %fp,#-52                              
   47150:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 
   47154:	246e 0008      	moveal %fp@(8),%a2                          
                                                                      
  /*                                                                  
   *  Search for a free block of indexes. The block variable ends up set
   *  to block_count + 1 if the table needs to be extended.           
   */                                                                 
  minimum_index = _Objects_Get_index( information->minimum_id );      
   47158:	4285           	clrl %d5                                    
  index_base    = minimum_index;                                      
  block         = 0;                                                  
                                                                      
  /* if ( information->maximum < minimum_index ) */                   
  if ( information->object_blocks == NULL )                           
   4715a:	206a 002e      	moveal %a2@(46),%a0                         
                                                                      
  /*                                                                  
   *  Search for a free block of indexes. The block variable ends up set
   *  to block_count + 1 if the table needs to be extended.           
   */                                                                 
  minimum_index = _Objects_Get_index( information->minimum_id );      
   4715e:	3a2a 0008      	movew %a2@(8),%d5                           
  index_base    = minimum_index;                                      
  block         = 0;                                                  
                                                                      
  /* if ( information->maximum < minimum_index ) */                   
  if ( information->object_blocks == NULL )                           
   47162:	4a88           	tstl %a0                                    
   47164:	6700 022c      	beqw 47392 <_Objects_Extend_information+0x246>
    block_count = 0;                                                  
  else {                                                              
    block_count = information->maximum / information->allocation_size;
   47168:	322a 000e      	movew %a2@(14),%d1                          
   4716c:	302a 0012      	movew %a2@(18),%d0                          
   47170:	3801           	movew %d1,%d4                               
   47172:	0284 0000 ffff 	andil #65535,%d4                            
   47178:	88c0           	divuw %d0,%d4                               
   4717a:	0284 0000 ffff 	andil #65535,%d4                            
                                                                      
    for ( ; block < block_count; block++ ) {                          
   47180:	6700 0224      	beqw 473a6 <_Objects_Extend_information+0x25a>
      if ( information->object_blocks[ block ] == NULL )              
   47184:	4a90           	tstl %a0@                                   
   47186:	6700 021e      	beqw 473a6 <_Objects_Extend_information+0x25a>
   4718a:	5888           	addql #4,%a0                                
   4718c:	2605           	movel %d5,%d3                               
   4718e:	4282           	clrl %d2                                    
   47190:	0280 0000 ffff 	andil #65535,%d0                            
        break;                                                        
      else                                                            
        index_base += information->allocation_size;                   
   47196:	d680           	addl %d0,%d3                                
  if ( information->object_blocks == NULL )                           
    block_count = 0;                                                  
  else {                                                              
    block_count = information->maximum / information->allocation_size;
                                                                      
    for ( ; block < block_count; block++ ) {                          
   47198:	5282           	addql #1,%d2                                
   4719a:	b484           	cmpl %d4,%d2                                
   4719c:	6404           	bccs 471a2 <_Objects_Extend_information+0x56>
      if ( information->object_blocks[ block ] == NULL )              
   4719e:	4a98           	tstl %a0@+                                  
   471a0:	66f4           	bnes 47196 <_Objects_Extend_information+0x4a>
      else                                                            
        index_base += information->allocation_size;                   
    }                                                                 
  }                                                                   
                                                                      
  maximum = (uint32_t) information->maximum + information->allocation_size;
   471a2:	0281 0000 ffff 	andil #65535,%d1                            
   471a8:	2641           	moveal %d1,%a3                              
   471aa:	d7c0           	addal %d0,%a3                               
  /*                                                                  
   *  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 ) {                           
   471ac:	b7fc 0000 ffff 	cmpal #65535,%a3                            
   471b2:	6200 0186      	bhiw 4733a <_Objects_Extend_information+0x1ee>
                                                                      
  /*                                                                  
   * 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;      
   471b6:	41ea 0014      	lea %a2@(20),%a0                            
   471ba:	4c10 0800      	mulsl %a0@,%d0                              
  if ( information->auto_extend ) {                                   
   471be:	4a2a 0010      	tstb %a2@(16)                               
   471c2:	6700 0180      	beqw 47344 <_Objects_Extend_information+0x1f8>
    new_object_block = _Workspace_Allocate( block_size );             
   471c6:	2f00           	movel %d0,%sp@-                             
   471c8:	4eb9 0004 91f4 	jsr 491f4 <_Workspace_Allocate>             
    if ( !new_object_block )                                          
   471ce:	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 );             
   471d0:	2c00           	movel %d0,%d6                               
    if ( !new_object_block )                                          
   471d2:	6700 0166      	beqw 4733a <_Objects_Extend_information+0x1ee>
  }                                                                   
                                                                      
  /*                                                                  
   *  If the index_base is the maximum we need to grow the tables.    
   */                                                                 
  if (index_base >= information->maximum ) {                          
   471d6:	4280           	clrl %d0                                    
   471d8:	302a 000e      	movew %a2@(14),%d0                          
   471dc:	b083           	cmpl %d3,%d0                                
   471de:	6200 00c4      	bhiw 472a4 <_Objects_Extend_information+0x158>
     */                                                               
                                                                      
    /*                                                                
     *  Up the block count and maximum                                
     */                                                               
    block_count++;                                                    
   471e2:	2a44           	moveal %d4,%a5                              
   471e4:	528d           	addql #1,%a5                                
     *  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 );       
   471e6:	200b           	movel %a3,%d0                               
   471e8:	41f5 da00      	lea %a5@(00000000,%a5:l:2),%a0              
   471ec:	d088           	addl %a0,%d0                                
   471ee:	d085           	addl %d5,%d0                                
   471f0:	e588           	lsll #2,%d0                                 
   471f2:	2f00           	movel %d0,%sp@-                             
   471f4:	4eb9 0004 91f4 	jsr 491f4 <_Workspace_Allocate>             
                                                                      
    if ( !object_blocks ) {                                           
   471fa:	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 );       
   471fc:	2840           	moveal %d0,%a4                              
                                                                      
    if ( !object_blocks ) {                                           
   471fe:	4a80           	tstl %d0                                    
   47200:	6700 01b2      	beqw 473b4 <_Objects_Extend_information+0x268>
    }                                                                 
                                                                      
    /*                                                                
     *  Break the block into the various sections.                    
     */                                                               
    inactive_per_block = (uint32_t *) _Addresses_Add_offset(          
   47204:	2e0d           	movel %a5,%d7                               
     *  Take the block count down. Saves all the (block_count - 1)    
     *  in the copies.                                                
     */                                                               
    block_count--;                                                    
                                                                      
    if ( information->maximum > minimum_index ) {                     
   47206:	4280           	clrl %d0                                    
    }                                                                 
                                                                      
    /*                                                                
     *  Break the block into the various sections.                    
     */                                                               
    inactive_per_block = (uint32_t *) _Addresses_Add_offset(          
   47208:	e58f           	lsll #2,%d7                                 
     *  Take the block count down. Saves all the (block_count - 1)    
     *  in the copies.                                                
     */                                                               
    block_count--;                                                    
                                                                      
    if ( information->maximum > minimum_index ) {                     
   4720a:	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);                          
   4720e:	4bf4 7800      	lea %a4@(00000000,%d7:l),%a5                
   47212:	de8d           	addl %a5,%d7                                
   47214:	b085           	cmpl %d5,%d0                                
   47216:	6200 013c      	bhiw 47354 <_Objects_Extend_information+0x208>
    } else {                                                          
                                                                      
      /*                                                              
       *  Deal with the special case of the 0 to minimum_index        
       */                                                             
      for ( index = 0; index < minimum_index; index++ ) {             
   4721a:	4a85           	tstl %d5                                    
   4721c:	670c           	beqs 4722a <_Objects_Extend_information+0xde>
              information->object_blocks,                             
              block_count * sizeof(void*) );                          
      memcpy( inactive_per_block,                                     
              information->inactive_per_block,                        
              block_count * sizeof(uint32_t) );                       
      memcpy( local_table,                                            
   4721e:	2047           	moveal %d7,%a0                              
   47220:	4280           	clrl %d0                                    
                                                                      
      /*                                                              
       *  Deal with the special case of the 0 to minimum_index        
       */                                                             
      for ( index = 0; index < minimum_index; index++ ) {             
        local_table[ index ] = NULL;                                  
   47222:	4298           	clrl %a0@+                                  
    } else {                                                          
                                                                      
      /*                                                              
       *  Deal with the special case of the 0 to minimum_index        
       */                                                             
      for ( index = 0; index < minimum_index; index++ ) {             
   47224:	5280           	addql #1,%d0                                
   47226:	b085           	cmpl %d5,%d0                                
   47228:	65f8           	bcss 47222 <_Objects_Extend_information+0xd6>
   4722a:	e58c           	lsll #2,%d4                                 
     */                                                               
    object_blocks[block_count] = NULL;                                
    inactive_per_block[block_count] = 0;                              
                                                                      
    for ( index=index_base ;                                          
          index < ( information->allocation_size + index_base );      
   4722c:	4281           	clrl %d1                                    
   4722e:	322a 0012      	movew %a2@(18),%d1                          
                                                                      
    /*                                                                
     *  Initialise the new entries in the table.                      
     */                                                               
    object_blocks[block_count] = NULL;                                
    inactive_per_block[block_count] = 0;                              
   47232:	42b5 4800      	clrl %a5@(00000000,%d4:l)                   
                                                                      
    for ( index=index_base ;                                          
          index < ( information->allocation_size + index_base );      
   47236:	d283           	addl %d3,%d1                                
    }                                                                 
                                                                      
    /*                                                                
     *  Initialise the new entries in the table.                      
     */                                                               
    object_blocks[block_count] = NULL;                                
   47238:	42b4 4800      	clrl %a4@(00000000,%d4:l)                   
    inactive_per_block[block_count] = 0;                              
                                                                      
    for ( index=index_base ;                                          
   4723c:	b283           	cmpl %d3,%d1                                
   4723e:	6310           	blss 47250 <_Objects_Extend_information+0x104>
   47240:	2247           	moveal %d7,%a1                              
   47242:	2003           	movel %d3,%d0                               
   47244:	41f1 3c00      	lea %a1@(00000000,%d3:l:4),%a0              
          index < ( information->allocation_size + index_base );      
          index++ ) {                                                 
      local_table[ index ] = NULL;                                    
   47248:	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++ ) {                                                 
   4724a:	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 ;                                          
   4724c:	b280           	cmpl %d0,%d1                                
   4724e:	62f8           	bhis 47248 <_Objects_Extend_information+0xfc>
          index < ( information->allocation_size + index_base );      
          index++ ) {                                                 
      local_table[ index ] = NULL;                                    
    }                                                                 
                                                                      
    _ISR_Disable( level );                                            
   47250:	203c 0000 0700 	movel #1792,%d0                             
   47256:	40c4           	movew %sr,%d4                               
   47258:	8084           	orl %d4,%d0                                 
   4725a:	46c0           	movew %d0,%sr                               
                                                                      
    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(                      
   4725c:	2012           	movel %a2@,%d0                              
   4725e:	7218           	moveq #24,%d1                               
   47260:	4285           	clrl %d5                                    
   47262:	e3a8           	lsll %d1,%d0                                
   47264:	3a0b           	movew %a3,%d5                               
   47266:	4281           	clrl %d1                                    
   47268:	2245           	moveal %d5,%a1                              
   4726a:	7a1b           	moveq #27,%d5                               
   4726c:	322a 0004      	movew %a2@(4),%d1                           
   47270:	08c0 0010      	bset #16,%d0                                
      local_table[ index ] = NULL;                                    
    }                                                                 
                                                                      
    _ISR_Disable( level );                                            
                                                                      
    old_tables = information->object_blocks;                          
   47274:	206a 002e      	moveal %a2@(46),%a0                         
                                                                      
    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(                      
   47278:	eba9           	lsll %d5,%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;                 
   4727a:	354b 000e      	movew %a3,%a2@(14)                          
                                                                      
    _ISR_Disable( level );                                            
                                                                      
    old_tables = information->object_blocks;                          
                                                                      
    information->object_blocks = object_blocks;                       
   4727e:	254c 002e      	movel %a4,%a2@(46)                          
    information->inactive_per_block = inactive_per_block;             
    information->local_table = local_table;                           
    information->maximum = (Objects_Maximum) maximum;                 
    information->maximum_id = _Objects_Build_id(                      
   47282:	8081           	orl %d1,%d0                                 
   47284:	2209           	movel %a1,%d1                               
   47286:	8280           	orl %d0,%d1                                 
    _ISR_Disable( level );                                            
                                                                      
    old_tables = information->object_blocks;                          
                                                                      
    information->object_blocks = object_blocks;                       
    information->inactive_per_block = inactive_per_block;             
   47288:	254d 002a      	movel %a5,%a2@(42)                          
    information->local_table = local_table;                           
    information->maximum = (Objects_Maximum) maximum;                 
    information->maximum_id = _Objects_Build_id(                      
   4728c:	2541 000a      	movel %d1,%a2@(10)                          
                                                                      
    old_tables = information->object_blocks;                          
                                                                      
    information->object_blocks = object_blocks;                       
    information->inactive_per_block = inactive_per_block;             
    information->local_table = local_table;                           
   47290:	2547 0018      	movel %d7,%a2@(24)                          
        information->the_class,                                       
        _Objects_Local_node,                                          
        information->maximum                                          
      );                                                              
                                                                      
    _ISR_Enable( level );                                             
   47294:	46c4           	movew %d4,%sr                               
                                                                      
    if ( old_tables )                                                 
   47296:	4a88           	tstl %a0                                    
   47298:	670a           	beqs 472a4 <_Objects_Extend_information+0x158>
      _Workspace_Free( old_tables );                                  
   4729a:	2f08           	movel %a0,%sp@-                             
   4729c:	4eb9 0004 9210 	jsr 49210 <_Workspace_Free>                 
   472a2:	588f           	addql #4,%sp                                
  }                                                                   
                                                                      
  /*                                                                  
   *  Assign the new object block to the object block table.          
   */                                                                 
  information->object_blocks[ block ] = new_object_block;             
   472a4:	206a 002e      	moveal %a2@(46),%a0                         
                                                                      
  /*                                                                  
   *  Initialize objects .. add to a local chain first.               
   */                                                                 
  _Chain_Initialize(                                                  
   472a8:	4280           	clrl %d0                                    
   472aa:	280e           	movel %fp,%d4                               
   472ac:	0684 ffff fff4 	addil #-12,%d4                              
   472b2:	47f9 0004 b9c0 	lea 4b9c0 <_Chain_Get>,%a3                  
        information->the_class,                                       
        _Objects_Local_node,                                          
        index                                                         
      );                                                              
                                                                      
    _Chain_Append( &information->Inactive, &the_object->Node );       
   472b8:	2a0a           	movel %a2,%d5                               
   472ba:	0685 0000 001c 	addil #28,%d5                               
   472c0:	49f9 0004 6798 	lea 46798 <_Chain_Append>,%a4               
  }                                                                   
                                                                      
  /*                                                                  
   *  Assign the new object block to the object block table.          
   */                                                                 
  information->object_blocks[ block ] = new_object_block;             
   472c6:	e58a           	lsll #2,%d2                                 
                                                                      
  /*                                                                  
   *  Initialize objects .. add to a local chain first.               
   */                                                                 
  _Chain_Initialize(                                                  
   472c8:	302a 0012      	movew %a2@(18),%d0                          
  }                                                                   
                                                                      
  /*                                                                  
   *  Assign the new object block to the object block table.          
   */                                                                 
  information->object_blocks[ block ] = new_object_block;             
   472cc:	2186 2800      	movel %d6,%a0@(00000000,%d2:l)              
                                                                      
  /*                                                                  
   *  Initialize objects .. add to a local chain first.               
   */                                                                 
  _Chain_Initialize(                                                  
   472d0:	2f2a 0014      	movel %a2@(20),%sp@-                        
   472d4:	2f00           	movel %d0,%sp@-                             
   472d6:	2f06           	movel %d6,%sp@-                             
   472d8:	2f04           	movel %d4,%sp@-                             
   472da:	4eb9 0004 b9fc 	jsr 4b9fc <_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 ) {
   472e0:	4fef 0010      	lea %sp@(16),%sp                            
   472e4:	2f04           	movel %d4,%sp@-                             
   472e6:	4e93           	jsr %a3@                                    
   472e8:	588f           	addql #4,%sp                                
   472ea:	4a80           	tstl %d0                                    
   472ec:	6732           	beqs 47320 <_Objects_Extend_information+0x1d4>
                                                                      
    the_object->id = _Objects_Build_id(                               
   472ee:	2212           	movel %a2@,%d1                              
   472f0:	7c18           	moveq #24,%d6                               
   472f2:	7e1b           	moveq #27,%d7                               
   472f4:	2040           	moveal %d0,%a0                              
   472f6:	eda9           	lsll %d6,%d1                                
   472f8:	4286           	clrl %d6                                    
   472fa:	3c2a 0004      	movew %a2@(4),%d6                           
   472fe:	08c1 0010      	bset #16,%d1                                
   47302:	efae           	lsll %d7,%d6                                
   47304:	8286           	orl %d6,%d1                                 
   47306:	8283           	orl %d3,%d1                                 
        index                                                         
      );                                                              
                                                                      
    _Chain_Append( &information->Inactive, &the_object->Node );       
                                                                      
    index++;                                                          
   47308:	5283           	addql #1,%d3                                
   */                                                                 
  index = index_base;                                                 
                                                                      
  while ((the_object = (Objects_Control *) _Chain_Get( &Inactive )) != NULL ) {
                                                                      
    the_object->id = _Objects_Build_id(                               
   4730a:	2141 0008      	movel %d1,%a0@(8)                           
        information->the_class,                                       
        _Objects_Local_node,                                          
        index                                                         
      );                                                              
                                                                      
    _Chain_Append( &information->Inactive, &the_object->Node );       
   4730e:	2f00           	movel %d0,%sp@-                             
   47310:	2f05           	movel %d5,%sp@-                             
   47312:	4e94           	jsr %a4@                                    
                                                                      
    index++;                                                          
   47314:	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 ) {
   47316:	2f04           	movel %d4,%sp@-                             
   47318:	4e93           	jsr %a3@                                    
   4731a:	588f           	addql #4,%sp                                
   4731c:	4a80           	tstl %d0                                    
   4731e:	66ce           	bnes 472ee <_Objects_Extend_information+0x1a2>
    _Chain_Append( &information->Inactive, &the_object->Node );       
                                                                      
    index++;                                                          
  }                                                                   
                                                                      
  information->inactive_per_block[ block ] = information->allocation_size;
   47320:	4280           	clrl %d0                                    
  information->inactive =                                             
   47322:	322a 0028      	movew %a2@(40),%d1                          
   47326:	326a 0012      	moveaw %a2@(18),%a1                         
    _Chain_Append( &information->Inactive, &the_object->Node );       
                                                                      
    index++;                                                          
  }                                                                   
                                                                      
  information->inactive_per_block[ block ] = information->allocation_size;
   4732a:	206a 002a      	moveal %a2@(42),%a0                         
  information->inactive =                                             
   4732e:	d289           	addl %a1,%d1                                
    _Chain_Append( &information->Inactive, &the_object->Node );       
                                                                      
    index++;                                                          
  }                                                                   
                                                                      
  information->inactive_per_block[ block ] = information->allocation_size;
   47330:	3009           	movew %a1,%d0                               
  information->inactive =                                             
   47332:	3541 0028      	movew %d1,%a2@(40)                          
    _Chain_Append( &information->Inactive, &the_object->Node );       
                                                                      
    index++;                                                          
  }                                                                   
                                                                      
  information->inactive_per_block[ block ] = information->allocation_size;
   47336:	2180 2800      	movel %d0,%a0@(00000000,%d2:l)              
  information->inactive =                                             
    (Objects_Maximum)(information->inactive + information->allocation_size);
}                                                                     
   4733a:	4cee 3cfc ffcc 	moveml %fp@(-52),%d2-%d7/%a2-%a5            
   47340:	4e5e           	unlk %fp                                    
   47342:	4e75           	rts                                         
  if ( information->auto_extend ) {                                   
    new_object_block = _Workspace_Allocate( block_size );             
    if ( !new_object_block )                                          
      return;                                                         
  } else {                                                            
    new_object_block = _Workspace_Allocate_or_fatal_error( block_size );
   47344:	2f00           	movel %d0,%sp@-                             
   47346:	4eb9 0004 91c0 	jsr 491c0 <_Workspace_Allocate_or_fatal_error>
   4734c:	588f           	addql #4,%sp                                
   4734e:	2c00           	movel %d0,%d6                               
   47350:	6000 fe84      	braw 471d6 <_Objects_Extend_information+0x8a>
      /*                                                              
       *  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,                                          
   47354:	e58c           	lsll #2,%d4                                 
   47356:	2f04           	movel %d4,%sp@-                             
   47358:	2f2a 002e      	movel %a2@(46),%sp@-                        
   4735c:	2f0c           	movel %a4,%sp@-                             
   4735e:	4eb9 0004 f414 	jsr 4f414 <memcpy>                          
              information->object_blocks,                             
              block_count * sizeof(void*) );                          
      memcpy( inactive_per_block,                                     
   47364:	2f04           	movel %d4,%sp@-                             
   47366:	2f2a 002a      	movel %a2@(42),%sp@-                        
   4736a:	2f0d           	movel %a5,%sp@-                             
   4736c:	4eb9 0004 f414 	jsr 4f414 <memcpy>                          
              information->inactive_per_block,                        
              block_count * sizeof(uint32_t) );                       
      memcpy( local_table,                                            
   47372:	4280           	clrl %d0                                    
   47374:	302a 000e      	movew %a2@(14),%d0                          
   47378:	da80           	addl %d0,%d5                                
   4737a:	e58d           	lsll #2,%d5                                 
   4737c:	2f05           	movel %d5,%sp@-                             
   4737e:	2f2a 0018      	movel %a2@(24),%sp@-                        
   47382:	2f07           	movel %d7,%sp@-                             
   47384:	4eb9 0004 f414 	jsr 4f414 <memcpy>                          
   4738a:	4fef 0024      	lea %sp@(36),%sp                            
   4738e:	6000 fe9c      	braw 4722c <_Objects_Extend_information+0xe0>
  minimum_index = _Objects_Get_index( information->minimum_id );      
  index_base    = minimum_index;                                      
  block         = 0;                                                  
                                                                      
  /* if ( information->maximum < minimum_index ) */                   
  if ( information->object_blocks == NULL )                           
   47392:	4280           	clrl %d0                                    
   47394:	2605           	movel %d5,%d3                               
   47396:	4282           	clrl %d2                                    
   47398:	4284           	clrl %d4                                    
   4739a:	322a 000e      	movew %a2@(14),%d1                          
   4739e:	302a 0012      	movew %a2@(18),%d0                          
   473a2:	6000 fdfe      	braw 471a2 <_Objects_Extend_information+0x56>
    block_count = 0;                                                  
  else {                                                              
    block_count = information->maximum / information->allocation_size;
                                                                      
    for ( ; block < block_count; block++ ) {                          
      if ( information->object_blocks[ block ] == NULL )              
   473a6:	2605           	movel %d5,%d3                               <== NOT EXECUTED
   473a8:	4282           	clrl %d2                                    <== NOT EXECUTED
   473aa:	0280 0000 ffff 	andil #65535,%d0                            <== NOT EXECUTED
   473b0:	6000 fdf0      	braw 471a2 <_Objects_Extend_information+0x56><== NOT EXECUTED
           (sizeof(void *) + sizeof(uint32_t) + sizeof(Objects_Name *)) +
          ((maximum + minimum_index) * sizeof(Objects_Control *));    
    object_blocks = (void**) _Workspace_Allocate( block_size );       
                                                                      
    if ( !object_blocks ) {                                           
      _Workspace_Free( new_object_block );                            
   473b4:	2f06           	movel %d6,%sp@-                             
   473b6:	4eb9 0004 9210 	jsr 49210 <_Workspace_Free>                 
      return;                                                         
   473bc:	588f           	addql #4,%sp                                
  }                                                                   
                                                                      
  information->inactive_per_block[ block ] = information->allocation_size;
  information->inactive =                                             
    (Objects_Maximum)(information->inactive + information->allocation_size);
}                                                                     
   473be:	4cee 3cfc ffcc 	moveml %fp@(-52),%d2-%d7/%a2-%a5            
   473c4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00047ad8 <_Objects_Set_name>:                                         
{                                                                     
  size_t                 length;                                      
  const char            *s;                                           
                                                                      
  s      = name;                                                      
  length = strnlen( name, information->name_length );                 
   47ad8:	4280           	clrl %d0                                    
bool _Objects_Set_name(                                               
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  const char          *name                                           
)                                                                     
{                                                                     
   47ada:	4e56 fff0      	linkw %fp,#-16                              
   47ade:	48d7 3c00      	moveml %a2-%a5,%sp@                         
   47ae2:	286e 0008      	moveal %fp@(8),%a4                          
   47ae6:	246e 0010      	moveal %fp@(16),%a2                         
  size_t                 length;                                      
  const char            *s;                                           
                                                                      
  s      = name;                                                      
  length = strnlen( name, information->name_length );                 
   47aea:	302c 0034      	movew %a4@(52),%d0                          
   47aee:	2f00           	movel %d0,%sp@-                             
bool _Objects_Set_name(                                               
  Objects_Information *information,                                   
  Objects_Control     *the_object,                                    
  const char          *name                                           
)                                                                     
{                                                                     
   47af0:	2a6e 000c      	moveal %fp@(12),%a5                         
  size_t                 length;                                      
  const char            *s;                                           
                                                                      
  s      = name;                                                      
  length = strnlen( name, information->name_length );                 
   47af4:	2f0a           	movel %a2,%sp@-                             
   47af6:	4eb9 0005 08a0 	jsr 508a0 <strnlen>                         
                                                                      
#if defined(RTEMS_SCORE_OBJECT_ENABLE_STRING_NAMES)                   
  if ( information->is_string ) {                                     
   47afc:	508f           	addql #8,%sp                                
{                                                                     
  size_t                 length;                                      
  const char            *s;                                           
                                                                      
  s      = name;                                                      
  length = strnlen( name, information->name_length );                 
   47afe:	2640           	moveal %d0,%a3                              
                                                                      
#if defined(RTEMS_SCORE_OBJECT_ENABLE_STRING_NAMES)                   
  if ( information->is_string ) {                                     
   47b00:	4a2c 0032      	tstb %a4@(50)                               
   47b04:	6662           	bnes 47b68 <_Objects_Set_name+0x90>         
    d[length] = '\0';                                                 
    the_object->name.name_p = d;                                      
  } else                                                              
#endif                                                                
  {                                                                   
    the_object->name.name_u32 =  _Objects_Build_name(                 
   47b06:	7018           	moveq #24,%d0                               
   47b08:	1212           	moveb %a2@,%d1                              
   47b0a:	49c1           	extbl %d1                                   
   47b0c:	e1a9           	lsll %d0,%d1                                
   47b0e:	103c 0001      	moveb #1,%d0                                
   47b12:	b08b           	cmpl %a3,%d0                                
   47b14:	643c           	bccs 47b52 <_Objects_Set_name+0x7a>         
   47b16:	102a 0001      	moveb %a2@(1),%d0                           
   47b1a:	49c0           	extbl %d0                                   
   47b1c:	4840           	swap %d0                                    
   47b1e:	4240           	clrw %d0                                    
   47b20:	8081           	orl %d1,%d0                                 
   47b22:	7202           	moveq #2,%d1                                
   47b24:	b28b           	cmpl %a3,%d1                                
   47b26:	6730           	beqs 47b58 <_Objects_Set_name+0x80>         
   47b28:	122a 0002      	moveb %a2@(2),%d1                           
   47b2c:	49c1           	extbl %d1                                   
   47b2e:	e189           	lsll #8,%d1                                 
   47b30:	8081           	orl %d1,%d0                                 
   47b32:	7203           	moveq #3,%d1                                
   47b34:	b28b           	cmpl %a3,%d1                                
   47b36:	6700 0088      	beqw 47bc0 <_Objects_Set_name+0xe8>         
   47b3a:	122a 0003      	moveb %a2@(3),%d1                           
   47b3e:	49c1           	extbl %d1                                   
   47b40:	8081           	orl %d1,%d0                                 
   47b42:	2b40 000c      	movel %d0,%a5@(12)                          
   47b46:	7001           	moveq #1,%d0                                
    );                                                                
                                                                      
  }                                                                   
                                                                      
  return true;                                                        
}                                                                     
   47b48:	4cee 3c00 fff0 	moveml %fp@(-16),%a2-%a5                    
   47b4e:	4e5e           	unlk %fp                                    
   47b50:	4e75           	rts                                         
    d[length] = '\0';                                                 
    the_object->name.name_p = d;                                      
  } else                                                              
#endif                                                                
  {                                                                   
    the_object->name.name_u32 =  _Objects_Build_name(                 
   47b52:	2001           	movel %d1,%d0                               
   47b54:	08c0 0015      	bset #21,%d0                                
   47b58:	7220           	moveq #32,%d1                               
   47b5a:	08c0 000d      	bset #13,%d0                                
   47b5e:	8081           	orl %d1,%d0                                 
   47b60:	2b40 000c      	movel %d0,%a5@(12)                          
   47b64:	7001           	moveq #1,%d0                                
   47b66:	60e0           	bras 47b48 <_Objects_Set_name+0x70>         
                                                                      
#if defined(RTEMS_SCORE_OBJECT_ENABLE_STRING_NAMES)                   
  if ( information->is_string ) {                                     
    char *d;                                                          
                                                                      
    d = _Workspace_Allocate( length + 1 );                            
   47b68:	486b 0001      	pea %a3@(1)                                 
   47b6c:	4eb9 0004 966c 	jsr 4966c <_Workspace_Allocate>             
    if ( !d )                                                         
   47b72:	588f           	addql #4,%sp                                
                                                                      
#if defined(RTEMS_SCORE_OBJECT_ENABLE_STRING_NAMES)                   
  if ( information->is_string ) {                                     
    char *d;                                                          
                                                                      
    d = _Workspace_Allocate( length + 1 );                            
   47b74:	2840           	moveal %d0,%a4                              
    if ( !d )                                                         
   47b76:	4a80           	tstl %d0                                    
   47b78:	673a           	beqs 47bb4 <_Objects_Set_name+0xdc>         
      return false;                                                   
                                                                      
    if ( the_object->name.name_p ) {                                  
   47b7a:	202d 000c      	movel %a5@(12),%d0                          
   47b7e:	670e           	beqs 47b8e <_Objects_Set_name+0xb6>         
      _Workspace_Free( (void *)the_object->name.name_p );             
   47b80:	2f00           	movel %d0,%sp@-                             
   47b82:	4eb9 0004 9688 	jsr 49688 <_Workspace_Free>                 
      the_object->name.name_p = NULL;                                 
   47b88:	588f           	addql #4,%sp                                
   47b8a:	42ad 000c      	clrl %a5@(12)                               
    }                                                                 
                                                                      
    strncpy( d, name, length );                                       
   47b8e:	2f0b           	movel %a3,%sp@-                             
   47b90:	2f0a           	movel %a2,%sp@-                             
   47b92:	2f0c           	movel %a4,%sp@-                             
   47b94:	4eb9 0005 0818 	jsr 50818 <strncpy>                         
    d[length] = '\0';                                                 
    the_object->name.name_p = d;                                      
   47b9a:	4fef 000c      	lea %sp@(12),%sp                            
      _Workspace_Free( (void *)the_object->name.name_p );             
      the_object->name.name_p = NULL;                                 
    }                                                                 
                                                                      
    strncpy( d, name, length );                                       
    d[length] = '\0';                                                 
   47b9e:	4200           	clrb %d0                                    
   47ba0:	1980 b800      	moveb %d0,%a4@(00000000,%a3:l)              
    the_object->name.name_p = d;                                      
   47ba4:	7001           	moveq #1,%d0                                
   47ba6:	2b4c 000c      	movel %a4,%a5@(12)                          
    );                                                                
                                                                      
  }                                                                   
                                                                      
  return true;                                                        
}                                                                     
   47baa:	4cee 3c00 fff0 	moveml %fp@(-16),%a2-%a5                    
   47bb0:	4e5e           	unlk %fp                                    
   47bb2:	4e75           	rts                                         
   47bb4:	4cee 3c00 fff0 	moveml %fp@(-16),%a2-%a5                    <== NOT EXECUTED
#if defined(RTEMS_SCORE_OBJECT_ENABLE_STRING_NAMES)                   
  if ( information->is_string ) {                                     
    char *d;                                                          
                                                                      
    d = _Workspace_Allocate( length + 1 );                            
    if ( !d )                                                         
   47bba:	4200           	clrb %d0                                    <== NOT EXECUTED
    );                                                                
                                                                      
  }                                                                   
                                                                      
  return true;                                                        
}                                                                     
   47bbc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   47bbe:	4e75           	rts                                         <== NOT EXECUTED
    d[length] = '\0';                                                 
    the_object->name.name_p = d;                                      
  } else                                                              
#endif                                                                
  {                                                                   
    the_object->name.name_u32 =  _Objects_Build_name(                 
   47bc0:	123c 0020      	moveb #32,%d1                               
   47bc4:	8081           	orl %d1,%d0                                 
   47bc6:	2b40 000c      	movel %d0,%a5@(12)                          
   47bca:	7001           	moveq #1,%d0                                
   47bcc:	6000 ff7a      	braw 47b48 <_Objects_Set_name+0x70>         
                                                                      
00047758 <_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) /                 
   47758:	4281           	clrl %d1                                    
 */                                                                   
                                                                      
void _Objects_Shrink_information(                                     
  Objects_Information *information                                    
)                                                                     
{                                                                     
   4775a:	4e56 ffec      	linkw %fp,#-20                              
   4775e:	48d7 0c1c      	moveml %d2-%d4/%a2-%a3,%sp@                 
   47762:	246e 0008      	moveal %fp@(8),%a2                          
                                                                      
  /*                                                                  
   * Search the list to find block or chunk with all objects inactive.
   */                                                                 
                                                                      
  index_base = _Objects_Get_index( information->minimum_id );         
   47766:	4283           	clrl %d3                                    
  block_count = (information->maximum - index_base) /                 
   47768:	4284           	clrl %d4                                    
                                                                      
  /*                                                                  
   * Search the list to find block or chunk with all objects inactive.
   */                                                                 
                                                                      
  index_base = _Objects_Get_index( information->minimum_id );         
   4776a:	362a 0008      	movew %a2@(8),%d3                           
  block_count = (information->maximum - index_base) /                 
   4776e:	382a 000e      	movew %a2@(14),%d4                          
   47772:	322a 0012      	movew %a2@(18),%d1                          
   47776:	9883           	subl %d3,%d4                                
   47778:	4c41 4004      	remul %d1,%d4,%d4                           
                 information->allocation_size;                        
                                                                      
  for ( block = 0; block < block_count; block++ ) {                   
   4777c:	672c           	beqs 477aa <_Objects_Shrink_information+0x52>
    if ( information->inactive_per_block[ block ] ==                  
   4777e:	226a 002a      	moveal %a2@(42),%a1                         
   47782:	b291           	cmpl %a1@,%d1                               
   47784:	672e           	beqs 477b4 <_Objects_Shrink_information+0x5c>
      information->object_blocks[ block ] = NULL;                     
      information->inactive_per_block[ block ] = 0;                   
                                                                      
      information->inactive -= information->allocation_size;          
                                                                      
      return;                                                         
   47786:	7404           	moveq #4,%d2                                
   47788:	4280           	clrl %d0                                    
    }                                                                 
                                                                      
    index_base += information->allocation_size;                       
   4778a:	2042           	moveal %d2,%a0                              
   4778c:	d681           	addl %d1,%d3                                
   4778e:	5888           	addql #4,%a0                                
                                                                      
  index_base = _Objects_Get_index( information->minimum_id );         
  block_count = (information->maximum - index_base) /                 
                 information->allocation_size;                        
                                                                      
  for ( block = 0; block < block_count; block++ ) {                   
   47790:	5280           	addql #1,%d0                                
   47792:	b084           	cmpl %d4,%d0                                
   47794:	6414           	bccs 477aa <_Objects_Shrink_information+0x52>
    if ( information->inactive_per_block[ block ] ==                  
   47796:	b2b1 2800      	cmpl %a1@(00000000,%d2:l),%d1               
   4779a:	671a           	beqs 477b6 <_Objects_Shrink_information+0x5e>
   4779c:	2408           	movel %a0,%d2                               
      information->inactive -= information->allocation_size;          
                                                                      
      return;                                                         
    }                                                                 
                                                                      
    index_base += information->allocation_size;                       
   4779e:	2042           	moveal %d2,%a0                              
   477a0:	d681           	addl %d1,%d3                                
   477a2:	5888           	addql #4,%a0                                
                                                                      
  index_base = _Objects_Get_index( information->minimum_id );         
  block_count = (information->maximum - index_base) /                 
                 information->allocation_size;                        
                                                                      
  for ( block = 0; block < block_count; block++ ) {                   
   477a4:	5280           	addql #1,%d0                                
   477a6:	b084           	cmpl %d4,%d0                                
   477a8:	65ec           	bcss 47796 <_Objects_Shrink_information+0x3e>
      return;                                                         
    }                                                                 
                                                                      
    index_base += information->allocation_size;                       
  }                                                                   
}                                                                     
   477aa:	4cee 0c1c ffec 	moveml %fp@(-20),%d2-%d4/%a2-%a3            
   477b0:	4e5e           	unlk %fp                                    
   477b2:	4e75           	rts                                         
  index_base = _Objects_Get_index( information->minimum_id );         
  block_count = (information->maximum - index_base) /                 
                 information->allocation_size;                        
                                                                      
  for ( block = 0; block < block_count; block++ ) {                   
    if ( information->inactive_per_block[ block ] ==                  
   477b4:	4282           	clrl %d2                                    <== NOT EXECUTED
         information->allocation_size ) {                             
                                                                      
      /*                                                              
       *  Assume the Inactive chain is never empty at this point      
       */                                                             
      the_object = (Objects_Control *) information->Inactive.first;   
   477b6:	206a 001c      	moveal %a2@(28),%a0                         
          */                                                          
         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 );                       
   477ba:	47f9 0004 b998 	lea 4b998 <_Chain_Extract>,%a3              
       *  Assume the Inactive chain is never empty at this point      
       */                                                             
      the_object = (Objects_Control *) information->Inactive.first;   
                                                                      
      do {                                                            
         index = _Objects_Get_index( the_object->id );                
   477c0:	4280           	clrl %d0                                    
   477c2:	3028 000a      	movew %a0@(10),%d0                          
         /*                                                           
          *  Get the next node before the node is extracted           
          */                                                          
         extract_me = the_object;                                     
         the_object = (Objects_Control *) the_object->Node.next;      
   477c6:	2810           	movel %a0@,%d4                              
         if ((index >= index_base) &&                                 
   477c8:	b680           	cmpl %d0,%d3                                
   477ca:	620c           	bhis 477d8 <_Objects_Shrink_information+0x80>
             (index < (index_base + information->allocation_size))) { 
   477cc:	4281           	clrl %d1                                    
   477ce:	322a 0012      	movew %a2@(18),%d1                          
   477d2:	d283           	addl %d3,%d1                                
   477d4:	b280           	cmpl %d0,%d1                                
   477d6:	623e           	bhis 47816 <_Objects_Shrink_information+0xbe>
           _Chain_Extract( &extract_me->Node );                       
         }                                                            
       }                                                              
       while ( the_object );                                          
   477d8:	2044           	moveal %d4,%a0                              
   477da:	4a84           	tstl %d4                                    
   477dc:	66e2           	bnes 477c0 <_Objects_Shrink_information+0x68>
      /*                                                              
       *  Free the memory and reset the structures in the object' information
       */                                                             
                                                                      
      _Workspace_Free( information->object_blocks[ block ] );         
   477de:	206a 002e      	moveal %a2@(46),%a0                         
   477e2:	2f30 2800      	movel %a0@(00000000,%d2:l),%sp@-            
   477e6:	4eb9 0004 9210 	jsr 49210 <_Workspace_Free>                 
      information->object_blocks[ block ] = NULL;                     
   477ec:	206a 002e      	moveal %a2@(46),%a0                         
      information->inactive_per_block[ block ] = 0;                   
                                                                      
      information->inactive -= information->allocation_size;          
                                                                      
      return;                                                         
   477f0:	588f           	addql #4,%sp                                
                                                                      
      _Workspace_Free( information->object_blocks[ block ] );         
      information->object_blocks[ block ] = NULL;                     
      information->inactive_per_block[ block ] = 0;                   
                                                                      
      information->inactive -= information->allocation_size;          
   477f2:	302a 0028      	movew %a2@(40),%d0                          
   477f6:	322a 0012      	movew %a2@(18),%d1                          
       *  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;                   
   477fa:	226a 002a      	moveal %a2@(42),%a1                         
                                                                      
      information->inactive -= information->allocation_size;          
   477fe:	9081           	subl %d1,%d0                                
       *  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;                   
   47800:	42b1 2800      	clrl %a1@(00000000,%d2:l)                   
      /*                                                              
       *  Free the memory and reset the structures in the object' information
       */                                                             
                                                                      
      _Workspace_Free( information->object_blocks[ block ] );         
      information->object_blocks[ block ] = NULL;                     
   47804:	42b0 2800      	clrl %a0@(00000000,%d2:l)                   
      information->inactive_per_block[ block ] = 0;                   
                                                                      
      information->inactive -= information->allocation_size;          
   47808:	3540 0028      	movew %d0,%a2@(40)                          
      return;                                                         
    }                                                                 
                                                                      
    index_base += information->allocation_size;                       
  }                                                                   
}                                                                     
   4780c:	4cee 0c1c ffec 	moveml %fp@(-20),%d2-%d4/%a2-%a3            
   47812:	4e5e           	unlk %fp                                    
   47814:	4e75           	rts                                         
          */                                                          
         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 );                       
   47816:	2f08           	movel %a0,%sp@-                             
   47818:	4e93           	jsr %a3@                                    
   4781a:	588f           	addql #4,%sp                                
         }                                                            
       }                                                              
       while ( the_object );                                          
   4781c:	2044           	moveal %d4,%a0                              
   4781e:	4a84           	tstl %d4                                    
   47820:	669e           	bnes 477c0 <_Objects_Shrink_information+0x68>
   47822:	60ba           	bras 477de <_Objects_Shrink_information+0x86>
                                                                      
00046bc8 <_POSIX_Condition_variables_Wait_support>:                   
  pthread_cond_t            *cond,                                    
  pthread_mutex_t           *mutex,                                   
  Watchdog_Interval          timeout,                                 
  bool                       already_timedout                         
)                                                                     
{                                                                     
   46bc8:	4e56 ffe8      	linkw %fp,#-24                              
   46bcc:	48d7 1c0c      	moveml %d2-%d3/%a2-%a4,%sp@                 
  register POSIX_Condition_variables_Control *the_cond;               
  Objects_Locations                           location;               
  int                                         status;                 
  int                                         mutex_status;           
                                                                      
  if ( !_POSIX_Mutex_Get( mutex, &location ) ) {                      
   46bd0:	240e           	movel %fp,%d2                               
   46bd2:	5982           	subql #4,%d2                                
   46bd4:	2f02           	movel %d2,%sp@-                             
  pthread_cond_t            *cond,                                    
  pthread_mutex_t           *mutex,                                   
  Watchdog_Interval          timeout,                                 
  bool                       already_timedout                         
)                                                                     
{                                                                     
   46bd6:	246e 000c      	moveal %fp@(12),%a2                         
  register POSIX_Condition_variables_Control *the_cond;               
  Objects_Locations                           location;               
  int                                         status;                 
  int                                         mutex_status;           
                                                                      
  if ( !_POSIX_Mutex_Get( mutex, &location ) ) {                      
   46bda:	2f0a           	movel %a2,%sp@-                             
  pthread_cond_t            *cond,                                    
  pthread_mutex_t           *mutex,                                   
  Watchdog_Interval          timeout,                                 
  bool                       already_timedout                         
)                                                                     
{                                                                     
   46bdc:	266e 0008      	moveal %fp@(8),%a3                          
   46be0:	162e 0017      	moveb %fp@(23),%d3                          
  register POSIX_Condition_variables_Control *the_cond;               
  Objects_Locations                           location;               
  int                                         status;                 
  int                                         mutex_status;           
                                                                      
  if ( !_POSIX_Mutex_Get( mutex, &location ) ) {                      
   46be4:	4eb9 0004 6dbe 	jsr 46dbe <_POSIX_Mutex_Get>                
   46bea:	508f           	addql #8,%sp                                
   46bec:	4a80           	tstl %d0                                    
   46bee:	6764           	beqs 46c54 <_POSIX_Condition_variables_Wait_support+0x8c>
 */                                                                   
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unnest_dispatch( void )             
{                                                                     
  RTEMS_COMPILER_MEMORY_BARRIER();                                    
  _Thread_Dispatch_disable_level -= 1;                                
   46bf0:	2039 0006 19d8 	movel 619d8 <_Thread_Dispatch_disable_level>,%d0
   46bf6:	5380           	subql #1,%d0                                
     return EINVAL;                                                   
  }                                                                   
                                                                      
  _Thread_Unnest_dispatch();                                          
                                                                      
  the_cond = _POSIX_Condition_variables_Get( cond, &location );       
   46bf8:	2f02           	movel %d2,%sp@-                             
   46bfa:	23c0 0006 19d8 	movel %d0,619d8 <_Thread_Dispatch_disable_level>
   46c00:	2f0b           	movel %a3,%sp@-                             
   46c02:	4eb9 0004 69b4 	jsr 469b4 <_POSIX_Condition_variables_Get>  
  switch ( location ) {                                               
   46c08:	508f           	addql #8,%sp                                
     return EINVAL;                                                   
  }                                                                   
                                                                      
  _Thread_Unnest_dispatch();                                          
                                                                      
  the_cond = _POSIX_Condition_variables_Get( cond, &location );       
   46c0a:	2840           	moveal %d0,%a4                              
  switch ( location ) {                                               
   46c0c:	4aae fffc      	tstl %fp@(-4)                               
   46c10:	6642           	bnes 46c54 <_POSIX_Condition_variables_Wait_support+0x8c>
                                                                      
    case OBJECTS_LOCAL:                                               
                                                                      
      if ( the_cond->Mutex && ( the_cond->Mutex != *mutex ) ) {       
   46c12:	202c 0014      	movel %a4@(20),%d0                          
   46c16:	6718           	beqs 46c30 <_POSIX_Condition_variables_Wait_support+0x68>
   46c18:	b092           	cmpl %a2@,%d0                               
   46c1a:	6714           	beqs 46c30 <_POSIX_Condition_variables_Wait_support+0x68>
        _Thread_Enable_dispatch();                                    
   46c1c:	4eb9 0004 a008 	jsr 4a008 <_Thread_Enable_dispatch>         
   46c22:	7416           	moveq #22,%d2                               
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return EINVAL;                                                      
}                                                                     
   46c24:	2002           	movel %d2,%d0                               
   46c26:	4cee 1c0c ffe8 	moveml %fp@(-24),%d2-%d3/%a2-%a4            
   46c2c:	4e5e           	unlk %fp                                    
   46c2e:	4e75           	rts                                         
      if ( the_cond->Mutex && ( the_cond->Mutex != *mutex ) ) {       
        _Thread_Enable_dispatch();                                    
        return EINVAL;                                                
      }                                                               
                                                                      
      (void) pthread_mutex_unlock( mutex );                           
   46c30:	2f0a           	movel %a2,%sp@-                             
   46c32:	4eb9 0004 700c 	jsr 4700c <pthread_mutex_unlock>            
        _Thread_Enable_dispatch();                                    
        return EINVAL;                                                
      }                                                               
*/                                                                    
                                                                      
      if ( !already_timedout ) {                                      
   46c38:	588f           	addql #4,%sp                                
   46c3a:	4a03           	tstb %d3                                    
   46c3c:	6724           	beqs 46c62 <_POSIX_Condition_variables_Wait_support+0x9a>
        status = _Thread_Executing->Wait.return_code;                 
        if ( status && status != ETIMEDOUT )                          
          return status;                                              
                                                                      
      } else {                                                        
        _Thread_Enable_dispatch();                                    
   46c3e:	4eb9 0004 a008 	jsr 4a008 <_Thread_Enable_dispatch>         
   46c44:	7474           	moveq #116,%d2                              
                                                                      
      /*                                                              
       *  When we get here the dispatch disable level is 0.           
       */                                                             
                                                                      
      mutex_status = pthread_mutex_lock( mutex );                     
   46c46:	2f0a           	movel %a2,%sp@-                             
   46c48:	4eb9 0004 6f70 	jsr 46f70 <pthread_mutex_lock>              
      if ( mutex_status )                                             
   46c4e:	588f           	addql #4,%sp                                
   46c50:	4a80           	tstl %d0                                    
   46c52:	67d0           	beqs 46c24 <_POSIX_Condition_variables_Wait_support+0x5c>
   46c54:	7416           	moveq #22,%d2                               
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return EINVAL;                                                      
}                                                                     
   46c56:	2002           	movel %d2,%d0                               
   46c58:	4cee 1c0c ffe8 	moveml %fp@(-24),%d2-%d3/%a2-%a4            
   46c5e:	4e5e           	unlk %fp                                    
   46c60:	4e75           	rts                                         
        return EINVAL;                                                
      }                                                               
*/                                                                    
                                                                      
      if ( !already_timedout ) {                                      
        the_cond->Mutex = *mutex;                                     
   46c62:	2952 0014      	movel %a2@,%a4@(20)                         
                                                                      
        _Thread_queue_Enter_critical_section( &the_cond->Wait_queue );
        _Thread_Executing->Wait.return_code = 0;                      
        _Thread_Executing->Wait.queue       = &the_cond->Wait_queue;  
   46c66:	200c           	movel %a4,%d0                               
   46c68:	0680 0000 0018 	addil #24,%d0                               
                                                                      
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;
   46c6e:	7201           	moveq #1,%d1                                
                                                                      
      if ( !already_timedout ) {                                      
        the_cond->Mutex = *mutex;                                     
                                                                      
        _Thread_queue_Enter_critical_section( &the_cond->Wait_queue );
        _Thread_Executing->Wait.return_code = 0;                      
   46c70:	2079 0006 1a92 	moveal 61a92 <_Thread_Executing>,%a0        
   46c76:	42a8 0034      	clrl %a0@(52)                               
        _Thread_Executing->Wait.queue       = &the_cond->Wait_queue;  
        _Thread_Executing->Wait.id          = *cond;                  
   46c7a:	2153 0020      	movel %a3@,%a0@(32)                         
      if ( !already_timedout ) {                                      
        the_cond->Mutex = *mutex;                                     
                                                                      
        _Thread_queue_Enter_critical_section( &the_cond->Wait_queue );
        _Thread_Executing->Wait.return_code = 0;                      
        _Thread_Executing->Wait.queue       = &the_cond->Wait_queue;  
   46c7e:	2140 0044      	movel %d0,%a0@(68)                          
   46c82:	2941 0048      	movel %d1,%a4@(72)                          
        _Thread_Executing->Wait.id          = *cond;                  
                                                                      
        _Thread_queue_Enqueue( &the_cond->Wait_queue, timeout );      
   46c86:	4879 0004 a920 	pea 4a920 <_Thread_queue_Timeout>           
   46c8c:	2f2e 0010      	movel %fp@(16),%sp@-                        
   46c90:	2f00           	movel %d0,%sp@-                             
   46c92:	4eb9 0004 a564 	jsr 4a564 <_Thread_queue_Enqueue_with_handler>
                                                                      
        _Thread_Enable_dispatch();                                    
   46c98:	4eb9 0004 a008 	jsr 4a008 <_Thread_Enable_dispatch>         
        /*                                                            
         *  Switch ourself out because we blocked as a result of the  
         *  _Thread_queue_Enqueue.                                    
         */                                                           
                                                                      
        status = _Thread_Executing->Wait.return_code;                 
   46c9e:	2079 0006 1a92 	moveal 61a92 <_Thread_Executing>,%a0        
        if ( status && status != ETIMEDOUT )                          
   46ca4:	4fef 000c      	lea %sp@(12),%sp                            
        /*                                                            
         *  Switch ourself out because we blocked as a result of the  
         *  _Thread_queue_Enqueue.                                    
         */                                                           
                                                                      
        status = _Thread_Executing->Wait.return_code;                 
   46ca8:	2428 0034      	movel %a0@(52),%d2                          
        if ( status && status != ETIMEDOUT )                          
   46cac:	6798           	beqs 46c46 <_POSIX_Condition_variables_Wait_support+0x7e>
   46cae:	7074           	moveq #116,%d0                              
   46cb0:	b082           	cmpl %d2,%d0                                
   46cb2:	6792           	beqs 46c46 <_POSIX_Condition_variables_Wait_support+0x7e>
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return EINVAL;                                                      
}                                                                     
   46cb4:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   46cb6:	4cee 1c0c ffe8 	moveml %fp@(-24),%d2-%d3/%a2-%a4            <== NOT EXECUTED
   46cbc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004bac4 <_POSIX_Message_queue_Receive_support>:                      
  size_t              msg_len,                                        
  unsigned int       *msg_prio,                                       
  bool                wait,                                           
  Watchdog_Interval   timeout                                         
)                                                                     
{                                                                     
   4bac4:	4e56 ffe8      	linkw %fp,#-24                              
   4bac8:	48d7 041c      	moveml %d2-%d4/%a2,%sp@                     
RTEMS_INLINE_ROUTINE POSIX_Message_queue_Control_fd *_POSIX_Message_queue_Get_fd (
  mqd_t              id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (POSIX_Message_queue_Control_fd *) _Objects_Get(             
   4bacc:	486e fffc      	pea %fp@(-4)                                
   4bad0:	242e 0008      	movel %fp@(8),%d2                           
   4bad4:	2f02           	movel %d2,%sp@-                             
   4bad6:	4879 0006 8f90 	pea 68f90 <_POSIX_Message_queue_Information_fds>
   4badc:	246e 0014      	moveal %fp@(20),%a2                         
   4bae0:	262e 0018      	movel %fp@(24),%d3                          
   4bae4:	4eb9 0004 eed8 	jsr 4eed8 <_Objects_Get>                    
  Objects_Locations                location;                          
  size_t                           length_out;                        
  bool                             do_wait;                           
                                                                      
  the_mq_fd = _POSIX_Message_queue_Get_fd( mqdes, &location );        
  switch ( location ) {                                               
   4baea:	4fef 000c      	lea %sp@(12),%sp                            
   4baee:	2040           	moveal %d0,%a0                              
   4baf0:	4aae fffc      	tstl %fp@(-4)                               
   4baf4:	671a           	beqs 4bb10 <_POSIX_Message_queue_Receive_support+0x4c>
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one( EBADF );                      
   4baf6:	4eb9 0005 66ec 	jsr 566ec <__errno>                         
   4bafc:	72ff           	moveq #-1,%d1                               
   4bafe:	2040           	moveal %d0,%a0                              
   4bb00:	7009           	moveq #9,%d0                                
}                                                                     
   4bb02:	4cee 041c ffe8 	moveml %fp@(-24),%d2-%d4/%a2                
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one( EBADF );                      
   4bb08:	2080           	movel %d0,%a0@                              
}                                                                     
   4bb0a:	2001           	movel %d1,%d0                               
   4bb0c:	4e5e           	unlk %fp                                    
   4bb0e:	4e75           	rts                                         
                                                                      
  the_mq_fd = _POSIX_Message_queue_Get_fd( mqdes, &location );        
  switch ( location ) {                                               
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( (the_mq_fd->oflag & O_ACCMODE) == O_WRONLY ) {             
   4bb10:	2028 0014      	movel %a0@(20),%d0                          
   4bb14:	7203           	moveq #3,%d1                                
   4bb16:	7801           	moveq #1,%d4                                
   4bb18:	c280           	andl %d0,%d1                                
   4bb1a:	b881           	cmpl %d1,%d4                                
   4bb1c:	6700 00f2      	beqw 4bc10 <_POSIX_Message_queue_Receive_support+0x14c>
        _Thread_Enable_dispatch();                                    
        rtems_set_errno_and_return_minus_one( EBADF );                
      }                                                               
                                                                      
      the_mq = the_mq_fd->Queue;                                      
   4bb20:	2068 0010      	moveal %a0@(16),%a0                         
                                                                      
      if ( msg_len < the_mq->Message_queue.maximum_message_size ) {   
   4bb24:	222e 0010      	movel %fp@(16),%d1                          
   4bb28:	b2a8 0066      	cmpl %a0@(102),%d1                          
   4bb2c:	6500 0098      	bcsw 4bbc6 <_POSIX_Message_queue_Receive_support+0x102>
      length_out = -1;                                                
                                                                      
      /*                                                              
       *  A timed receive with a bad time will do a poll regardless.  
       */                                                             
      if ( wait )                                                     
   4bb30:	4a03           	tstb %d3                                    
   4bb32:	6756           	beqs 4bb8a <_POSIX_Message_queue_Receive_support+0xc6>
   4bb34:	720e           	moveq #14,%d1                               
   4bb36:	e2a8           	lsrl %d1,%d0                                
   4bb38:	7801           	moveq #1,%d4                                
   4bb3a:	b980           	eorl %d4,%d0                                
        do_wait = wait;                                               
                                                                      
      /*                                                              
       *  Now perform the actual message receive                      
       */                                                             
      _CORE_message_queue_Seize(                                      
   4bb3c:	2f2e 001c      	movel %fp@(28),%sp@-                        
      length_out = -1;                                                
                                                                      
      /*                                                              
       *  A timed receive with a bad time will do a poll regardless.  
       */                                                             
      if ( wait )                                                     
   4bb40:	c084           	andl %d4,%d0                                
        do_wait = wait;                                               
                                                                      
      /*                                                              
       *  Now perform the actual message receive                      
       */                                                             
      _CORE_message_queue_Seize(                                      
   4bb42:	2f00           	movel %d0,%sp@-                             
   4bb44:	486e fff8      	pea %fp@(-8)                                
      /*                                                              
       *  Now if something goes wrong, we return a "length" of -1     
       *  to indicate an error.                                       
       */                                                             
                                                                      
      length_out = -1;                                                
   4bb48:	70ff           	moveq #-1,%d0                               
        do_wait = wait;                                               
                                                                      
      /*                                                              
       *  Now perform the actual message receive                      
       */                                                             
      _CORE_message_queue_Seize(                                      
   4bb4a:	2f2e 000c      	movel %fp@(12),%sp@-                        
   4bb4e:	2f02           	movel %d2,%sp@-                             
   4bb50:	4868 001a      	pea %a0@(26)                                
      /*                                                              
       *  Now if something goes wrong, we return a "length" of -1     
       *  to indicate an error.                                       
       */                                                             
                                                                      
      length_out = -1;                                                
   4bb54:	2d40 fff8      	movel %d0,%fp@(-8)                          
        do_wait = wait;                                               
                                                                      
      /*                                                              
       *  Now perform the actual message receive                      
       */                                                             
      _CORE_message_queue_Seize(                                      
   4bb58:	4eb9 0004 de40 	jsr 4de40 <_CORE_message_queue_Seize>       
        &length_out,                                                  
        do_wait,                                                      
        timeout                                                       
      );                                                              
                                                                      
      _Thread_Enable_dispatch();                                      
   4bb5e:	4eb9 0004 f7b8 	jsr 4f7b8 <_Thread_Enable_dispatch>         
      *msg_prio =                                                     
        _POSIX_Message_queue_Priority_from_core(_Thread_Executing->Wait.count);
   4bb64:	2079 0006 8c0e 	moveal 68c0e <_Thread_Executing>,%a0        
        do_wait,                                                      
        timeout                                                       
      );                                                              
                                                                      
      _Thread_Enable_dispatch();                                      
      *msg_prio =                                                     
   4bb6a:	24a8 0024      	movel %a0@(36),%a2@                         
   4bb6e:	6d4e           	blts 4bbbe <_POSIX_Message_queue_Receive_support+0xfa>
        _POSIX_Message_queue_Priority_from_core(_Thread_Executing->Wait.count);
                                                                      
      if ( !_Thread_Executing->Wait.return_code )                     
   4bb70:	4fef 0018      	lea %sp@(24),%sp                            
   4bb74:	4aa8 0034      	tstl %a0@(52)                               
   4bb78:	666c           	bnes 4bbe6 <_POSIX_Message_queue_Receive_support+0x122>
        return length_out;                                            
   4bb7a:	222e fff8      	movel %fp@(-8),%d1                          
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one( EBADF );                      
}                                                                     
   4bb7e:	2001           	movel %d1,%d0                               
   4bb80:	4cee 041c ffe8 	moveml %fp@(-24),%d2-%d4/%a2                
   4bb86:	4e5e           	unlk %fp                                    
   4bb88:	4e75           	rts                                         
        do_wait = wait;                                               
                                                                      
      /*                                                              
       *  Now perform the actual message receive                      
       */                                                             
      _CORE_message_queue_Seize(                                      
   4bb8a:	2f2e 001c      	movel %fp@(28),%sp@-                        <== NOT EXECUTED
      length_out = -1;                                                
                                                                      
      /*                                                              
       *  A timed receive with a bad time will do a poll regardless.  
       */                                                             
      if ( wait )                                                     
   4bb8e:	4280           	clrl %d0                                    <== NOT EXECUTED
        do_wait = wait;                                               
                                                                      
      /*                                                              
       *  Now perform the actual message receive                      
       */                                                             
      _CORE_message_queue_Seize(                                      
   4bb90:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4bb92:	486e fff8      	pea %fp@(-8)                                <== NOT EXECUTED
      /*                                                              
       *  Now if something goes wrong, we return a "length" of -1     
       *  to indicate an error.                                       
       */                                                             
                                                                      
      length_out = -1;                                                
   4bb96:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
        do_wait = wait;                                               
                                                                      
      /*                                                              
       *  Now perform the actual message receive                      
       */                                                             
      _CORE_message_queue_Seize(                                      
   4bb98:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   4bb9c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4bb9e:	4868 001a      	pea %a0@(26)                                <== NOT EXECUTED
      /*                                                              
       *  Now if something goes wrong, we return a "length" of -1     
       *  to indicate an error.                                       
       */                                                             
                                                                      
      length_out = -1;                                                
   4bba2:	2d40 fff8      	movel %d0,%fp@(-8)                          <== NOT EXECUTED
        do_wait = wait;                                               
                                                                      
      /*                                                              
       *  Now perform the actual message receive                      
       */                                                             
      _CORE_message_queue_Seize(                                      
   4bba6:	4eb9 0004 de40 	jsr 4de40 <_CORE_message_queue_Seize>       <== NOT EXECUTED
        &length_out,                                                  
        do_wait,                                                      
        timeout                                                       
      );                                                              
                                                                      
      _Thread_Enable_dispatch();                                      
   4bbac:	4eb9 0004 f7b8 	jsr 4f7b8 <_Thread_Enable_dispatch>         <== NOT EXECUTED
      *msg_prio =                                                     
        _POSIX_Message_queue_Priority_from_core(_Thread_Executing->Wait.count);
   4bbb2:	2079 0006 8c0e 	moveal 68c0e <_Thread_Executing>,%a0        <== NOT EXECUTED
        do_wait,                                                      
        timeout                                                       
      );                                                              
                                                                      
      _Thread_Enable_dispatch();                                      
      *msg_prio =                                                     
   4bbb8:	24a8 0024      	movel %a0@(36),%a2@                         <== NOT EXECUTED
   4bbbc:	6cb2           	bges 4bb70 <_POSIX_Message_queue_Receive_support+0xac><== NOT EXECUTED
   4bbbe:	2212           	movel %a2@,%d1                              
   4bbc0:	4481           	negl %d1                                    
   4bbc2:	2481           	movel %d1,%a2@                              
   4bbc4:	60aa           	bras 4bb70 <_POSIX_Message_queue_Receive_support+0xac>
      }                                                               
                                                                      
      the_mq = the_mq_fd->Queue;                                      
                                                                      
      if ( msg_len < the_mq->Message_queue.maximum_message_size ) {   
        _Thread_Enable_dispatch();                                    
   4bbc6:	4eb9 0004 f7b8 	jsr 4f7b8 <_Thread_Enable_dispatch>         
        rtems_set_errno_and_return_minus_one( EMSGSIZE );             
   4bbcc:	747a           	moveq #122,%d2                              
   4bbce:	4eb9 0005 66ec 	jsr 566ec <__errno>                         
   4bbd4:	72ff           	moveq #-1,%d1                               
   4bbd6:	2040           	moveal %d0,%a0                              
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one( EBADF );                      
}                                                                     
   4bbd8:	2001           	movel %d1,%d0                               
                                                                      
      the_mq = the_mq_fd->Queue;                                      
                                                                      
      if ( msg_len < the_mq->Message_queue.maximum_message_size ) {   
        _Thread_Enable_dispatch();                                    
        rtems_set_errno_and_return_minus_one( EMSGSIZE );             
   4bbda:	2082           	movel %d2,%a0@                              
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one( EBADF );                      
}                                                                     
   4bbdc:	4cee 041c ffe8 	moveml %fp@(-24),%d2-%d4/%a2                
   4bbe2:	4e5e           	unlk %fp                                    
   4bbe4:	4e75           	rts                                         
        _POSIX_Message_queue_Priority_from_core(_Thread_Executing->Wait.count);
                                                                      
      if ( !_Thread_Executing->Wait.return_code )                     
        return length_out;                                            
                                                                      
      rtems_set_errno_and_return_minus_one(                           
   4bbe6:	4eb9 0005 66ec 	jsr 566ec <__errno>                         
   4bbec:	2079 0006 8c0e 	moveal 68c0e <_Thread_Executing>,%a0        
   4bbf2:	2440           	moveal %d0,%a2                              
   4bbf4:	2f28 0034      	movel %a0@(52),%sp@-                        
   4bbf8:	4eb9 0004 bec4 	jsr 4bec4 <_POSIX_Message_queue_Translate_core_message_queue_return_code>
   4bbfe:	588f           	addql #4,%sp                                
   4bc00:	72ff           	moveq #-1,%d1                               
   4bc02:	2480           	movel %d0,%a2@                              
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one( EBADF );                      
}                                                                     
   4bc04:	2001           	movel %d1,%d0                               
   4bc06:	4cee 041c ffe8 	moveml %fp@(-24),%d2-%d4/%a2                
   4bc0c:	4e5e           	unlk %fp                                    
   4bc0e:	4e75           	rts                                         
  the_mq_fd = _POSIX_Message_queue_Get_fd( mqdes, &location );        
  switch ( location ) {                                               
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( (the_mq_fd->oflag & O_ACCMODE) == O_WRONLY ) {             
        _Thread_Enable_dispatch();                                    
   4bc10:	4eb9 0004 f7b8 	jsr 4f7b8 <_Thread_Enable_dispatch>         
        rtems_set_errno_and_return_minus_one( EBADF );                
   4bc16:	7609           	moveq #9,%d3                                
   4bc18:	4eb9 0005 66ec 	jsr 566ec <__errno>                         
   4bc1e:	72ff           	moveq #-1,%d1                               
   4bc20:	2040           	moveal %d0,%a0                              
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one( EBADF );                      
}                                                                     
   4bc22:	2001           	movel %d1,%d0                               
  switch ( location ) {                                               
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( (the_mq_fd->oflag & O_ACCMODE) == O_WRONLY ) {             
        _Thread_Enable_dispatch();                                    
        rtems_set_errno_and_return_minus_one( EBADF );                
   4bc24:	2083           	movel %d3,%a0@                              
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one( EBADF );                      
}                                                                     
   4bc26:	4cee 041c ffe8 	moveml %fp@(-24),%d2-%d4/%a2                
   4bc2c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004b388 <_POSIX_Threads_Sporadic_budget_callout>:                    
                                                                      
RTEMS_INLINE_ROUTINE Priority_Control _POSIX_Priority_To_core(        
  int priority                                                        
)                                                                     
{                                                                     
  return (Priority_Control) (POSIX_SCHEDULER_MAXIMUM_PRIORITY - priority + 1);
   4b388:	4280           	clrl %d0                                    
                                                                      
  /*                                                                  
   *  This will prevent the thread from consuming its entire "budget" 
   *  while at low priority.                                          
   */                                                                 
  the_thread->cpu_time_budget = 0xFFFFFFFF; /* XXX should be based on MAX_U32 */
   4b38a:	72ff           	moveq #-1,%d1                               
 *  _POSIX_Threads_Sporadic_budget_callout                            
 */                                                                   
void _POSIX_Threads_Sporadic_budget_callout(                          
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
   4b38c:	4e56 0000      	linkw %fp,#0                                
   4b390:	206e 0008      	moveal %fp@(8),%a0                          
   4b394:	1039 0005 d7c2 	moveb 5d7c2 <rtems_maximum_priority>,%d0    
  POSIX_API_Control *api;                                             
  uint32_t           new_priority;                                    
                                                                      
  api = the_thread->API_Extensions[ THREAD_API_POSIX ];               
   4b39a:	2268 010e      	moveal %a0@(270),%a1                        
   4b39e:	90a9 0088      	subl %a1@(136),%d0                          
                                                                      
  /*                                                                  
   *  This will prevent the thread from consuming its entire "budget" 
   *  while at low priority.                                          
   */                                                                 
  the_thread->cpu_time_budget = 0xFFFFFFFF; /* XXX should be based on MAX_U32 */
   4b3a2:	2141 0076      	movel %d1,%a0@(118)                         
                                                                      
  new_priority = _POSIX_Priority_To_core(api->schedparam.sched_ss_low_priority);
  the_thread->real_priority = new_priority;                           
   4b3a6:	2140 0018      	movel %d0,%a0@(24)                          
   */                                                                 
  #if 0                                                               
    printk( "callout %d %d %d\n", the_thread->resource_count,         
	the_thread->current_priority, new_priority );                        
  #endif                                                              
  if ( the_thread->resource_count == 0 ) {                            
   4b3aa:	4aa8 001c      	tstl %a0@(28)                               
   4b3ae:	6606           	bnes 4b3b6 <_POSIX_Threads_Sporadic_budget_callout+0x2e>
    /*                                                                
     *  Make sure we are actually lowering it. If they have lowered it
     *  to logically lower than sched_ss_low_priority, then we do not want to
     *  change it.                                                    
     */                                                               
    if ( the_thread->current_priority < new_priority ) {              
   4b3b0:	b0a8 0014      	cmpl %a0@(20),%d0                           
   4b3b4:	6204           	bhis 4b3ba <_POSIX_Threads_Sporadic_budget_callout+0x32>
      #if 0                                                           
        printk( "lower priority\n" );                                 
      #endif                                                          
    }                                                                 
  }                                                                   
}                                                                     
   4b3b6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4b3b8:	4e75           	rts                                         <== NOT EXECUTED
     *  Make sure we are actually lowering it. If they have lowered it
     *  to logically lower than sched_ss_low_priority, then we do not want to
     *  change it.                                                    
     */                                                               
    if ( the_thread->current_priority < new_priority ) {              
      _Thread_Change_priority( the_thread, new_priority, true );      
   4b3ba:	4878 0001      	pea 1 <ADD>                                 
   4b3be:	2f00           	movel %d0,%sp@-                             
   4b3c0:	2f08           	movel %a0,%sp@-                             
   4b3c2:	4eb9 0004 789c 	jsr 4789c <_Thread_Change_priority>         
   4b3c8:	4fef 000c      	lea %sp@(12),%sp                            
      #if 0                                                           
        printk( "lower priority\n" );                                 
      #endif                                                          
    }                                                                 
  }                                                                   
}                                                                     
   4b3cc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00045cc0 <_POSIX_Timer_TSR>:                                          
 *  This is the operation that is run when a timer expires            
 */                                                                   
void _POSIX_Timer_TSR(                                                
  Objects_Id timer __attribute__((unused)),                           
  void *data)                                                         
{                                                                     
   45cc0:	4e56 0000      	linkw %fp,#0                                
   45cc4:	2f0a           	movel %a2,%sp@-                             
   45cc6:	246e 000c      	moveal %fp@(12),%a2                         
  bool                 activated;                                     
                                                                      
  ptimer = (POSIX_Timer_Control *)data;                               
                                                                      
  /* Increment the number of expirations. */                          
  ptimer->overrun = ptimer->overrun + 1;                              
   45cca:	52aa 0066      	addql #1,%a2@(102)                          
                                                                      
  /* The timer must be reprogrammed */                                
  if ( ( ptimer->timer_data.it_interval.tv_sec  != 0 ) ||             
   45cce:	4aaa 0052      	tstl %a2@(82)                               
   45cd2:	6606           	bnes 45cda <_POSIX_Timer_TSR+0x1a>          
       ( ptimer->timer_data.it_interval.tv_nsec != 0 ) ) {            
   45cd4:	4aaa 0056      	tstl %a2@(86)                               
   45cd8:	672a           	beqs 45d04 <_POSIX_Timer_TSR+0x44>          
    activated = _POSIX_Timer_Insert_helper(                           
   45cda:	2f0a           	movel %a2,%sp@-                             
   45cdc:	4879 0004 5cc0 	pea 45cc0 <_POSIX_Timer_TSR>                
   45ce2:	2f2a 0008      	movel %a2@(8),%sp@-                         
   45ce6:	2f2a 0062      	movel %a2@(98),%sp@-                        
   45cea:	486a 0010      	pea %a2@(16)                                
   45cee:	4eb9 0004 bf48 	jsr 4bf48 <_POSIX_Timer_Insert_helper>      
      ptimer->ticks,                                                  
      ptimer->Object.id,                                              
      _POSIX_Timer_TSR,                                               
      ptimer                                                          
    );                                                                
    if ( !activated )                                                 
   45cf4:	4fef 0014      	lea %sp@(20),%sp                            
   45cf8:	4a00           	tstb %d0                                    
   45cfa:	662a           	bnes 45d26 <_POSIX_Timer_TSR+0x66>          
                                                                      
  /* After the signal handler returns, the count of expirations of the
   * timer must be set to 0.                                          
   */                                                                 
  ptimer->overrun = 0;                                                
}                                                                     
   45cfc:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   45d00:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   45d02:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
    /* The state really did not change but just to be safe */         
    ptimer->state = POSIX_TIMER_STATE_CREATE_RUN;                     
  } else {                                                            
   /* Indicates that the timer is stopped */                          
   ptimer->state = POSIX_TIMER_STATE_CREATE_STOP;                     
   45d04:	7004           	moveq #4,%d0                                <== NOT EXECUTED
   45d06:	1540 003c      	moveb %d0,%a2@(60)                          <== NOT EXECUTED
  /*                                                                  
   * The sending of the signal to the process running the handling function
   * specified for that signal is simulated                           
   */                                                                 
                                                                      
  if ( pthread_kill ( ptimer->thread_id, ptimer->inf.sigev_signo ) ) {
   45d0a:	2f2a 0042      	movel %a2@(66),%sp@-                        <== NOT EXECUTED
   45d0e:	2f2a 0038      	movel %a2@(56),%sp@-                        <== NOT EXECUTED
   45d12:	4eb9 0004 ba5c 	jsr 4ba5c <pthread_kill>                    <== NOT EXECUTED
  }                                                                   
                                                                      
  /* After the signal handler returns, the count of expirations of the
   * timer must be set to 0.                                          
   */                                                                 
  ptimer->overrun = 0;                                                
   45d18:	508f           	addql #8,%sp                                <== NOT EXECUTED
   45d1a:	42aa 0066      	clrl %a2@(102)                              <== NOT EXECUTED
}                                                                     
   45d1e:	246e fffc      	moveal %fp@(-4),%a2                         
   45d22:	4e5e           	unlk %fp                                    
   45d24:	4e75           	rts                                         
    );                                                                
    if ( !activated )                                                 
      return;                                                         
                                                                      
    /* Store the time when the timer was started again */             
    _TOD_Get( &ptimer->time );                                        
   45d26:	486a 006a      	pea %a2@(106)                               
   45d2a:	4eb9 0004 7470 	jsr 47470 <_TOD_Get>                        
                                                                      
  /* Increment the number of expirations. */                          
  ptimer->overrun = ptimer->overrun + 1;                              
                                                                      
  /* The timer must be reprogrammed */                                
  if ( ( ptimer->timer_data.it_interval.tv_sec  != 0 ) ||             
   45d30:	588f           	addql #4,%sp                                
                                                                      
    /* Store the time when the timer was started again */             
    _TOD_Get( &ptimer->time );                                        
                                                                      
    /* The state really did not change but just to be safe */         
    ptimer->state = POSIX_TIMER_STATE_CREATE_RUN;                     
   45d32:	7003           	moveq #3,%d0                                
   45d34:	1540 003c      	moveb %d0,%a2@(60)                          
  /*                                                                  
   * The sending of the signal to the process running the handling function
   * specified for that signal is simulated                           
   */                                                                 
                                                                      
  if ( pthread_kill ( ptimer->thread_id, ptimer->inf.sigev_signo ) ) {
   45d38:	2f2a 0042      	movel %a2@(66),%sp@-                        
   45d3c:	2f2a 0038      	movel %a2@(56),%sp@-                        
   45d40:	4eb9 0004 ba5c 	jsr 4ba5c <pthread_kill>                    
  }                                                                   
                                                                      
  /* After the signal handler returns, the count of expirations of the
   * timer must be set to 0.                                          
   */                                                                 
  ptimer->overrun = 0;                                                
   45d46:	508f           	addql #8,%sp                                
   45d48:	42aa 0066      	clrl %a2@(102)                              
   45d4c:	60d0           	bras 45d1e <_POSIX_Timer_TSR+0x5e>          
	...                                                                  
                                                                      
0004e8dc <_POSIX_signals_Clear_process_signals>:                      
  clear_signal = true;                                                
  mask         = signo_to_mask( signo );                              
                                                                      
  ISR_Level  level;                                                   
                                                                      
  _ISR_Disable( level );                                              
   4e8dc:	203c 0000 0700 	movel #1792,%d0                             
 */                                                                   
                                                                      
void _POSIX_signals_Clear_process_signals(                            
  int signo                                                           
)                                                                     
{                                                                     
   4e8e2:	4e56 0000      	linkw %fp,#0                                
   4e8e6:	222e 0008      	movel %fp@(8),%d1                           
   4e8ea:	2f03           	movel %d3,%sp@-                             
   4e8ec:	2f02           	movel %d2,%sp@-                             
  clear_signal = true;                                                
  mask         = signo_to_mask( signo );                              
                                                                      
  ISR_Level  level;                                                   
                                                                      
  _ISR_Disable( level );                                              
   4e8ee:	40c2           	movew %sr,%d2                               
   4e8f0:	8082           	orl %d2,%d0                                 
   4e8f2:	46c0           	movew %d0,%sr                               
    if ( _POSIX_signals_Vectors[ signo ].sa_flags == SA_SIGINFO ) {   
   4e8f4:	2601           	movel %d1,%d3                               
   4e8f6:	2001           	movel %d1,%d0                               
   4e8f8:	41f9 0005 f426 	lea 5f426 <_POSIX_signals_Vectors>,%a0      
   4e8fe:	e58b           	lsll #2,%d3                                 
   4e900:	e988           	lsll #4,%d0                                 
   4e902:	9083           	subl %d3,%d0                                
   4e904:	7602           	moveq #2,%d3                                
   4e906:	b6b0 0800      	cmpl %a0@(00000000,%d0:l),%d3               
   4e90a:	6726           	beqs 4e932 <_POSIX_signals_Clear_process_signals+0x56>
      if ( !_Chain_Is_empty( &_POSIX_signals_Siginfo[ signo ] ) )     
       clear_signal = false;                                          
    }                                                                 
    if ( clear_signal ) {                                             
      _POSIX_signals_Pending &= ~mask;                                
   4e90c:	5381           	subql #1,%d1                                
   4e90e:	7001           	moveq #1,%d0                                
   4e910:	e3a8           	lsll %d1,%d0                                
   4e912:	4680           	notl %d0                                    
   4e914:	c0b9 0005 f61a 	andl 5f61a <_POSIX_signals_Pending>,%d0     
   4e91a:	23c0 0005 f61a 	movel %d0,5f61a <_POSIX_signals_Pending>    
      if ( !_POSIX_signals_Pending )                                  
   4e920:	6606           	bnes 4e928 <_POSIX_signals_Clear_process_signals+0x4c>
	_Thread_Do_post_task_switch_extension--;                             
   4e922:	53b9 0005 f01a 	subql #1,5f01a <_Thread_Do_post_task_switch_extension>
    }                                                                 
  _ISR_Enable( level );                                               
   4e928:	46c2           	movew %d2,%sr                               
}                                                                     
   4e92a:	241f           	movel %sp@+,%d2                             
   4e92c:	261f           	movel %sp@+,%d3                             
   4e92e:	4e5e           	unlk %fp                                    
   4e930:	4e75           	rts                                         
                                                                      
  ISR_Level  level;                                                   
                                                                      
  _ISR_Disable( level );                                              
    if ( _POSIX_signals_Vectors[ signo ].sa_flags == SA_SIGINFO ) {   
      if ( !_Chain_Is_empty( &_POSIX_signals_Siginfo[ signo ] ) )     
   4e932:	0680 0005 f61e 	addil #390686,%d0                           
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Tail(                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
   return (Chain_Node *) &the_chain->permanent_null;                  
   4e938:	2040           	moveal %d0,%a0                              
   4e93a:	5888           	addql #4,%a0                                
   4e93c:	2240           	moveal %d0,%a1                              
   4e93e:	b1d1           	cmpal %a1@,%a0                              
   4e940:	67ca           	beqs 4e90c <_POSIX_signals_Clear_process_signals+0x30>
    if ( clear_signal ) {                                             
      _POSIX_signals_Pending &= ~mask;                                
      if ( !_POSIX_signals_Pending )                                  
	_Thread_Do_post_task_switch_extension--;                             
    }                                                                 
  _ISR_Enable( level );                                               
   4e942:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
}                                                                     
   4e944:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
   4e946:	261f           	movel %sp@+,%d3                             <== NOT EXECUTED
   4e948:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004d770 <_POSIX_signals_Clear_signals>:                              
                                                                      
static inline sigset_t signo_to_mask(                                 
  uint32_t sig                                                        
)                                                                     
{                                                                     
  return 1u << (sig - 1);                                             
   4d770:	7001           	moveq #1,%d0                                
  int                 signo,                                          
  siginfo_t          *info,                                           
  bool                is_global,                                      
  bool                check_blocked                                   
)                                                                     
{                                                                     
   4d772:	4e56 ffe8      	linkw %fp,#-24                              
   4d776:	206e 0008      	moveal %fp@(8),%a0                          
   4d77a:	48d7 0c3c      	moveml %d2-%d5/%a2-%a3,%sp@                 
   4d77e:	242e 000c      	movel %fp@(12),%d2                          
   4d782:	2202           	movel %d2,%d1                               
   4d784:	5381           	subql #1,%d1                                
   4d786:	1a2e 0017      	moveb %fp@(23),%d5                          
   4d78a:	e3a8           	lsll %d1,%d0                                
                                                                      
  /* set blocked signals based on if checking for them, SIGNAL_ALL_MASK
   * insures that no signals are blocked and all are checked.         
   */                                                                 
                                                                      
  if ( check_blocked )                                                
   4d78c:	4a2e 001b      	tstb %fp@(27)                               
   4d790:	664e           	bnes 4d7e0 <_POSIX_signals_Clear_signals+0x70>
   4d792:	78ff           	moveq #-1,%d4                               
    signals_blocked = SIGNAL_ALL_MASK;                                
                                                                      
  /* XXX is this right for siginfo type signals? */                   
  /* XXX are we sure they can be cleared the same way? */             
                                                                      
  _ISR_Disable( level );                                              
   4d794:	223c 0000 0700 	movel #1792,%d1                             
   4d79a:	40c3           	movew %sr,%d3                               
   4d79c:	8283           	orl %d3,%d1                                 
   4d79e:	46c1           	movew %d1,%sr                               
    if ( is_global ) {                                                
   4d7a0:	4a05           	tstb %d5                                    
   4d7a2:	6752           	beqs 4d7f6 <_POSIX_signals_Clear_signals+0x86>
       if ( mask & (_POSIX_signals_Pending & signals_blocked) ) {     
   4d7a4:	c0b9 0005 f61a 	andl 5f61a <_POSIX_signals_Pending>,%d0     
   4d7aa:	c084           	andl %d4,%d0                                
   4d7ac:	676a           	beqs 4d818 <_POSIX_signals_Clear_signals+0xa8>
         if ( _POSIX_signals_Vectors[ signo ].sa_flags == SA_SIGINFO ) {
   4d7ae:	2202           	movel %d2,%d1                               
   4d7b0:	2002           	movel %d2,%d0                               
   4d7b2:	47f9 0004 e8dc 	lea 4e8dc <_POSIX_signals_Clear_process_signals>,%a3
   4d7b8:	41f9 0005 f426 	lea 5f426 <_POSIX_signals_Vectors>,%a0      
   4d7be:	e589           	lsll #2,%d1                                 
   4d7c0:	e988           	lsll #4,%d0                                 
   4d7c2:	9081           	subl %d1,%d0                                
   4d7c4:	7202           	moveq #2,%d1                                
   4d7c6:	b2b0 0800      	cmpl %a0@(00000000,%d0:l),%d1               
   4d7ca:	675a           	beqs 4d826 <_POSIX_signals_Clear_signals+0xb6>
               &psiginfo->Node                                        
             );                                                       
           } else                                                     
             do_callout = false;                                      
         }                                                            
         _POSIX_signals_Clear_process_signals( signo );               
   4d7cc:	2f02           	movel %d2,%sp@-                             
   4d7ce:	4e93           	jsr %a3@                                    
   4d7d0:	588f           	addql #4,%sp                                
   4d7d2:	7001           	moveq #1,%d0                                
      if ( mask & (api->signals_pending & signals_blocked) ) {        
        api->signals_pending &= ~mask;                                
        do_callout = true;                                            
      }                                                               
    }                                                                 
  _ISR_Enable( level );                                               
   4d7d4:	46c3           	movew %d3,%sr                               
  return do_callout;                                                  
}                                                                     
   4d7d6:	4cee 0c3c ffe8 	moveml %fp@(-24),%d2-%d5/%a2-%a3            
   4d7dc:	4e5e           	unlk %fp                                    
   4d7de:	4e75           	rts                                         
  /* set blocked signals based on if checking for them, SIGNAL_ALL_MASK
   * insures that no signals are blocked and all are checked.         
   */                                                                 
                                                                      
  if ( check_blocked )                                                
    signals_blocked = ~api->signals_blocked;                          
   4d7e0:	2828 00cc      	movel %a0@(204),%d4                         
    signals_blocked = SIGNAL_ALL_MASK;                                
                                                                      
  /* XXX is this right for siginfo type signals? */                   
  /* XXX are we sure they can be cleared the same way? */             
                                                                      
  _ISR_Disable( level );                                              
   4d7e4:	223c 0000 0700 	movel #1792,%d1                             
  /* set blocked signals based on if checking for them, SIGNAL_ALL_MASK
   * insures that no signals are blocked and all are checked.         
   */                                                                 
                                                                      
  if ( check_blocked )                                                
    signals_blocked = ~api->signals_blocked;                          
   4d7ea:	4684           	notl %d4                                    
    signals_blocked = SIGNAL_ALL_MASK;                                
                                                                      
  /* XXX is this right for siginfo type signals? */                   
  /* XXX are we sure they can be cleared the same way? */             
                                                                      
  _ISR_Disable( level );                                              
   4d7ec:	40c3           	movew %sr,%d3                               
   4d7ee:	8283           	orl %d3,%d1                                 
   4d7f0:	46c1           	movew %d1,%sr                               
    if ( is_global ) {                                                
   4d7f2:	4a05           	tstb %d5                                    
   4d7f4:	66ae           	bnes 4d7a4 <_POSIX_signals_Clear_signals+0x34>
         }                                                            
         _POSIX_signals_Clear_process_signals( signo );               
         do_callout = true;                                           
       }                                                              
    } else {                                                          
      if ( mask & (api->signals_pending & signals_blocked) ) {        
   4d7f6:	2428 00d0      	movel %a0@(208),%d2                         
   4d7fa:	2200           	movel %d0,%d1                               
   4d7fc:	c282           	andl %d2,%d1                                
   4d7fe:	c284           	andl %d4,%d1                                
   4d800:	6716           	beqs 4d818 <_POSIX_signals_Clear_signals+0xa8>
        api->signals_pending &= ~mask;                                
   4d802:	4680           	notl %d0                                    
   4d804:	c082           	andl %d2,%d0                                
   4d806:	2140 00d0      	movel %d0,%a0@(208)                         
   4d80a:	7001           	moveq #1,%d0                                
        do_callout = true;                                            
      }                                                               
    }                                                                 
  _ISR_Enable( level );                                               
   4d80c:	46c3           	movew %d3,%sr                               
  return do_callout;                                                  
}                                                                     
   4d80e:	4cee 0c3c ffe8 	moveml %fp@(-24),%d2-%d5/%a2-%a3            
   4d814:	4e5e           	unlk %fp                                    
   4d816:	4e75           	rts                                         
         _POSIX_signals_Clear_process_signals( signo );               
         do_callout = true;                                           
       }                                                              
    } else {                                                          
      if ( mask & (api->signals_pending & signals_blocked) ) {        
        api->signals_pending &= ~mask;                                
   4d818:	4200           	clrb %d0                                    
        do_callout = true;                                            
      }                                                               
    }                                                                 
  _ISR_Enable( level );                                               
   4d81a:	46c3           	movew %d3,%sr                               
  return do_callout;                                                  
}                                                                     
   4d81c:	4cee 0c3c ffe8 	moveml %fp@(-24),%d2-%d5/%a2-%a3            
   4d822:	4e5e           	unlk %fp                                    
   4d824:	4e75           	rts                                         
                                                                      
  _ISR_Disable( level );                                              
    if ( is_global ) {                                                
       if ( mask & (_POSIX_signals_Pending & signals_blocked) ) {     
         if ( _POSIX_signals_Vectors[ signo ].sa_flags == SA_SIGINFO ) {
           psiginfo = (POSIX_signals_Siginfo_node *)                  
   4d826:	0680 0005 f61e 	addil #390686,%d0                           
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  return (the_chain->first == _Chain_Tail(the_chain));                
   4d82c:	2040           	moveal %d0,%a0                              
   4d82e:	2458           	moveal %a0@+,%a2                            
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Tail(                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
   return (Chain_Node *) &the_chain->permanent_null;                  
   4d830:	b1ca           	cmpal %a2,%a0                               
   4d832:	6744           	beqs 4d878 <_POSIX_signals_Clear_signals+0x108>
{                                                                     
  Chain_Node  *return_node;                                           
  Chain_Node  *new_first;                                             
                                                                      
  return_node         = the_chain->first;                             
  new_first           = return_node->next;                            
   4d834:	2052           	moveal %a2@,%a0                             
  the_chain->first    = new_first;                                    
   4d836:	2240           	moveal %d0,%a1                              
   4d838:	2288           	movel %a0,%a1@                              
  new_first->previous = _Chain_Head(the_chain);                       
   4d83a:	2140 0004      	movel %d0,%a0@(4)                           
             _Chain_Get_unprotected( &_POSIX_signals_Siginfo[ signo ] );
           _POSIX_signals_Clear_process_signals( signo );             
   4d83e:	2f02           	movel %d2,%sp@-                             
   4d840:	4e93           	jsr %a3@                                    
            *  It may be impossible to get here with an empty chain   
            *  BUT until that is proven we need to be defensive and   
            *  protect against it.                                    
            */                                                        
           if ( psiginfo ) {                                          
             *info = psiginfo->Info;                                  
   4d842:	206e 0010      	moveal %fp@(16),%a0                         
                                                                      
  the_node->next      = _Chain_Tail(the_chain);                       
  old_last_node       = the_chain->last;                              
  the_chain->last     = the_node;                                     
  old_last_node->next = the_node;                                     
  the_node->previous  = old_last_node;                                
   4d846:	588f           	addql #4,%sp                                
   4d848:	20ea 0008      	movel %a2@(8),%a0@+                         
   4d84c:	20ea 000c      	movel %a2@(12),%a0@+                        
   4d850:	20aa 0010      	movel %a2@(16),%a0@                         
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *old_last_node;                                          
                                                                      
  the_node->next      = _Chain_Tail(the_chain);                       
   4d854:	24bc 0005 f5aa 	movel #390570,%a2@                          
  old_last_node       = the_chain->last;                              
   4d85a:	2279 0005 f5ae 	moveal 5f5ae <_POSIX_signals_Inactive_siginfo+0x8>,%a1
  the_chain->last     = the_node;                                     
   4d860:	23ca 0005 f5ae 	movel %a2,5f5ae <_POSIX_signals_Inactive_siginfo+0x8>
  old_last_node->next = the_node;                                     
  the_node->previous  = old_last_node;                                
   4d866:	2549 0004      	movel %a1,%a2@(4)                           
  Chain_Node *old_last_node;                                          
                                                                      
  the_node->next      = _Chain_Tail(the_chain);                       
  old_last_node       = the_chain->last;                              
  the_chain->last     = the_node;                                     
  old_last_node->next = the_node;                                     
   4d86a:	228a           	movel %a2,%a1@                              
               &psiginfo->Node                                        
             );                                                       
           } else                                                     
             do_callout = false;                                      
         }                                                            
         _POSIX_signals_Clear_process_signals( signo );               
   4d86c:	2f02           	movel %d2,%sp@-                             
   4d86e:	4e93           	jsr %a3@                                    
   4d870:	588f           	addql #4,%sp                                
   4d872:	7001           	moveq #1,%d0                                
   4d874:	6000 ff5e      	braw 4d7d4 <_POSIX_signals_Clear_signals+0x64>
    if ( is_global ) {                                                
       if ( mask & (_POSIX_signals_Pending & signals_blocked) ) {     
         if ( _POSIX_signals_Vectors[ signo ].sa_flags == SA_SIGINFO ) {
           psiginfo = (POSIX_signals_Siginfo_node *)                  
             _Chain_Get_unprotected( &_POSIX_signals_Siginfo[ signo ] );
           _POSIX_signals_Clear_process_signals( signo );             
   4d878:	2f02           	movel %d2,%sp@-                             
   4d87a:	4e93           	jsr %a3@                                    
   4d87c:	588f           	addql #4,%sp                                
               &psiginfo->Node                                        
             );                                                       
           } else                                                     
             do_callout = false;                                      
         }                                                            
         _POSIX_signals_Clear_process_signals( signo );               
   4d87e:	2f02           	movel %d2,%sp@-                             
   4d880:	4e93           	jsr %a3@                                    
   4d882:	588f           	addql #4,%sp                                
   4d884:	7001           	moveq #1,%d0                                
   4d886:	6000 ff4c      	braw 4d7d4 <_POSIX_signals_Clear_signals+0x64>
	...                                                                  
                                                                      
00045b88 <_POSIX_signals_Ualarm_TSR>:                                 
                                                                      
void _POSIX_signals_Ualarm_TSR(                                       
  Objects_Id      id __attribute__((unused)),                         
  void           *argument __attribute__((unused))                    
)                                                                     
{                                                                     
   45b88:	4e56 0000      	linkw %fp,#0                                
  /*                                                                  
   * Send a SIGALRM but if there is a problem, ignore it.             
   * It's OK, there isn't a way this should fail.                     
   */                                                                 
  (void) kill( getpid(), SIGALRM );                                   
   45b8c:	4eb9 0004 2a2c 	jsr 42a2c <getpid>                          
   45b92:	4878 000e      	pea e <OPER1+0x2>                           
   45b96:	2f00           	movel %d0,%sp@-                             
   45b98:	4eb9 0004 5884 	jsr 45884 <kill>                            
RTEMS_INLINE_ROUTINE void _Watchdog_Reset(                            
  Watchdog_Control *the_watchdog                                      
)                                                                     
{                                                                     
                                                                      
  (void) _Watchdog_Remove( the_watchdog );                            
   45b9e:	4879 0006 114e 	pea 6114e <_POSIX_signals_Ualarm_timer>     
   45ba4:	4eb9 0004 96fc 	jsr 496fc <_Watchdog_Remove>                
                                                                      
  _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );           
   45baa:	4fef 000c      	lea %sp@(12),%sp                            
   45bae:	203c 0006 114e 	movel #397646,%d0                           
   45bb4:	2d40 000c      	movel %d0,%fp@(12)                          
   45bb8:	203c 0006 0a00 	movel #395776,%d0                           
   45bbe:	2d40 0008      	movel %d0,%fp@(8)                           
                                                                      
  /*                                                                  
   * If the reset interval is non-zero, reschedule ourselves.         
   */                                                                 
  _Watchdog_Reset( &_POSIX_signals_Ualarm_timer );                    
}                                                                     
   45bc2:	4e5e           	unlk %fp                                    
   45bc4:	4ef9 0004 95b4 	jmp 495b4 <_Watchdog_Insert>                
	...                                                                  
                                                                      
0004e97c <_POSIX_signals_Unblock_thread>:                             
   4e97c:	7001           	moveq #1,%d0                                
bool _POSIX_signals_Unblock_thread(                                   
  Thread_Control  *the_thread,                                        
  int              signo,                                             
  siginfo_t       *info                                               
)                                                                     
{                                                                     
   4e97e:	4e56 fff4      	linkw %fp,#-12                              
   4e982:	222e 000c      	movel %fp@(12),%d1                          
   4e986:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
   4e98a:	246e 0008      	moveal %fp@(8),%a2                          
   4e98e:	2601           	movel %d1,%d3                               
   4e990:	5383           	subql #1,%d3                                
                                                                      
  /*                                                                  
   *  Is the thread is specifically waiting for a signal?             
   */                                                                 
                                                                      
  if ( _States_Is_interruptible_signal( the_thread->current_state ) ) {
   4e992:	242a 0010      	movel %a2@(16),%d2                          
   4e996:	0282 1000 8000 	andil #268468224,%d2                        
bool _POSIX_signals_Unblock_thread(                                   
  Thread_Control  *the_thread,                                        
  int              signo,                                             
  siginfo_t       *info                                               
)                                                                     
{                                                                     
   4e99c:	226e 0010      	moveal %fp@(16),%a1                         
  POSIX_API_Control  *api;                                            
  sigset_t            mask;                                           
  siginfo_t          *the_info = NULL;                                
                                                                      
  api = the_thread->API_Extensions[ THREAD_API_POSIX ];               
   4e9a0:	206a 010e      	moveal %a2@(270),%a0                        
   4e9a4:	e7a8           	lsll %d3,%d0                                
                                                                      
  /*                                                                  
   *  Is the thread is specifically waiting for a signal?             
   */                                                                 
                                                                      
  if ( _States_Is_interruptible_signal( the_thread->current_state ) ) {
   4e9a6:	0c82 1000 8000 	cmpil #268468224,%d2                        
   4e9ac:	6772           	beqs 4ea20 <_POSIX_signals_Unblock_thread+0xa4>
  }                                                                   
                                                                      
  /*                                                                  
   *  Thread is not waiting due to a sigwait.                         
   */                                                                 
  if ( ~api->signals_blocked & mask ) {                               
   4e9ae:	2228 00cc      	movel %a0@(204),%d1                         
   4e9b2:	4681           	notl %d1                                    
   4e9b4:	c081           	andl %d1,%d0                                
   4e9b6:	675c           	beqs 4ea14 <_POSIX_signals_Unblock_thread+0x98>
     *    + Any other combination, do nothing.                        
     */                                                               
                                                                      
    the_thread->do_post_task_switch_extension = true;                 
                                                                      
    if ( the_thread->current_state & STATES_INTERRUPTIBLE_BY_SIGNAL ) {
   4e9b8:	202a 0010      	movel %a2@(16),%d0                          
     *      it is not blocked, THEN                                   
     *        we need to dispatch at the end of this ISR.             
     *    + Any other combination, do nothing.                        
     */                                                               
                                                                      
    the_thread->do_post_task_switch_extension = true;                 
   4e9bc:	7201           	moveq #1,%d1                                
   4e9be:	1541 0074      	moveb %d1,%a2@(116)                         
                                                                      
    if ( the_thread->current_state & STATES_INTERRUPTIBLE_BY_SIGNAL ) {
   4e9c2:	0800 001c      	btst #28,%d0                                
   4e9c6:	6736           	beqs 4e9fe <_POSIX_signals_Unblock_thread+0x82>
      the_thread->Wait.return_code = EINTR;                           
   4e9c8:	7004           	moveq #4,%d0                                
   4e9ca:	2540 0034      	movel %d0,%a2@(52)                          
      #if 0                                                           
	if ( _States_Is_waiting_on_thread_queue(the_thread->current_state) ) 
	  _Thread_queue_Extract_with_proxy( the_thread );                    
	else                                                                 
      #endif                                                          
	  if ( _States_Is_delaying(the_thread->current_state) ){             
   4e9ce:	103c 0008      	moveb #8,%d0                                
   4e9d2:	c0aa 0010      	andl %a2@(16),%d0                           
   4e9d6:	673c           	beqs 4ea14 <_POSIX_signals_Unblock_thread+0x98>
	    if ( _Watchdog_Is_active( &the_thread->Timer ) )                 
   4e9d8:	7202           	moveq #2,%d1                                
   4e9da:	b2aa 0050      	cmpl %a2@(80),%d1                           
   4e9de:	6700 00a4      	beqw 4ea84 <_POSIX_signals_Unblock_thread+0x108>
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unblock (                           
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
  _Thread_Clear_state( the_thread, STATES_BLOCKED );                  
   4e9e2:	2f3c 1003 fff8 	movel #268697592,%sp@-                      <== NOT EXECUTED
   4e9e8:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4e9ea:	4eb9 0004 79e8 	jsr 479e8 <_Thread_Clear_state>             <== NOT EXECUTED
   4e9f0:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4e9f2:	4200           	clrb %d0                                    <== NOT EXECUTED
      if ( _ISR_Is_in_progress() && _Thread_Is_executing( the_thread ) )
	_ISR_Signals_to_thread_executing = true;                             
    }                                                                 
  }                                                                   
  return false;                                                       
}                                                                     
   4e9f4:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   4e9fa:	4e5e           	unlk %fp                                    
   4e9fc:	4e75           	rts                                         
	  if ( _States_Is_delaying(the_thread->current_state) ){             
	    if ( _Watchdog_Is_active( &the_thread->Timer ) )                 
	      (void) _Watchdog_Remove( &the_thread->Timer );                 
	    _Thread_Unblock( the_thread );                                   
	  }                                                                  
    } else if ( the_thread->current_state == STATES_READY ) {         
   4e9fe:	4a80           	tstl %d0                                    
   4ea00:	6612           	bnes 4ea14 <_POSIX_signals_Unblock_thread+0x98>
      if ( _ISR_Is_in_progress() && _Thread_Is_executing( the_thread ) )
   4ea02:	2039 0005 f012 	movel 5f012 <_ISR_Nest_level>,%d0           
   4ea08:	670a           	beqs 4ea14 <_POSIX_signals_Unblock_thread+0x98>
   4ea0a:	b5f9 0005 f032 	cmpal 5f032 <_Thread_Executing>,%a2         
   4ea10:	6700 0094      	beqw 4eaa6 <_POSIX_signals_Unblock_thread+0x12a>
	_ISR_Signals_to_thread_executing = true;                             
    }                                                                 
  }                                                                   
  return false;                                                       
}                                                                     
   4ea14:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
	      (void) _Watchdog_Remove( &the_thread->Timer );                 
	    _Thread_Unblock( the_thread );                                   
	  }                                                                  
    } else if ( the_thread->current_state == STATES_READY ) {         
      if ( _ISR_Is_in_progress() && _Thread_Is_executing( the_thread ) )
	_ISR_Signals_to_thread_executing = true;                             
   4ea1a:	4200           	clrb %d0                                    
    }                                                                 
  }                                                                   
  return false;                                                       
}                                                                     
   4ea1c:	4e5e           	unlk %fp                                    
   4ea1e:	4e75           	rts                                         
   *  Is the thread is specifically waiting for a signal?             
   */                                                                 
                                                                      
  if ( _States_Is_interruptible_signal( the_thread->current_state ) ) {
                                                                      
    if ( (the_thread->Wait.option & mask) || (~api->signals_blocked & mask) ) {
   4ea20:	2400           	movel %d0,%d2                               
   4ea22:	c4aa 0030      	andl %a2@(48),%d2                           
   4ea26:	672a           	beqs 4ea52 <_POSIX_signals_Unblock_thread+0xd6>
      the_thread->Wait.return_code = EINTR;                           
   4ea28:	7004           	moveq #4,%d0                                
                                                                      
      the_info = (siginfo_t *) the_thread->Wait.return_argument;      
   4ea2a:	206a 0028      	moveal %a2@(40),%a0                         
   */                                                                 
                                                                      
  if ( _States_Is_interruptible_signal( the_thread->current_state ) ) {
                                                                      
    if ( (the_thread->Wait.option & mask) || (~api->signals_blocked & mask) ) {
      the_thread->Wait.return_code = EINTR;                           
   4ea2e:	2540 0034      	movel %d0,%a2@(52)                          
                                                                      
      the_info = (siginfo_t *) the_thread->Wait.return_argument;      
                                                                      
      if ( !info ) {                                                  
   4ea32:	4a89           	tstl %a1                                    
   4ea34:	6734           	beqs 4ea6a <_POSIX_signals_Unblock_thread+0xee>
        the_info->si_signo = signo;                                   
        the_info->si_code = SI_USER;                                  
        the_info->si_value.sival_int = 0;                             
      } else {                                                        
        *the_info = *info;                                            
   4ea36:	20d9           	movel %a1@+,%a0@+                           
   4ea38:	20d9           	movel %a1@+,%a0@+                           
   4ea3a:	2091           	movel %a1@,%a0@                             
      }                                                               
                                                                      
      _Thread_queue_Extract_with_proxy( the_thread );                 
   4ea3c:	2f0a           	movel %a2,%sp@-                             
   4ea3e:	4eb9 0004 852c 	jsr 4852c <_Thread_queue_Extract_with_proxy>
      return true;                                                    
   4ea44:	588f           	addql #4,%sp                                
        the_info->si_value.sival_int = 0;                             
      } else {                                                        
        *the_info = *info;                                            
      }                                                               
                                                                      
      _Thread_queue_Extract_with_proxy( the_thread );                 
   4ea46:	7001           	moveq #1,%d0                                
      if ( _ISR_Is_in_progress() && _Thread_Is_executing( the_thread ) )
	_ISR_Signals_to_thread_executing = true;                             
    }                                                                 
  }                                                                   
  return false;                                                       
}                                                                     
   4ea48:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   4ea4e:	4e5e           	unlk %fp                                    
   4ea50:	4e75           	rts                                         
   *  Is the thread is specifically waiting for a signal?             
   */                                                                 
                                                                      
  if ( _States_Is_interruptible_signal( the_thread->current_state ) ) {
                                                                      
    if ( (the_thread->Wait.option & mask) || (~api->signals_blocked & mask) ) {
   4ea52:	2428 00cc      	movel %a0@(204),%d2                         
   4ea56:	4682           	notl %d2                                    
   4ea58:	c082           	andl %d2,%d0                                
   4ea5a:	67b8           	beqs 4ea14 <_POSIX_signals_Unblock_thread+0x98>
      the_thread->Wait.return_code = EINTR;                           
   4ea5c:	7004           	moveq #4,%d0                                
                                                                      
      the_info = (siginfo_t *) the_thread->Wait.return_argument;      
   4ea5e:	206a 0028      	moveal %a2@(40),%a0                         
   */                                                                 
                                                                      
  if ( _States_Is_interruptible_signal( the_thread->current_state ) ) {
                                                                      
    if ( (the_thread->Wait.option & mask) || (~api->signals_blocked & mask) ) {
      the_thread->Wait.return_code = EINTR;                           
   4ea62:	2540 0034      	movel %d0,%a2@(52)                          
                                                                      
      the_info = (siginfo_t *) the_thread->Wait.return_argument;      
                                                                      
      if ( !info ) {                                                  
   4ea66:	4a89           	tstl %a1                                    
   4ea68:	66cc           	bnes 4ea36 <_POSIX_signals_Unblock_thread+0xba>
        the_info->si_signo = signo;                                   
   4ea6a:	2081           	movel %d1,%a0@                              
        the_info->si_code = SI_USER;                                  
   4ea6c:	7201           	moveq #1,%d1                                
        the_info->si_value.sival_int = 0;                             
   4ea6e:	42a8 0008      	clrl %a0@(8)                                
                                                                      
      the_info = (siginfo_t *) the_thread->Wait.return_argument;      
                                                                      
      if ( !info ) {                                                  
        the_info->si_signo = signo;                                   
        the_info->si_code = SI_USER;                                  
   4ea72:	2141 0004      	movel %d1,%a0@(4)                           
        the_info->si_value.sival_int = 0;                             
      } else {                                                        
        *the_info = *info;                                            
      }                                                               
                                                                      
      _Thread_queue_Extract_with_proxy( the_thread );                 
   4ea76:	2f0a           	movel %a2,%sp@-                             
   4ea78:	4eb9 0004 852c 	jsr 4852c <_Thread_queue_Extract_with_proxy>
      return true;                                                    
   4ea7e:	588f           	addql #4,%sp                                
        the_info->si_value.sival_int = 0;                             
      } else {                                                        
        *the_info = *info;                                            
      }                                                               
                                                                      
      _Thread_queue_Extract_with_proxy( the_thread );                 
   4ea80:	7001           	moveq #1,%d0                                
   4ea82:	60c4           	bras 4ea48 <_POSIX_signals_Unblock_thread+0xcc>
	  _Thread_queue_Extract_with_proxy( the_thread );                    
	else                                                                 
      #endif                                                          
	  if ( _States_Is_delaying(the_thread->current_state) ){             
	    if ( _Watchdog_Is_active( &the_thread->Timer ) )                 
	      (void) _Watchdog_Remove( &the_thread->Timer );                 
   4ea84:	486a 0048      	pea %a2@(72)                                
   4ea88:	4eb9 0004 90a4 	jsr 490a4 <_Watchdog_Remove>                
   4ea8e:	588f           	addql #4,%sp                                
   4ea90:	2f3c 1003 fff8 	movel #268697592,%sp@-                      
   4ea96:	2f0a           	movel %a2,%sp@-                             
   4ea98:	4eb9 0004 79e8 	jsr 479e8 <_Thread_Clear_state>             
   4ea9e:	508f           	addql #8,%sp                                
   4eaa0:	4200           	clrb %d0                                    
   4eaa2:	6000 ff50      	braw 4e9f4 <_POSIX_signals_Unblock_thread+0x78>
	    _Thread_Unblock( the_thread );                                   
	  }                                                                  
    } else if ( the_thread->current_state == STATES_READY ) {         
      if ( _ISR_Is_in_progress() && _Thread_Is_executing( the_thread ) )
	_ISR_Signals_to_thread_executing = true;                             
   4eaa6:	7001           	moveq #1,%d0                                
    }                                                                 
  }                                                                   
  return false;                                                       
}                                                                     
   4eaa8:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   4eaae:	4e5e           	unlk %fp                                    
	      (void) _Watchdog_Remove( &the_thread->Timer );                 
	    _Thread_Unblock( the_thread );                                   
	  }                                                                  
    } else if ( the_thread->current_state == STATES_READY ) {         
      if ( _ISR_Is_in_progress() && _Thread_Is_executing( the_thread ) )
	_ISR_Signals_to_thread_executing = true;                             
   4eab0:	13c0 0005 f0c0 	moveb %d0,5f0c0 <_ISR_Signals_to_thread_executing>
   4eab6:	4200           	clrb %d0                                    
    }                                                                 
  }                                                                   
  return false;                                                       
}                                                                     
	...                                                                  
                                                                      
00046150 <_RTEMS_tasks_Initialize_user_tasks_body>:                   
 *                                                                    
 *  Output parameters:  NONE                                          
 */                                                                   
                                                                      
void _RTEMS_tasks_Initialize_user_tasks_body( void )                  
{                                                                     
   46150:	4e56 ffe4      	linkw %fp,#-28                              
   46154:	48d7 1c1c      	moveml %d2-%d4/%a2-%a4,%sp@                 
  rtems_initialization_tasks_table *user_tasks;                       
                                                                      
  /*                                                                  
   *  Move information into local variables                           
   */                                                                 
  user_tasks = Configuration_RTEMS_API.User_initialization_tasks_table;
   46158:	2479 0005 d7ba 	moveal 5d7ba <Configuration_RTEMS_API+0x2a>,%a2
  maximum    = Configuration_RTEMS_API.number_of_initialization_tasks;
   4615e:	2639 0005 d7b6 	movel 5d7b6 <Configuration_RTEMS_API+0x26>,%d3
                                                                      
  /*                                                                  
   *  Verify that we have a set of user tasks to iterate              
   */                                                                 
  if ( !user_tasks )                                                  
   46164:	4a8a           	tstl %a2                                    
   46166:	6754           	beqs 461bc <_RTEMS_tasks_Initialize_user_tasks_body+0x6c>
    return;                                                           
                                                                      
  /*                                                                  
   *  Now iterate over the initialization tasks and create/start them.
   */                                                                 
  for ( index=0 ; index < maximum ; index++ ) {                       
   46168:	4a83           	tstl %d3                                    
   4616a:	6750           	beqs 461bc <_RTEMS_tasks_Initialize_user_tasks_body+0x6c>
   4616c:	280e           	movel %fp,%d4                               
   4616e:	4282           	clrl %d2                                    
   46170:	5984           	subql #4,%d4                                
   46172:	47f9 0004 5f24 	lea 45f24 <rtems_task_create>,%a3           
      &id                                                             
    );                                                                
    if ( !rtems_is_status_successful( return_value ) )                
      _Internal_error_Occurred( INTERNAL_ERROR_RTEMS_API, true, return_value );
                                                                      
    return_value = rtems_task_start(                                  
   46178:	49f9 0004 61d8 	lea 461d8 <rtems_task_start>,%a4            
                                                                      
  /*                                                                  
   *  Now iterate over the initialization tasks and create/start them.
   */                                                                 
  for ( index=0 ; index < maximum ; index++ ) {                       
    return_value = rtems_task_create(                                 
   4617e:	2f04           	movel %d4,%sp@-                             
   46180:	2f2a 000c      	movel %a2@(12),%sp@-                        
   46184:	2f2a 0014      	movel %a2@(20),%sp@-                        
   46188:	2f2a 0004      	movel %a2@(4),%sp@-                         
   4618c:	2f2a 0008      	movel %a2@(8),%sp@-                         
   46190:	2f12           	movel %a2@,%sp@-                            
   46192:	4e93           	jsr %a3@                                    
      user_tasks[ index ].stack_size,                                 
      user_tasks[ index ].mode_set,                                   
      user_tasks[ index ].attribute_set,                              
      &id                                                             
    );                                                                
    if ( !rtems_is_status_successful( return_value ) )                
   46194:	4fef 0018      	lea %sp@(24),%sp                            
   46198:	4a80           	tstl %d0                                    
   4619a:	662a           	bnes 461c6 <_RTEMS_tasks_Initialize_user_tasks_body+0x76>
      _Internal_error_Occurred( INTERNAL_ERROR_RTEMS_API, true, return_value );
                                                                      
    return_value = rtems_task_start(                                  
   4619c:	2f2a 0018      	movel %a2@(24),%sp@-                        
   461a0:	2f2a 0010      	movel %a2@(16),%sp@-                        
   461a4:	2f2e fffc      	movel %fp@(-4),%sp@-                        
   461a8:	4e94           	jsr %a4@                                    
      id,                                                             
      user_tasks[ index ].entry_point,                                
      user_tasks[ index ].argument                                    
    );                                                                
    if ( !rtems_is_status_successful( return_value ) )                
   461aa:	4fef 000c      	lea %sp@(12),%sp                            
   461ae:	4a80           	tstl %d0                                    
   461b0:	6614           	bnes 461c6 <_RTEMS_tasks_Initialize_user_tasks_body+0x76>
    return;                                                           
                                                                      
  /*                                                                  
   *  Now iterate over the initialization tasks and create/start them.
   */                                                                 
  for ( index=0 ; index < maximum ; index++ ) {                       
   461b2:	5282           	addql #1,%d2                                
   461b4:	45ea 001c      	lea %a2@(28),%a2                            
   461b8:	b483           	cmpl %d3,%d2                                
   461ba:	65c2           	bcss 4617e <_RTEMS_tasks_Initialize_user_tasks_body+0x2e>
      user_tasks[ index ].argument                                    
    );                                                                
    if ( !rtems_is_status_successful( return_value ) )                
      _Internal_error_Occurred( INTERNAL_ERROR_RTEMS_API, true, return_value );
  }                                                                   
}                                                                     
   461bc:	4cee 1c1c ffe4 	moveml %fp@(-28),%d2-%d4/%a2-%a4            
   461c2:	4e5e           	unlk %fp                                    
   461c4:	4e75           	rts                                         
      id,                                                             
      user_tasks[ index ].entry_point,                                
      user_tasks[ index ].argument                                    
    );                                                                
    if ( !rtems_is_status_successful( return_value ) )                
      _Internal_error_Occurred( INTERNAL_ERROR_RTEMS_API, true, return_value );
   461c6:	2f00           	movel %d0,%sp@-                             
   461c8:	4878 0001      	pea 1 <ADD>                                 
   461cc:	4878 0001      	pea 1 <ADD>                                 
   461d0:	4eb9 0004 6fcc 	jsr 46fcc <_Internal_error_Occurred>        
	...                                                                  
                                                                      
000485c8 <_TOD_Set>:                                                  
 */                                                                   
                                                                      
void _TOD_Set(                                                        
  const struct timespec *time                                         
)                                                                     
{                                                                     
   485c8:	4e56 0000      	linkw %fp,#0                                
   485cc:	2039 0006 9598 	movel 69598 <_Thread_Dispatch_disable_level>,%d0
   485d2:	5280           	addql #1,%d0                                
   485d4:	2f0a           	movel %a2,%sp@-                             
   485d6:	246e 0008      	moveal %fp@(8),%a2                          
   485da:	23c0 0006 9598 	movel %d0,69598 <_Thread_Dispatch_disable_level>
  long seconds;                                                       
                                                                      
  _Thread_Disable_dispatch();                                         
  _TOD_Deactivate();                                                  
                                                                      
  seconds = _TOD_Seconds_since_epoch();                               
   485e0:	2039 0006 962a 	movel 6962a <_TOD_Now>,%d0                  
                                                                      
  if ( time->tv_sec < seconds )                                       
   485e6:	2212           	movel %a2@,%d1                              
   485e8:	b280           	cmpl %d0,%d1                                
   485ea:	6d38           	blts 48624 <_TOD_Set+0x5c>                  
  Watchdog_Adjust_directions direction,                               
  Watchdog_Interval          units                                    
)                                                                     
{                                                                     
                                                                      
  _Watchdog_Adjust( &_Watchdog_Seconds_chain, direction, units );     
   485ec:	9280           	subl %d0,%d1                                
   485ee:	2f01           	movel %d1,%sp@-                             
   485f0:	42a7           	clrl %sp@-                                  
   485f2:	4879 0006 9664 	pea 69664 <_Watchdog_Seconds_chain>         
   485f8:	4eb9 0004 acbc 	jsr 4acbc <_Watchdog_Adjust>                
    _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 );           
   485fe:	23d2 0006 962a 	movel %a2@,6962a <_TOD_Now>                 
   48604:	588a           	addql #4,%a2                                
   48606:	4fef 000c      	lea %sp@(12),%sp                            
   4860a:	23d2 0006 962e 	movel %a2@,6962e <_TOD_Now+0x4>             
  _TOD_Is_set = true;                                                 
                                                                      
  _TOD_Activate();                                                    
                                                                      
  _Thread_Enable_dispatch();                                          
}                                                                     
   48610:	246e fffc      	moveal %fp@(-4),%a2                         
   48614:	4e5e           	unlk %fp                                    
  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;                                                 
   48616:	7001           	moveq #1,%d0                                
   48618:	13c0 0006 95ac 	moveb %d0,695ac <_TOD_Is_set>               
                                                                      
  _TOD_Activate();                                                    
                                                                      
  _Thread_Enable_dispatch();                                          
   4861e:	4ef9 0004 9910 	jmp 49910 <_Thread_Enable_dispatch>         
   48624:	9081           	subl %d1,%d0                                
   48626:	2f00           	movel %d0,%sp@-                             
   48628:	4878 0001      	pea 1 <ADD>                                 
   4862c:	4879 0006 9664 	pea 69664 <_Watchdog_Seconds_chain>         
   48632:	4eb9 0004 acbc 	jsr 4acbc <_Watchdog_Adjust>                
    _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 );           
   48638:	23d2 0006 962a 	movel %a2@,6962a <_TOD_Now>                 
   4863e:	588a           	addql #4,%a2                                
   48640:	4fef 000c      	lea %sp@(12),%sp                            
   48644:	23d2 0006 962e 	movel %a2@,6962e <_TOD_Now+0x4>             
  _TOD_Is_set = true;                                                 
                                                                      
  _TOD_Activate();                                                    
                                                                      
  _Thread_Enable_dispatch();                                          
}                                                                     
   4864a:	246e fffc      	moveal %fp@(-4),%a2                         
   4864e:	4e5e           	unlk %fp                                    
  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;                                                 
   48650:	7001           	moveq #1,%d0                                
   48652:	13c0 0006 95ac 	moveb %d0,695ac <_TOD_Is_set>               
                                                                      
  _TOD_Activate();                                                    
                                                                      
  _Thread_Enable_dispatch();                                          
   48658:	4ef9 0004 9910 	jmp 49910 <_Thread_Enable_dispatch>         
	...                                                                  
                                                                      
000479e8 <_Thread_Clear_state>:                                       
)                                                                     
{                                                                     
  ISR_Level       level;                                              
  States_Control  current_state;                                      
                                                                      
  _ISR_Disable( level );                                              
   479e8:	327c 0700      	moveaw #1792,%a1                            
   479ec:	2009           	movel %a1,%d0                               
                                                                      
void _Thread_Clear_state(                                             
  Thread_Control *the_thread,                                         
  States_Control  state                                               
)                                                                     
{                                                                     
   479ee:	4e56 ffec      	linkw %fp,#-20                              
   479f2:	206e 0008      	moveal %fp@(8),%a0                          
   479f6:	48d7 1c0c      	moveml %d2-%d3/%a2-%a4,%sp@                 
   479fa:	242e 000c      	movel %fp@(12),%d2                          
  ISR_Level       level;                                              
  States_Control  current_state;                                      
                                                                      
  _ISR_Disable( level );                                              
   479fe:	40c3           	movew %sr,%d3                               
   47a00:	8083           	orl %d3,%d0                                 
   47a02:	46c0           	movew %d0,%sr                               
    current_state = the_thread->current_state;                        
   47a04:	2228 0010      	movel %a0@(16),%d1                          
                                                                      
    if ( current_state & state ) {                                    
   47a08:	2002           	movel %d2,%d0                               
   47a0a:	c081           	andl %d1,%d0                                
   47a0c:	6776           	beqs 47a84 <_Thread_Clear_state+0x9c>       
RTEMS_INLINE_ROUTINE States_Control _States_Clear (                   
  States_Control states_to_clear,                                     
  States_Control current_state                                        
)                                                                     
{                                                                     
   return (current_state & ~states_to_clear);                         
   47a0e:	2002           	movel %d2,%d0                               
   47a10:	4680           	notl %d0                                    
   47a12:	c081           	andl %d1,%d0                                
      current_state =                                                 
   47a14:	2140 0010      	movel %d0,%a0@(16)                          
      the_thread->current_state = _States_Clear( state, current_state );
                                                                      
      if ( _States_Is_ready( current_state ) ) {                      
   47a18:	666a           	bnes 47a84 <_Thread_Clear_state+0x9c>       
                                                                      
RTEMS_INLINE_ROUTINE void _Priority_Add_to_bit_map (                  
  Priority_Information *the_priority_map                              
)                                                                     
{                                                                     
  *the_priority_map->minor |= the_priority_map->ready_minor;          
   47a1a:	2868 008e      	moveal %a0@(142),%a4                        
   47a1e:	3028 0094      	movew %a0@(148),%d0                         
   47a22:	3214           	movew %a4@,%d1                              
                                                                      
        _Priority_Add_to_bit_map( &the_thread->Priority_map );        
                                                                      
        _Chain_Append_unprotected(the_thread->ready, &the_thread->Object.Node);
   47a24:	2468 008a      	moveal %a0@(138),%a2                        
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *old_last_node;                                          
                                                                      
  the_node->next      = _Chain_Tail(the_chain);                       
   47a28:	240a           	movel %a2,%d2                               
   47a2a:	5882           	addql #4,%d2                                
   47a2c:	8081           	orl %d1,%d0                                 
   47a2e:	2082           	movel %d2,%a0@                              
  old_last_node       = the_chain->last;                              
   47a30:	266a 0008      	moveal %a2@(8),%a3                          
   47a34:	3880           	movew %d0,%a4@                              
  the_chain->last     = the_node;                                     
   47a36:	2548 0008      	movel %a0,%a2@(8)                           
  _Priority_Major_bit_map  |= the_priority_map->ready_major;          
   47a3a:	3239 0005 f028 	movew 5f028 <_Priority_Major_bit_map>,%d1   
   47a40:	3028 0092      	movew %a0@(146),%d0                         
  old_last_node->next = the_node;                                     
  the_node->previous  = old_last_node;                                
   47a44:	214b 0004      	movel %a3,%a0@(4)                           
   47a48:	8081           	orl %d1,%d0                                 
  Chain_Node *old_last_node;                                          
                                                                      
  the_node->next      = _Chain_Tail(the_chain);                       
  old_last_node       = the_chain->last;                              
  the_chain->last     = the_node;                                     
  old_last_node->next = the_node;                                     
   47a4a:	2688           	movel %a0,%a3@                              
   47a4c:	33c0 0005 f028 	movew %d0,5f028 <_Priority_Major_bit_map>   
                                                                      
        _ISR_Flash( level );                                          
   47a52:	2009           	movel %a1,%d0                               
   47a54:	46c3           	movew %d3,%sr                               
   47a56:	8083           	orl %d3,%d0                                 
   47a58:	46c0           	movew %d0,%sr                               
         *    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 ) {
   47a5a:	2028 0014      	movel %a0@(20),%d0                          
   47a5e:	2279 0005 f006 	moveal 5f006 <_Thread_Heir>,%a1             
   47a64:	b0a9 0014      	cmpl %a1@(20),%d0                           
   47a68:	641a           	bccs 47a84 <_Thread_Clear_state+0x9c>       
          _Thread_Heir = the_thread;                                  
   47a6a:	23c8 0005 f006 	movel %a0,5f006 <_Thread_Heir>              
          if ( _Thread_Executing->is_preemptible ||                   
   47a70:	2079 0005 f032 	moveal 5f032 <_Thread_Executing>,%a0        
   47a76:	4a28 0075      	tstb %a0@(117)                              
   47a7a:	6712           	beqs 47a8e <_Thread_Clear_state+0xa6>       
               the_thread->current_priority == 0 )                    
            _Context_Switch_necessary = true;                         
   47a7c:	7001           	moveq #1,%d0                                
   47a7e:	13c0 0005 f042 	moveb %d0,5f042 <_Context_Switch_necessary> 
        }                                                             
      }                                                               
  }                                                                   
  _ISR_Enable( level );                                               
   47a84:	46c3           	movew %d3,%sr                               
}                                                                     
   47a86:	4cd7 1c0c      	moveml %sp@,%d2-%d3/%a2-%a4                 
   47a8a:	4e5e           	unlk %fp                                    
   47a8c:	4e75           	rts                                         
         *    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 ) {
          _Thread_Heir = the_thread;                                  
          if ( _Thread_Executing->is_preemptible ||                   
   47a8e:	4a80           	tstl %d0                                    
   47a90:	66f2           	bnes 47a84 <_Thread_Clear_state+0x9c>       
               the_thread->current_priority == 0 )                    
            _Context_Switch_necessary = true;                         
   47a92:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   47a94:	13c0 0005 f042 	moveb %d0,5f042 <_Context_Switch_necessary> <== NOT EXECUTED
   47a9a:	60e8           	bras 47a84 <_Thread_Clear_state+0x9c>       <== NOT EXECUTED
                                                                      
00047a9c <_Thread_Close>:                                             
   47a9c:	4280           	clrl %d0                                    
                                                                      
void _Thread_Close(                                                   
  Objects_Information  *information,                                  
  Thread_Control       *the_thread                                    
)                                                                     
{                                                                     
   47a9e:	4e56 0000      	linkw %fp,#0                                
   47aa2:	2f0b           	movel %a3,%sp@-                             
   47aa4:	266e 0008      	moveal %fp@(8),%a3                          
   47aa8:	2f0a           	movel %a2,%sp@-                             
   47aaa:	246e 000c      	moveal %fp@(12),%a2                         
   47aae:	206b 0018      	moveal %a3@(24),%a0                         
   47ab2:	302a 000a      	movew %a2@(10),%d0                          
   47ab6:	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;                                
   47aba:	2039 0005 ef78 	movel 5ef78 <_Thread_Dispatch_disable_level>,%d0
   47ac0:	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 );                       
   47ac2:	2f0a           	movel %a2,%sp@-                             
   47ac4:	23c0 0005 ef78 	movel %d0,5ef78 <_Thread_Dispatch_disable_level>
   47aca:	4eb9 0004 8e90 	jsr 48e90 <_User_extensions_Thread_delete>  
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   47ad0:	2039 0005 ef78 	movel 5ef78 <_Thread_Dispatch_disable_level>,%d0
   47ad6:	5280           	addql #1,%d0                                
   47ad8:	23c0 0005 ef78 	movel %d0,5ef78 <_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 );                 
   47ade:	2f0a           	movel %a2,%sp@-                             
   47ae0:	2f0b           	movel %a3,%sp@-                             
   47ae2:	4eb9 0004 7120 	jsr 47120 <_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 );                    
   47ae8:	4878 0001      	pea 1 <ADD>                                 
   47aec:	2f0a           	movel %a2,%sp@-                             
   47aee:	4eb9 0004 8720 	jsr 48720 <_Thread_Set_state>               
                                                                      
  if ( !_Thread_queue_Extract_with_proxy( the_thread ) ) {            
   47af4:	2f0a           	movel %a2,%sp@-                             
   47af6:	4eb9 0004 852c 	jsr 4852c <_Thread_queue_Extract_with_proxy>
   47afc:	4fef 0018      	lea %sp@(24),%sp                            
   47b00:	4a00           	tstb %d0                                    
   47b02:	6608           	bnes 47b0c <_Thread_Close+0x70>             
    if ( _Watchdog_Is_active( &the_thread->Timer ) )                  
   47b04:	7002           	moveq #2,%d0                                
   47b06:	b0aa 0050      	cmpl %a2@(80),%d0                           
   47b0a:	6756           	beqs 47b62 <_Thread_Close+0xc6>             
  /*                                                                  
   *  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 ) )                        
   47b0c:	b5f9 0005 effe 	cmpal 5effe <_Thread_Allocated_fp>,%a2      
   47b12:	6746           	beqs 47b5a <_Thread_Close+0xbe>             
    _Thread_Deallocate_fp();                                          
#endif                                                                
  the_thread->fp_context = NULL;                                      
                                                                      
  if ( the_thread->Start.fp_context )                                 
   47b14:	202a 00c6      	movel %a2@(198),%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;                                      
   47b18:	42aa 0102      	clrl %a2@(258)                              
                                                                      
  if ( the_thread->Start.fp_context )                                 
   47b1c:	4a80           	tstl %d0                                    
   47b1e:	670a           	beqs 47b2a <_Thread_Close+0x8e>             
    (void) _Workspace_Free( the_thread->Start.fp_context );           
   47b20:	2f00           	movel %d0,%sp@-                             
   47b22:	4eb9 0004 9210 	jsr 49210 <_Workspace_Free>                 
   47b28:	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 );                                   
   47b2a:	2f0a           	movel %a2,%sp@-                             
   47b2c:	4eb9 0004 891c 	jsr 4891c <_Thread_Stack_Free>              
  the_thread->Start.stack = NULL;                                     
                                                                      
  if ( the_thread->extensions )                                       
   47b32:	202a 0116      	movel %a2@(278),%d0                         
   47b36:	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;                                     
   47b38:	42aa 00ca      	clrl %a2@(202)                              
                                                                      
  if ( the_thread->extensions )                                       
   47b3c:	4a80           	tstl %d0                                    
   47b3e:	670a           	beqs 47b4a <_Thread_Close+0xae>             
    (void) _Workspace_Free( the_thread->extensions );                 
   47b40:	2f00           	movel %d0,%sp@-                             
   47b42:	4eb9 0004 9210 	jsr 49210 <_Workspace_Free>                 
   47b48:	588f           	addql #4,%sp                                
  the_thread->extensions = NULL;                                      
   47b4a:	42aa 0116      	clrl %a2@(278)                              
}                                                                     
   47b4e:	246e fff8      	moveal %fp@(-8),%a2                         
   47b52:	266e fffc      	moveal %fp@(-4),%a3                         
   47b56:	4e5e           	unlk %fp                                    
   47b58:	4e75           	rts                                         
 */                                                                   
                                                                      
#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )        
RTEMS_INLINE_ROUTINE void _Thread_Deallocate_fp( void )               
{                                                                     
  _Thread_Allocated_fp = NULL;                                        
   47b5a:	42b9 0005 effe 	clrl 5effe <_Thread_Allocated_fp>           
   47b60:	60b2           	bras 47b14 <_Thread_Close+0x78>             
   */                                                                 
  _Thread_Set_state( the_thread, STATES_DORMANT );                    
                                                                      
  if ( !_Thread_queue_Extract_with_proxy( the_thread ) ) {            
    if ( _Watchdog_Is_active( &the_thread->Timer ) )                  
      (void) _Watchdog_Remove( &the_thread->Timer );                  
   47b62:	486a 0048      	pea %a2@(72)                                
   47b66:	4eb9 0004 90a4 	jsr 490a4 <_Watchdog_Remove>                
   47b6c:	588f           	addql #4,%sp                                
  /*                                                                  
   *  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 ) )                        
   47b6e:	b5f9 0005 effe 	cmpal 5effe <_Thread_Allocated_fp>,%a2      
   47b74:	669e           	bnes 47b14 <_Thread_Close+0x78>             
   47b76:	60e2           	bras 47b5a <_Thread_Close+0xbe>             <== NOT EXECUTED
                                                                      
00047dbc <_Thread_Enable_dispatch>:                                   
                                                                      
#if ( (defined(CPU_INLINE_ENABLE_DISPATCH) &&  \                      
       (CPU_INLINE_ENABLE_DISPATCH == FALSE)) || \                    
      (__RTEMS_DO_NOT_INLINE_THREAD_ENABLE_DISPATCH__ == 1) )         
void _Thread_Enable_dispatch( void )                                  
{                                                                     
   47dbc:	4e56 0000      	linkw %fp,#0                                
  if ( --_Thread_Dispatch_disable_level )                             
   47dc0:	2039 0005 ef78 	movel 5ef78 <_Thread_Dispatch_disable_level>,%d0
   47dc6:	5380           	subql #1,%d0                                
   47dc8:	23c0 0005 ef78 	movel %d0,5ef78 <_Thread_Dispatch_disable_level>
   47dce:	2039 0005 ef78 	movel 5ef78 <_Thread_Dispatch_disable_level>,%d0
   47dd4:	6704           	beqs 47dda <_Thread_Enable_dispatch+0x1e>   
    return;                                                           
  _Thread_Dispatch();                                                 
}                                                                     
   47dd6:	4e5e           	unlk %fp                                    
   47dd8:	4e75           	rts                                         
   47dda:	4e5e           	unlk %fp                                    
      (__RTEMS_DO_NOT_INLINE_THREAD_ENABLE_DISPATCH__ == 1) )         
void _Thread_Enable_dispatch( void )                                  
{                                                                     
  if ( --_Thread_Dispatch_disable_level )                             
    return;                                                           
  _Thread_Dispatch();                                                 
   47ddc:	4ef9 0004 7c64 	jmp 47c64 <_Thread_Dispatch>                
	...                                                                  
                                                                      
0004e000 <_Thread_Handler>:                                           
 *                                                                    
 *  Output parameters:  NONE                                          
 */                                                                   
                                                                      
void _Thread_Handler( void )                                          
{                                                                     
   4e000:	4e56 0000      	linkw %fp,#0                                
   4e004:	2f0a           	movel %a2,%sp@-                             
  #if defined(EXECUTE_GLOBAL_CONSTRUCTORS)                            
    static char doneConstructors;                                     
    char doneCons;                                                    
  #endif                                                              
                                                                      
  executing = _Thread_Executing;                                      
   4e006:	2479 0005 f032 	moveal 5f032 <_Thread_Executing>,%a2        
 *                                                                    
 *  Output parameters:  NONE                                          
 */                                                                   
                                                                      
void _Thread_Handler( void )                                          
{                                                                     
   4e00c:	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;                                 
   4e00e:	222a 00b4      	movel %a2@(180),%d1                         
  _ISR_Set_level(level);                                              
   4e012:	40c0           	movew %sr,%d0                               
   4e014:	e189           	lsll #8,%d1                                 
   4e016:	0280 0000 f8ff 	andil #63743,%d0                            
   4e01c:	8081           	orl %d1,%d0                                 
   4e01e:	46c0           	movew %d0,%sr                               
                                                                      
  #if defined(EXECUTE_GLOBAL_CONSTRUCTORS)                            
    doneCons = doneConstructors;                                      
    doneConstructors = 1;                                             
   4e020:	7001           	moveq #1,%d0                                
                                                                      
  level = executing->Start.isr_level;                                 
  _ISR_Set_level(level);                                              
                                                                      
  #if defined(EXECUTE_GLOBAL_CONSTRUCTORS)                            
    doneCons = doneConstructors;                                      
   4e022:	1439 0005 e728 	moveb 5e728 <doneConstructors.3606>,%d2     
    doneConstructors = 1;                                             
   4e028:	13c0 0005 e728 	moveb %d0,5e728 <doneConstructors.3606>     
  #endif                                                              
                                                                      
  #if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )      
    #if ( CPU_USE_DEFERRED_FP_SWITCH == TRUE )                        
      if ( (executing->fp_context != NULL) &&                         
   4e02e:	4aaa 0102      	tstl %a2@(258)                              
   4e032:	6720           	beqs 4e054 <_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 );                      
   4e034:	2079 0005 effe 	moveal 5effe <_Thread_Allocated_fp>,%a0     
   4e03a:	b1ca           	cmpal %a2,%a0                               
   4e03c:	6716           	beqs 4e054 <_Thread_Handler+0x54>           
            !_Thread_Is_allocated_fp( executing ) ) {                 
        if ( _Thread_Allocated_fp != NULL )                           
   4e03e:	4a88           	tstl %a0                                    
   4e040:	670c           	beqs 4e04e <_Thread_Handler+0x4e>           
          _Context_Save_fp( &_Thread_Allocated_fp->fp_context );      
   4e042:	4868 0102      	pea %a0@(258)                               
   4e046:	4eb9 0004 93c6 	jsr 493c6 <_CPU_Context_save_fp>            
   4e04c:	588f           	addql #4,%sp                                
        _Thread_Allocated_fp = executing;                             
   4e04e:	23ca 0005 effe 	movel %a2,5effe <_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 );                         
   4e054:	2f0a           	movel %a2,%sp@-                             
   4e056:	4eb9 0004 8d74 	jsr 48d74 <_User_extensions_Thread_begin>   
                                                                      
  /*                                                                  
   *  At this point, the dispatch disable level BETTER be 1.          
   */                                                                 
  _Thread_Enable_dispatch();                                          
   4e05c:	4eb9 0004 7dbc 	jsr 47dbc <_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) */ {                 
   4e062:	588f           	addql #4,%sp                                
   4e064:	4a02           	tstb %d2                                    
   4e066:	6724           	beqs 4e08c <_Thread_Handler+0x8c>           
      INIT_NAME ();                                                   
    }                                                                 
  #endif                                                              
                                                                      
  if ( executing->Start.prototype == THREAD_START_NUMERIC ) {         
   4e068:	202a 009e      	movel %a2@(158),%d0                         
   4e06c:	672a           	beqs 4e098 <_Thread_Handler+0x98>           
      (*(Thread_Entry_numeric) executing->Start.entry_point)(         
        executing->Start.numeric_argument                             
      );                                                              
  }                                                                   
  #if defined(RTEMS_POSIX_API)                                        
    else if ( executing->Start.prototype == THREAD_START_POINTER ) {  
   4e06e:	7201           	moveq #1,%d1                                
   4e070:	b280           	cmpl %d0,%d1                                
   4e072:	674c           	beqs 4e0c0 <_Thread_Handler+0xc0>           
   *  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 );                       
   4e074:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4e076:	4eb9 0004 8db2 	jsr 48db2 <_User_extensions_Thread_exitted> <== NOT EXECUTED
                                                                      
  _Internal_error_Occurred(                                           
   4e07c:	4878 0006      	pea 6 <EXTENDSFDF>                          <== NOT EXECUTED
   4e080:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   4e084:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4e086:	4eb9 0004 6fcc 	jsr 46fcc <_Internal_error_Occurred>        <== NOT EXECUTED
     *  _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) */ {                 
      INIT_NAME ();                                                   
   4e08c:	4eb9 0005 bc38 	jsr 5bc38 <_init>                           
    }                                                                 
  #endif                                                              
                                                                      
  if ( executing->Start.prototype == THREAD_START_NUMERIC ) {         
   4e092:	202a 009e      	movel %a2@(158),%d0                         
   4e096:	66d6           	bnes 4e06e <_Thread_Handler+0x6e>           
    executing->Wait.return_argument =                                 
      (*(Thread_Entry_numeric) executing->Start.entry_point)(         
   4e098:	2f2a 00a6      	movel %a2@(166),%sp@-                       
   4e09c:	206a 009a      	moveal %a2@(154),%a0                        
   4e0a0:	4e90           	jsr %a0@                                    
      INIT_NAME ();                                                   
    }                                                                 
  #endif                                                              
                                                                      
  if ( executing->Start.prototype == THREAD_START_NUMERIC ) {         
    executing->Wait.return_argument =                                 
   4e0a2:	588f           	addql #4,%sp                                
   4e0a4:	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 );                       
   4e0a8:	2f0a           	movel %a2,%sp@-                             
   4e0aa:	4eb9 0004 8db2 	jsr 48db2 <_User_extensions_Thread_exitted> 
                                                                      
  _Internal_error_Occurred(                                           
   4e0b0:	4878 0006      	pea 6 <EXTENDSFDF>                          
   4e0b4:	4878 0001      	pea 1 <ADD>                                 
   4e0b8:	42a7           	clrl %sp@-                                  
   4e0ba:	4eb9 0004 6fcc 	jsr 46fcc <_Internal_error_Occurred>        
      );                                                              
  }                                                                   
  #if defined(RTEMS_POSIX_API)                                        
    else if ( executing->Start.prototype == THREAD_START_POINTER ) {  
      executing->Wait.return_argument =                               
        (*(Thread_Entry_pointer) executing->Start.entry_point)(       
   4e0c0:	2f2a 00a2      	movel %a2@(162),%sp@-                       
   4e0c4:	206a 009a      	moveal %a2@(154),%a0                        
   4e0c8:	4e90           	jsr %a0@                                    
        executing->Start.numeric_argument                             
      );                                                              
  }                                                                   
  #if defined(RTEMS_POSIX_API)                                        
    else if ( executing->Start.prototype == THREAD_START_POINTER ) {  
      executing->Wait.return_argument =                               
   4e0ca:	588f           	addql #4,%sp                                
   4e0cc:	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 );                       
   4e0d0:	2f0a           	movel %a2,%sp@-                             
   4e0d2:	4eb9 0004 8db2 	jsr 48db2 <_User_extensions_Thread_exitted> 
                                                                      
  _Internal_error_Occurred(                                           
   4e0d8:	4878 0006      	pea 6 <EXTENDSFDF>                          <== NOT EXECUTED
   4e0dc:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   4e0e0:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4e0e2:	4eb9 0004 6fcc 	jsr 46fcc <_Internal_error_Occurred>        <== NOT EXECUTED
                                                                      
000480d8 <_Thread_Handler_initialization>:                            
 *                                                                    
 *  Output parameters:  NONE                                          
 */                                                                   
                                                                      
void _Thread_Handler_initialization(void)                             
{                                                                     
   480d8:	4e56 0000      	linkw %fp,#0                                
  #endif                                                              
  /*                                                                  
   * BOTH stacks hooks must be set or both must be NULL.              
   * Do not allow mixture.                                            
   */                                                                 
    if ( !( (!Configuration.stack_allocate_hook)                      
   480dc:	4ab9 0005 d7e8 	tstl 5d7e8 <Configuration+0x24>             
   480e2:	57c0           	seq %d0                                     
   480e4:	4ab9 0005 d7e4 	tstl 5d7e4 <Configuration+0x20>             
   480ea:	57c1           	seq %d1                                     
   480ec:	4480           	negl %d0                                    
   480ee:	4481           	negl %d1                                    
   480f0:	b380           	eorl %d1,%d0                                
  uint32_t     maximum_extensions;                                    
  #if defined(RTEMS_MULTIPROCESSING)                                  
    uint32_t   maximum_proxies;                                       
  #endif                                                              
                                                                      
  ticks_per_timeslice = Configuration.ticks_per_timeslice;            
   480f2:	2239 0005 d7d4 	movel 5d7d4 <Configuration+0x10>,%d1        
  maximum_extensions  = Configuration.maximum_extensions;             
   480f8:	2079 0005 d7cc 	moveal 5d7cc <Configuration+0x8>,%a0        
 *                                                                    
 *  Output parameters:  NONE                                          
 */                                                                   
                                                                      
void _Thread_Handler_initialization(void)                             
{                                                                     
   480fe:	2f02           	movel %d2,%sp@-                             
  #endif                                                              
  /*                                                                  
   * BOTH stacks hooks must be set or both must be NULL.              
   * Do not allow mixture.                                            
   */                                                                 
    if ( !( (!Configuration.stack_allocate_hook)                      
   48100:	4a00           	tstb %d0                                    
   48102:	6600 00a2      	bnew 481a6 <_Thread_Handler_initialization+0xce>
                                                                      
  _Thread_Maximum_extensions = maximum_extensions;                    
                                                                      
  _Thread_Ticks_per_timeslice  = ticks_per_timeslice;                 
                                                                      
  _Thread_Ready_chain = (Chain_Control *) _Workspace_Allocate_or_fatal_error(
   48106:	4280           	clrl %d0                                    
   48108:	1039 0005 d7c2 	moveb 5d7c2 <rtems_maximum_priority>,%d0    
    (PRIORITY_MAXIMUM + 1) * sizeof(Chain_Control)                    
  );                                                                  
                                                                      
  for ( index=0; index <= PRIORITY_MAXIMUM ; index++ )                
   4810e:	4282           	clrl %d2                                    
                                                                      
  _Thread_Maximum_extensions = maximum_extensions;                    
                                                                      
  _Thread_Ticks_per_timeslice  = ticks_per_timeslice;                 
                                                                      
  _Thread_Ready_chain = (Chain_Control *) _Workspace_Allocate_or_fatal_error(
   48110:	5280           	addql #1,%d0                                
                                                                      
  _Thread_Do_post_task_switch_extension = 0;                          
                                                                      
  _Thread_Maximum_extensions = maximum_extensions;                    
                                                                      
  _Thread_Ticks_per_timeslice  = ticks_per_timeslice;                 
   48112:	23c1 0005 ef28 	movel %d1,5ef28 <_Thread_Ticks_per_timeslice>
                                                                      
  _Thread_Ready_chain = (Chain_Control *) _Workspace_Allocate_or_fatal_error(
   48118:	2200           	movel %d0,%d1                               
   4811a:	e588           	lsll #2,%d0                                 
   4811c:	e989           	lsll #4,%d1                                 
  _Thread_Allocated_fp      = NULL;                                   
#endif                                                                
                                                                      
  _Thread_Do_post_task_switch_extension = 0;                          
                                                                      
  _Thread_Maximum_extensions = maximum_extensions;                    
   4811e:	23c8 0005 f016 	movel %a0,5f016 <_Thread_Maximum_extensions>
                                                                      
  _Thread_Ticks_per_timeslice  = ticks_per_timeslice;                 
                                                                      
  _Thread_Ready_chain = (Chain_Control *) _Workspace_Allocate_or_fatal_error(
   48124:	9280           	subl %d0,%d1                                
      INTERNAL_ERROR_CORE,                                            
      true,                                                           
      INTERNAL_ERROR_BAD_STACK_HOOK                                   
    );                                                                
                                                                      
  _Context_Switch_necessary = false;                                  
   48126:	4200           	clrb %d0                                    
                                                                      
  _Thread_Maximum_extensions = maximum_extensions;                    
                                                                      
  _Thread_Ticks_per_timeslice  = ticks_per_timeslice;                 
                                                                      
  _Thread_Ready_chain = (Chain_Control *) _Workspace_Allocate_or_fatal_error(
   48128:	2f01           	movel %d1,%sp@-                             
      INTERNAL_ERROR_CORE,                                            
      true,                                                           
      INTERNAL_ERROR_BAD_STACK_HOOK                                   
    );                                                                
                                                                      
  _Context_Switch_necessary = false;                                  
   4812a:	13c0 0005 f042 	moveb %d0,5f042 <_Context_Switch_necessary> 
  _Thread_Executing         = NULL;                                   
   48130:	42b9 0005 f032 	clrl 5f032 <_Thread_Executing>              
  _Thread_Heir              = NULL;                                   
   48136:	42b9 0005 f006 	clrl 5f006 <_Thread_Heir>                   
#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )        
  _Thread_Allocated_fp      = NULL;                                   
   4813c:	42b9 0005 effe 	clrl 5effe <_Thread_Allocated_fp>           
#endif                                                                
                                                                      
  _Thread_Do_post_task_switch_extension = 0;                          
   48142:	42b9 0005 f01a 	clrl 5f01a <_Thread_Do_post_task_switch_extension>
                                                                      
  _Thread_Maximum_extensions = maximum_extensions;                    
                                                                      
  _Thread_Ticks_per_timeslice  = ticks_per_timeslice;                 
                                                                      
  _Thread_Ready_chain = (Chain_Control *) _Workspace_Allocate_or_fatal_error(
   48148:	4eb9 0004 91c0 	jsr 491c0 <_Workspace_Allocate_or_fatal_error>
    (PRIORITY_MAXIMUM + 1) * sizeof(Chain_Control)                    
  );                                                                  
                                                                      
  for ( index=0; index <= PRIORITY_MAXIMUM ; index++ )                
   4814e:	588f           	addql #4,%sp                                
   48150:	1439 0005 d7c2 	moveb 5d7c2 <rtems_maximum_priority>,%d2    
   48156:	2040           	moveal %d0,%a0                              
   48158:	4281           	clrl %d1                                    
                                                                      
  _Thread_Maximum_extensions = maximum_extensions;                    
                                                                      
  _Thread_Ticks_per_timeslice  = ticks_per_timeslice;                 
                                                                      
  _Thread_Ready_chain = (Chain_Control *) _Workspace_Allocate_or_fatal_error(
   4815a:	23c0 0005 ef24 	movel %d0,5ef24 <_Thread_Ready_chain>       
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
   48160:	2008           	movel %a0,%d0                               
   48162:	5880           	addql #4,%d0                                
    (PRIORITY_MAXIMUM + 1) * sizeof(Chain_Control)                    
  );                                                                  
                                                                      
  for ( index=0; index <= PRIORITY_MAXIMUM ; index++ )                
   48164:	5281           	addql #1,%d1                                
   48166:	2080           	movel %d0,%a0@                              
  the_chain->permanent_null = NULL;                                   
   48168:	42a8 0004      	clrl %a0@(4)                                
  the_chain->last           = _Chain_Head(the_chain);                 
   4816c:	2148 0008      	movel %a0,%a0@(8)                           
   48170:	41e8 000c      	lea %a0@(12),%a0                            
   48174:	b481           	cmpl %d1,%d2                                
   48176:	64e8           	bccs 48160 <_Thread_Handler_initialization+0x88>
                                                                      
  /*                                                                  
   *  Initialize this class of objects.                               
   */                                                                 
                                                                      
  _Objects_Initialize_information(                                    
   48178:	4878 0008      	pea 8 <DIVIDE_BY_ZERO>                      
   4817c:	42a7           	clrl %sp@-                                  
   4817e:	4878 011e      	pea 11e <DBL_MANT_DIG+0xe9>                 
   48182:	4878 0001      	pea 1 <ADD>                                 
   48186:	4878 0001      	pea 1 <ADD>                                 
   4818a:	4878 0001      	pea 1 <ADD>                                 
   4818e:	4879 0005 f0c6 	pea 5f0c6 <_Thread_Internal_information>    
   48194:	4eb9 0004 7598 	jsr 47598 <_Objects_Initialize_information> 
    false,                      /* true if this is a global object class */
    NULL                        /* Proxy extraction support callout */
#endif                                                                
  );                                                                  
                                                                      
}                                                                     
   4819a:	242e fffc      	movel %fp@(-4),%d2                          
                                                                      
  /*                                                                  
   *  Initialize this class of objects.                               
   */                                                                 
                                                                      
  _Objects_Initialize_information(                                    
   4819e:	4fef 001c      	lea %sp@(28),%sp                            
    false,                      /* true if this is a global object class */
    NULL                        /* Proxy extraction support callout */
#endif                                                                
  );                                                                  
                                                                      
}                                                                     
   481a2:	4e5e           	unlk %fp                                    
   481a4:	4e75           	rts                                         
   * BOTH stacks hooks must be set or both must be NULL.              
   * Do not allow mixture.                                            
   */                                                                 
    if ( !( (!Configuration.stack_allocate_hook)                      
            == (!Configuration.stack_free_hook) ) )                   
    _Internal_error_Occurred(                                         
   481a6:	4878 000f      	pea f <FPTRAP>                              
   481aa:	4878 0001      	pea 1 <ADD>                                 
   481ae:	42a7           	clrl %sp@-                                  
   481b0:	4eb9 0004 6fcc 	jsr 46fcc <_Internal_error_Occurred>        
	...                                                                  
                                                                      
00047e80 <_Thread_Initialize>:                                        
  Thread_CPU_budget_algorithms          budget_algorithm,             
  Thread_CPU_budget_algorithm_callout   budget_callout,               
  uint32_t                              isr_level,                    
  Objects_Name                          name                          
)                                                                     
{                                                                     
   47e80:	4e56 ffe8      	linkw %fp,#-24                              
   47e84:	202e 0010      	movel %fp@(16),%d0                          
   47e88:	48d7 047c      	moveml %d2-%d6/%a2,%sp@                     
   47e8c:	246e 000c      	moveal %fp@(12),%a2                         
   47e90:	282e 0014      	movel %fp@(20),%d4                          
   47e94:	242e 001c      	movel %fp@(28),%d2                          
   47e98:	262e 0024      	movel %fp@(36),%d3                          
                                                                      
  /*                                                                  
   *  Zero out all the allocated memory fields                        
   */                                                                 
  for ( i=0 ; i <= THREAD_API_LAST ; i++ )                            
    the_thread->API_Extensions[i] = NULL;                             
   47e9c:	42aa 010a      	clrl %a2@(266)                              
  Thread_CPU_budget_algorithms          budget_algorithm,             
  Thread_CPU_budget_algorithm_callout   budget_callout,               
  uint32_t                              isr_level,                    
  Objects_Name                          name                          
)                                                                     
{                                                                     
   47ea0:	1a2e 001b      	moveb %fp@(27),%d5                          
                                                                      
  /*                                                                  
   *  Zero out all the allocated memory fields                        
   */                                                                 
  for ( i=0 ; i <= THREAD_API_LAST ; i++ )                            
    the_thread->API_Extensions[i] = NULL;                             
   47ea4:	42aa 010e      	clrl %a2@(270)                              
  Thread_CPU_budget_algorithms          budget_algorithm,             
  Thread_CPU_budget_algorithm_callout   budget_callout,               
  uint32_t                              isr_level,                    
  Objects_Name                          name                          
)                                                                     
{                                                                     
   47ea8:	1c2e 0023      	moveb %fp@(35),%d6                          
                                                                      
  /*                                                                  
   *  Zero out all the allocated memory fields                        
   */                                                                 
  for ( i=0 ; i <= THREAD_API_LAST ; i++ )                            
    the_thread->API_Extensions[i] = NULL;                             
   47eac:	42aa 0112      	clrl %a2@(274)                              
                                                                      
  extensions_area = NULL;                                             
  the_thread->libc_reent = NULL;                                      
   47eb0:	42aa 0106      	clrl %a2@(262)                              
    if ( !actual_stack_size || actual_stack_size < stack_size )       
      return false;                     /* stack allocation failed */ 
                                                                      
    stack = the_thread->Start.stack;                                  
  #else                                                               
    if ( !stack_area ) {                                              
   47eb4:	4a80           	tstl %d0                                    
   47eb6:	6700 01f0      	beqw 480a8 <_Thread_Initialize+0x228>       
      stack = the_thread->Start.stack;                                
      the_thread->Start.core_allocated_stack = true;                  
    } else {                                                          
      stack = stack_area;                                             
      actual_stack_size = stack_size;                                 
      the_thread->Start.core_allocated_stack = false;                 
   47eba:	2204           	movel %d4,%d1                               
   47ebc:	4204           	clrb %d4                                    
   47ebe:	1544 00bc      	moveb %d4,%a2@(188)                         
  Stack_Control *the_stack,                                           
  void          *starting_address,                                    
  size_t         size                                                 
)                                                                     
{                                                                     
  the_stack->area = starting_address;                                 
   47ec2:	2540 00c2      	movel %d0,%a2@(194)                         
  the_stack->size = size;                                             
   47ec6:	2541 00be      	movel %d1,%a2@(190)                         
                                                                      
  /*                                                                  
   *  Allocate the floating point area for this thread                
   */                                                                 
  #if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )      
    if ( is_fp ) {                                                    
   47eca:	4a05           	tstb %d5                                    
   47ecc:	6600 017e      	bnew 4804c <_Thread_Initialize+0x1cc>       
   47ed0:	4280           	clrl %d0                                    
   47ed2:	4285           	clrl %d5                                    
  #endif                                                              
                                                                      
  /*                                                                  
   *  Allocate the extensions area for this thread                    
   */                                                                 
  if ( _Thread_Maximum_extensions ) {                                 
   47ed4:	2239 0005 f016 	movel 5f016 <_Thread_Maximum_extensions>,%d1
      if ( !fp_area )                                                 
        goto failed;                                                  
      fp_area = _Context_Fp_start( fp_area, 0 );                      
    }                                                                 
    the_thread->fp_context       = fp_area;                           
    the_thread->Start.fp_context = fp_area;                           
   47eda:	2540 00c6      	movel %d0,%a2@(198)                         
      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;                           
   47ede:	2540 0102      	movel %d0,%a2@(258)                         
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   47ee2:	42aa 0050      	clrl %a2@(80)                               
  the_watchdog->routine   = routine;                                  
   47ee6:	42aa 0064      	clrl %a2@(100)                              
  the_watchdog->id        = id;                                       
   47eea:	42aa 0068      	clrl %a2@(104)                              
  the_watchdog->user_data = user_data;                                
   47eee:	42aa 006c      	clrl %a2@(108)                              
  #endif                                                              
                                                                      
  /*                                                                  
   *  Allocate the extensions area for this thread                    
   */                                                                 
  if ( _Thread_Maximum_extensions ) {                                 
   47ef2:	4a81           	tstl %d1                                    
   47ef4:	6600 0178      	bnew 4806e <_Thread_Initialize+0x1ee>       
      (_Thread_Maximum_extensions + 1) * sizeof( void * )             
    );                                                                
    if ( !extensions_area )                                           
      goto failed;                                                    
  }                                                                   
  the_thread->extensions = (void **) extensions_area;                 
   47ef8:	42aa 0116      	clrl %a2@(278)                              
   47efc:	4284           	clrl %d4                                    
  /*                                                                  
   *  General initialization                                          
   */                                                                 
                                                                      
  the_thread->Start.is_preemptible   = is_preemptible;                
  the_thread->Start.budget_algorithm = budget_algorithm;              
   47efe:	2543 00ac      	movel %d3,%a2@(172)                         
  the_thread->Start.budget_callout   = budget_callout;                
                                                                      
  switch ( budget_algorithm ) {                                       
   47f02:	7002           	moveq #2,%d0                                
   *  General initialization                                          
   */                                                                 
                                                                      
  the_thread->Start.is_preemptible   = is_preemptible;                
  the_thread->Start.budget_algorithm = budget_algorithm;              
  the_thread->Start.budget_callout   = budget_callout;                
   47f04:	256e 0028 00b0 	movel %fp@(40),%a2@(176)                    
                                                                      
  /*                                                                  
   *  General initialization                                          
   */                                                                 
                                                                      
  the_thread->Start.is_preemptible   = is_preemptible;                
   47f0a:	1546 00aa      	moveb %d6,%a2@(170)                         
  the_thread->Start.budget_algorithm = budget_algorithm;              
  the_thread->Start.budget_callout   = budget_callout;                
                                                                      
  switch ( budget_algorithm ) {                                       
   47f0e:	b083           	cmpl %d3,%d0                                
   47f10:	6700 00d6      	beqw 47fe8 <_Thread_Initialize+0x168>       
  #if defined(RTEMS_ITRON_API)                                        
    the_thread->suspend_count         = 0;                            
  #endif                                                              
  the_thread->real_priority           = priority;                     
  the_thread->Start.initial_priority  = priority;                     
  _Thread_Set_priority( the_thread, priority );                       
   47f14:	2f02           	movel %d2,%sp@-                             
      case THREAD_CPU_BUDGET_ALGORITHM_CALLOUT:                       
	break;                                                               
    #endif                                                            
  }                                                                   
                                                                      
  the_thread->Start.isr_level         = isr_level;                    
   47f16:	256e 002c 00b4 	movel %fp@(44),%a2@(180)                    
                                                                      
  the_thread->current_state           = STATES_DORMANT;               
   47f1c:	7001           	moveq #1,%d0                                
  #if defined(RTEMS_ITRON_API)                                        
    the_thread->suspend_count         = 0;                            
  #endif                                                              
  the_thread->real_priority           = priority;                     
  the_thread->Start.initial_priority  = priority;                     
  _Thread_Set_priority( the_thread, priority );                       
   47f1e:	2f0a           	movel %a2,%sp@-                             
    #endif                                                            
  }                                                                   
                                                                      
  the_thread->Start.isr_level         = isr_level;                    
                                                                      
  the_thread->current_state           = STATES_DORMANT;               
   47f20:	2540 0010      	movel %d0,%a2@(16)                          
  the_thread->Wait.queue              = NULL;                         
   47f24:	42aa 0044      	clrl %a2@(68)                               
  the_thread->resource_count          = 0;                            
   47f28:	42aa 001c      	clrl %a2@(28)                               
  #if defined(RTEMS_ITRON_API)                                        
    the_thread->suspend_count         = 0;                            
  #endif                                                              
  the_thread->real_priority           = priority;                     
   47f2c:	2542 0018      	movel %d2,%a2@(24)                          
  the_thread->Start.initial_priority  = priority;                     
   47f30:	2542 00b8      	movel %d2,%a2@(184)                         
  _Thread_Set_priority( the_thread, priority );                       
   47f34:	4eb9 0004 86b0 	jsr 486b0 <_Thread_Set_priority>            
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   47f3a:	206e 0008      	moveal %fp@(8),%a0                          
   47f3e:	4280           	clrl %d0                                    
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
    the_object                                                        
  );                                                                  
                                                                      
  the_object->name = name;                                            
   47f40:	256e 0030 000c 	movel %fp@(48),%a2@(12)                     
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   47f46:	2068 0018      	moveal %a0@(24),%a0                         
   47f4a:	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 );             
   47f4e:	42aa 0082      	clrl %a2@(130)                              
   47f52:	218a 0c00      	movel %a2,%a0@(00000000,%d0:l:4)            
   47f56:	42aa 0086      	clrl %a2@(134)                              
   *  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 );    
   47f5a:	2f0a           	movel %a2,%sp@-                             
   47f5c:	4eb9 0004 8e44 	jsr 48e44 <_User_extensions_Thread_create>  
  if ( extension_status )                                             
   47f62:	4fef 000c      	lea %sp@(12),%sp                            
   47f66:	4a00           	tstb %d0                                    
   47f68:	6672           	bnes 47fdc <_Thread_Initialize+0x15c>       
    return true;                                                      
                                                                      
failed:                                                               
  if ( the_thread->libc_reent )                                       
   47f6a:	202a 0106      	movel %a2@(262),%d0                         
   47f6e:	670a           	beqs 47f7a <_Thread_Initialize+0xfa>        
    _Workspace_Free( the_thread->libc_reent );                        
   47f70:	2f00           	movel %d0,%sp@-                             
   47f72:	4eb9 0004 9210 	jsr 49210 <_Workspace_Free>                 
   47f78:	588f           	addql #4,%sp                                
                                                                      
  for ( i=0 ; i <= THREAD_API_LAST ; i++ )                            
    if ( the_thread->API_Extensions[i] )                              
   47f7a:	202a 010a      	movel %a2@(266),%d0                         
   47f7e:	670a           	beqs 47f8a <_Thread_Initialize+0x10a>       
      _Workspace_Free( the_thread->API_Extensions[i] );               
   47f80:	2f00           	movel %d0,%sp@-                             
   47f82:	4eb9 0004 9210 	jsr 49210 <_Workspace_Free>                 
   47f88:	588f           	addql #4,%sp                                
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] )                              
   47f8a:	202a 010e      	movel %a2@(270),%d0                         
   47f8e:	670a           	beqs 47f9a <_Thread_Initialize+0x11a>       
      _Workspace_Free( the_thread->API_Extensions[i] );               
   47f90:	2f00           	movel %d0,%sp@-                             
   47f92:	4eb9 0004 9210 	jsr 49210 <_Workspace_Free>                 
   47f98:	588f           	addql #4,%sp                                
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] )                              
   47f9a:	202a 0112      	movel %a2@(274),%d0                         
   47f9e:	670a           	beqs 47faa <_Thread_Initialize+0x12a>       
      _Workspace_Free( the_thread->API_Extensions[i] );               
   47fa0:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   47fa2:	4eb9 0004 9210 	jsr 49210 <_Workspace_Free>                 <== NOT EXECUTED
   47fa8:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  if ( extensions_area )                                              
   47faa:	4a84           	tstl %d4                                    
   47fac:	670a           	beqs 47fb8 <_Thread_Initialize+0x138>       
    (void) _Workspace_Free( extensions_area );                        
   47fae:	2f04           	movel %d4,%sp@-                             
   47fb0:	4eb9 0004 9210 	jsr 49210 <_Workspace_Free>                 
   47fb6:	588f           	addql #4,%sp                                
                                                                      
  #if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )      
    if ( fp_area )                                                    
   47fb8:	4a85           	tstl %d5                                    
   47fba:	670a           	beqs 47fc6 <_Thread_Initialize+0x146>       
      (void) _Workspace_Free( fp_area );                              
   47fbc:	2f05           	movel %d5,%sp@-                             
   47fbe:	4eb9 0004 9210 	jsr 49210 <_Workspace_Free>                 
   47fc4:	588f           	addql #4,%sp                                
  #endif                                                              
                                                                      
   _Thread_Stack_Free( the_thread );                                  
   47fc6:	2f0a           	movel %a2,%sp@-                             
   47fc8:	4eb9 0004 891c 	jsr 4891c <_Thread_Stack_Free>              
  return false;                                                       
   47fce:	588f           	addql #4,%sp                                
                                                                      
                                                                      
}                                                                     
   47fd0:	4cee 047c ffe8 	moveml %fp@(-24),%d2-%d6/%a2                
  #if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )      
    if ( fp_area )                                                    
      (void) _Workspace_Free( fp_area );                              
  #endif                                                              
                                                                      
   _Thread_Stack_Free( the_thread );                                  
   47fd6:	4200           	clrb %d0                                    
  return false;                                                       
                                                                      
                                                                      
}                                                                     
   47fd8:	4e5e           	unlk %fp                                    
   47fda:	4e75           	rts                                         
   47fdc:	4cee 047c ffe8 	moveml %fp@(-24),%d2-%d6/%a2                
   *  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 );    
  if ( extension_status )                                             
   47fe2:	7001           	moveq #1,%d0                                
                                                                      
   _Thread_Stack_Free( the_thread );                                  
  return false;                                                       
                                                                      
                                                                      
}                                                                     
   47fe4:	4e5e           	unlk %fp                                    
   47fe6:	4e75           	rts                                         
    case THREAD_CPU_BUDGET_ALGORITHM_NONE:                            
    case THREAD_CPU_BUDGET_ALGORITHM_RESET_TIMESLICE:                 
      break;                                                          
    #if defined(RTEMS_SCORE_THREAD_ENABLE_EXHAUST_TIMESLICE)          
      case THREAD_CPU_BUDGET_ALGORITHM_EXHAUST_TIMESLICE:             
        the_thread->cpu_time_budget = _Thread_Ticks_per_timeslice;    
   47fe8:	41f9 0005 ef28 	lea 5ef28 <_Thread_Ticks_per_timeslice>,%a0 
    #endif                                                            
  }                                                                   
                                                                      
  the_thread->Start.isr_level         = isr_level;                    
                                                                      
  the_thread->current_state           = STATES_DORMANT;               
   47fee:	7001           	moveq #1,%d0                                
    case THREAD_CPU_BUDGET_ALGORITHM_NONE:                            
    case THREAD_CPU_BUDGET_ALGORITHM_RESET_TIMESLICE:                 
      break;                                                          
    #if defined(RTEMS_SCORE_THREAD_ENABLE_EXHAUST_TIMESLICE)          
      case THREAD_CPU_BUDGET_ALGORITHM_EXHAUST_TIMESLICE:             
        the_thread->cpu_time_budget = _Thread_Ticks_per_timeslice;    
   47ff0:	2550 0076      	movel %a0@,%a2@(118)                        
  #if defined(RTEMS_ITRON_API)                                        
    the_thread->suspend_count         = 0;                            
  #endif                                                              
  the_thread->real_priority           = priority;                     
  the_thread->Start.initial_priority  = priority;                     
  _Thread_Set_priority( the_thread, priority );                       
   47ff4:	2f02           	movel %d2,%sp@-                             
      case THREAD_CPU_BUDGET_ALGORITHM_CALLOUT:                       
	break;                                                               
    #endif                                                            
  }                                                                   
                                                                      
  the_thread->Start.isr_level         = isr_level;                    
   47ff6:	256e 002c 00b4 	movel %fp@(44),%a2@(180)                    
  #if defined(RTEMS_ITRON_API)                                        
    the_thread->suspend_count         = 0;                            
  #endif                                                              
  the_thread->real_priority           = priority;                     
  the_thread->Start.initial_priority  = priority;                     
  _Thread_Set_priority( the_thread, priority );                       
   47ffc:	2f0a           	movel %a2,%sp@-                             
    #endif                                                            
  }                                                                   
                                                                      
  the_thread->Start.isr_level         = isr_level;                    
                                                                      
  the_thread->current_state           = STATES_DORMANT;               
   47ffe:	2540 0010      	movel %d0,%a2@(16)                          
  the_thread->Wait.queue              = NULL;                         
   48002:	42aa 0044      	clrl %a2@(68)                               
  the_thread->resource_count          = 0;                            
   48006:	42aa 001c      	clrl %a2@(28)                               
  #if defined(RTEMS_ITRON_API)                                        
    the_thread->suspend_count         = 0;                            
  #endif                                                              
  the_thread->real_priority           = priority;                     
   4800a:	2542 0018      	movel %d2,%a2@(24)                          
  the_thread->Start.initial_priority  = priority;                     
   4800e:	2542 00b8      	movel %d2,%a2@(184)                         
  _Thread_Set_priority( the_thread, priority );                       
   48012:	4eb9 0004 86b0 	jsr 486b0 <_Thread_Set_priority>            
   48018:	206e 0008      	moveal %fp@(8),%a0                          
   4801c:	4280           	clrl %d0                                    
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
    the_object                                                        
  );                                                                  
                                                                      
  the_object->name = name;                                            
   4801e:	256e 0030 000c 	movel %fp@(48),%a2@(12)                     
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   48024:	2068 0018      	moveal %a0@(24),%a0                         
   48028:	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 );             
   4802c:	42aa 0082      	clrl %a2@(130)                              
   48030:	218a 0c00      	movel %a2,%a0@(00000000,%d0:l:4)            
   48034:	42aa 0086      	clrl %a2@(134)                              
   *  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 );    
   48038:	2f0a           	movel %a2,%sp@-                             
   4803a:	4eb9 0004 8e44 	jsr 48e44 <_User_extensions_Thread_create>  
  if ( extension_status )                                             
   48040:	4fef 000c      	lea %sp@(12),%sp                            
   48044:	4a00           	tstb %d0                                    
   48046:	6700 ff22      	beqw 47f6a <_Thread_Initialize+0xea>        
   4804a:	6090           	bras 47fdc <_Thread_Initialize+0x15c>       
  /*                                                                  
   *  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 );               
   4804c:	4878 001c      	pea 1c <OPER2+0x8>                          
   48050:	4eb9 0004 91f4 	jsr 491f4 <_Workspace_Allocate>             
      if ( !fp_area )                                                 
   48056:	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 );               
   48058:	2a00           	movel %d0,%d5                               
      if ( !fp_area )                                                 
   4805a:	6600 fe78      	bnew 47ed4 <_Thread_Initialize+0x54>        
  extension_status = _User_extensions_Thread_create( the_thread );    
  if ( extension_status )                                             
    return true;                                                      
                                                                      
failed:                                                               
  if ( the_thread->libc_reent )                                       
   4805e:	202a 0106      	movel %a2@(262),%d0                         
   *  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 );               
      if ( !fp_area )                                                 
   48062:	4284           	clrl %d4                                    
  extension_status = _User_extensions_Thread_create( the_thread );    
  if ( extension_status )                                             
    return true;                                                      
                                                                      
failed:                                                               
  if ( the_thread->libc_reent )                                       
   48064:	4a80           	tstl %d0                                    
   48066:	6600 ff08      	bnew 47f70 <_Thread_Initialize+0xf0>        
   4806a:	6000 ff0e      	braw 47f7a <_Thread_Initialize+0xfa>        
                                                                      
  /*                                                                  
   *  Allocate the extensions area for this thread                    
   */                                                                 
  if ( _Thread_Maximum_extensions ) {                                 
    extensions_area = _Workspace_Allocate(                            
   4806e:	e589           	lsll #2,%d1                                 
   48070:	2041           	moveal %d1,%a0                              
   48072:	4868 0004      	pea %a0@(4)                                 
   48076:	4eb9 0004 91f4 	jsr 491f4 <_Workspace_Allocate>             
      (_Thread_Maximum_extensions + 1) * sizeof( void * )             
    );                                                                
    if ( !extensions_area )                                           
   4807c:	588f           	addql #4,%sp                                
                                                                      
  /*                                                                  
   *  Allocate the extensions area for this thread                    
   */                                                                 
  if ( _Thread_Maximum_extensions ) {                                 
    extensions_area = _Workspace_Allocate(                            
   4807e:	2800           	movel %d0,%d4                               
      (_Thread_Maximum_extensions + 1) * sizeof( void * )             
    );                                                                
    if ( !extensions_area )                                           
   48080:	6700 fee8      	beqw 47f6a <_Thread_Initialize+0xea>        
      goto failed;                                                    
  }                                                                   
  the_thread->extensions = (void **) extensions_area;                 
   48084:	2040           	moveal %d0,%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++ )              
   48086:	4281           	clrl %d1                                    
   48088:	4280           	clrl %d0                                    
   4808a:	2279 0005 f016 	moveal 5f016 <_Thread_Maximum_extensions>,%a1
      (_Thread_Maximum_extensions + 1) * sizeof( void * )             
    );                                                                
    if ( !extensions_area )                                           
      goto failed;                                                    
  }                                                                   
  the_thread->extensions = (void **) extensions_area;                 
   48090:	2544 0116      	movel %d4,%a2@(278)                         
   * so they cannot rely on the thread create user extension          
   * call.                                                            
   */                                                                 
  if ( the_thread->extensions ) {                                     
    for ( i = 0; i <= _Thread_Maximum_extensions ; i++ )              
      the_thread->extensions[i] = NULL;                               
   48094:	42b0 1c00      	clrl %a0@(00000000,%d1:l:4)                 
   * 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++ )              
   48098:	5280           	addql #1,%d0                                
   4809a:	2200           	movel %d0,%d1                               
   4809c:	b089           	cmpl %a1,%d0                                
   4809e:	6200 fe5e      	bhiw 47efe <_Thread_Initialize+0x7e>        
   480a2:	206a 0116      	moveal %a2@(278),%a0                        
   480a6:	60ec           	bras 48094 <_Thread_Initialize+0x214>       
      return false;                     /* stack allocation failed */ 
                                                                      
    stack = the_thread->Start.stack;                                  
  #else                                                               
    if ( !stack_area ) {                                              
      actual_stack_size = _Thread_Stack_Allocate( the_thread, stack_size );
   480a8:	2f04           	movel %d4,%sp@-                             
   480aa:	2f0a           	movel %a2,%sp@-                             
   480ac:	4eb9 0004 88b8 	jsr 488b8 <_Thread_Stack_Allocate>          
      if ( !actual_stack_size || actual_stack_size < stack_size )     
   480b2:	508f           	addql #8,%sp                                
      return false;                     /* stack allocation failed */ 
                                                                      
    stack = the_thread->Start.stack;                                  
  #else                                                               
    if ( !stack_area ) {                                              
      actual_stack_size = _Thread_Stack_Allocate( the_thread, stack_size );
   480b4:	2200           	movel %d0,%d1                               
      if ( !actual_stack_size || actual_stack_size < stack_size )     
   480b6:	6712           	beqs 480ca <_Thread_Initialize+0x24a>       
   480b8:	b084           	cmpl %d4,%d0                                
   480ba:	650e           	bcss 480ca <_Thread_Initialize+0x24a>       
        return false;                     /* stack allocation failed */
                                                                      
      stack = the_thread->Start.stack;                                
   480bc:	202a 00ca      	movel %a2@(202),%d0                         
      the_thread->Start.core_allocated_stack = true;                  
   480c0:	7801           	moveq #1,%d4                                
   480c2:	1544 00bc      	moveb %d4,%a2@(188)                         
   480c6:	6000 fdfa      	braw 47ec2 <_Thread_Initialize+0x42>        
                                                                      
   _Thread_Stack_Free( the_thread );                                  
  return false;                                                       
                                                                      
                                                                      
}                                                                     
   480ca:	4cee 047c ffe8 	moveml %fp@(-24),%d2-%d6/%a2                
    if ( fp_area )                                                    
      (void) _Workspace_Free( fp_area );                              
  #endif                                                              
                                                                      
   _Thread_Stack_Free( the_thread );                                  
  return false;                                                       
   480d0:	4200           	clrb %d0                                    
                                                                      
                                                                      
}                                                                     
   480d2:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      
0004d100 <_Thread_Reset>:                                             
void _Thread_Reset(                                                   
  Thread_Control            *the_thread,                              
  void                      *pointer_argument,                        
  Thread_Entry_numeric_type  numeric_argument                         
)                                                                     
{                                                                     
   4d100:	4e56 0000      	linkw %fp,#0                                
   4d104:	2f0a           	movel %a2,%sp@-                             
   4d106:	246e 0008      	moveal %fp@(8),%a2                          
  the_thread->is_preemptible   = the_thread->Start.is_preemptible;    
  the_thread->budget_algorithm = the_thread->Start.budget_algorithm;  
  the_thread->budget_callout   = the_thread->Start.budget_callout;    
                                                                      
  the_thread->Start.pointer_argument = pointer_argument;              
  the_thread->Start.numeric_argument = numeric_argument;              
   4d10a:	256e 0010 00a6 	movel %fp@(16),%a2@(166)                    
  the_thread->resource_count   = 0;                                   
  #if defined(RTEMS_ITRON_API)                                        
    the_thread->suspend_count  = 0;                                   
  #endif                                                              
  the_thread->is_preemptible   = the_thread->Start.is_preemptible;    
  the_thread->budget_algorithm = the_thread->Start.budget_algorithm;  
   4d110:	256a 00ac 007a 	movel %a2@(172),%a2@(122)                   
  the_thread->budget_callout   = the_thread->Start.budget_callout;    
   4d116:	256a 00b0 007e 	movel %a2@(176),%a2@(126)                   
                                                                      
  the_thread->Start.pointer_argument = pointer_argument;              
   4d11c:	256e 000c 00a2 	movel %fp@(12),%a2@(162)                    
{                                                                     
  the_thread->resource_count   = 0;                                   
  #if defined(RTEMS_ITRON_API)                                        
    the_thread->suspend_count  = 0;                                   
  #endif                                                              
  the_thread->is_preemptible   = the_thread->Start.is_preemptible;    
   4d122:	156a 00aa 0075 	moveb %a2@(170),%a2@(117)                   
  Thread_Control            *the_thread,                              
  void                      *pointer_argument,                        
  Thread_Entry_numeric_type  numeric_argument                         
)                                                                     
{                                                                     
  the_thread->resource_count   = 0;                                   
   4d128:	42aa 001c      	clrl %a2@(28)                               
  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 ) ) {            
   4d12c:	2f0a           	movel %a2,%sp@-                             
   4d12e:	4eb9 0004 9140 	jsr 49140 <_Thread_queue_Extract_with_proxy>
   4d134:	588f           	addql #4,%sp                                
   4d136:	4a00           	tstb %d0                                    
   4d138:	6608           	bnes 4d142 <_Thread_Reset+0x42>             
                                                                      
    if ( _Watchdog_Is_active( &the_thread->Timer ) )                  
   4d13a:	7002           	moveq #2,%d0                                
   4d13c:	b0aa 0050      	cmpl %a2@(80),%d0                           
   4d140:	672a           	beqs 4d16c <_Thread_Reset+0x6c>             
      (void) _Watchdog_Remove( &the_thread->Timer );                  
  }                                                                   
                                                                      
  if ( the_thread->current_priority != the_thread->Start.initial_priority ) {
   4d142:	202a 00b8      	movel %a2@(184),%d0                         
   4d146:	b0aa 0014      	cmpl %a2@(20),%d0                           
   4d14a:	6718           	beqs 4d164 <_Thread_Reset+0x64>             
    the_thread->real_priority = the_thread->Start.initial_priority;   
    _Thread_Set_priority( the_thread, the_thread->Start.initial_priority );
   4d14c:	2d4a 0008      	movel %a2,%fp@(8)                           
   4d150:	2d40 000c      	movel %d0,%fp@(12)                          
    if ( _Watchdog_Is_active( &the_thread->Timer ) )                  
      (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;   
   4d154:	2540 0018      	movel %d0,%a2@(24)                          
    _Thread_Set_priority( the_thread, the_thread->Start.initial_priority );
  }                                                                   
}                                                                     
   4d158:	246e fffc      	moveal %fp@(-4),%a2                         
   4d15c:	4e5e           	unlk %fp                                    
      (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 );
   4d15e:	4ef9 0004 9350 	jmp 49350 <_Thread_Set_priority>            
  }                                                                   
}                                                                     
   4d164:	246e fffc      	moveal %fp@(-4),%a2                         
   4d168:	4e5e           	unlk %fp                                    
   4d16a:	4e75           	rts                                         
  the_thread->Start.numeric_argument = numeric_argument;              
                                                                      
  if ( !_Thread_queue_Extract_with_proxy( the_thread ) ) {            
                                                                      
    if ( _Watchdog_Is_active( &the_thread->Timer ) )                  
      (void) _Watchdog_Remove( &the_thread->Timer );                  
   4d16c:	486a 0048      	pea %a2@(72)                                
   4d170:	4eb9 0004 9d88 	jsr 49d88 <_Watchdog_Remove>                
   4d176:	588f           	addql #4,%sp                                
   4d178:	60c8           	bras 4d142 <_Thread_Reset+0x42>             
	...                                                                  
                                                                      
000492c4 <_Thread_Restart>:                                           
  Thread_Control            *the_thread,                              
  void                      *pointer_argument,                        
  Thread_Entry_numeric_type  numeric_argument                         
)                                                                     
{                                                                     
  if ( !_States_Is_dormant( the_thread->current_state ) ) {           
   492c4:	7001           	moveq #1,%d0                                
bool _Thread_Restart(                                                 
  Thread_Control            *the_thread,                              
  void                      *pointer_argument,                        
  Thread_Entry_numeric_type  numeric_argument                         
)                                                                     
{                                                                     
   492c6:	4e56 0000      	linkw %fp,#0                                
   492ca:	2f0a           	movel %a2,%sp@-                             
   492cc:	246e 0008      	moveal %fp@(8),%a2                          
  if ( !_States_Is_dormant( the_thread->current_state ) ) {           
   492d0:	c0aa 0010      	andl %a2@(16),%d0                           
   492d4:	4a00           	tstb %d0                                    
   492d6:	670a           	beqs 492e2 <_Thread_Restart+0x1e>           
                                                                      
    return true;                                                      
  }                                                                   
                                                                      
  return false;                                                       
}                                                                     
   492d8:	246e fffc      	moveal %fp@(-4),%a2                         
   492dc:	4e5e           	unlk %fp                                    
  Thread_Control            *the_thread,                              
  void                      *pointer_argument,                        
  Thread_Entry_numeric_type  numeric_argument                         
)                                                                     
{                                                                     
  if ( !_States_Is_dormant( the_thread->current_state ) ) {           
   492de:	4200           	clrb %d0                                    
                                                                      
    return true;                                                      
  }                                                                   
                                                                      
  return false;                                                       
}                                                                     
   492e0:	4e75           	rts                                         
  Thread_Entry_numeric_type  numeric_argument                         
)                                                                     
{                                                                     
  if ( !_States_Is_dormant( the_thread->current_state ) ) {           
                                                                      
    _Thread_Set_transient( the_thread );                              
   492e2:	2f0a           	movel %a2,%sp@-                             
   492e4:	4eb9 0004 94d4 	jsr 494d4 <_Thread_Set_transient>           
                                                                      
    _Thread_Reset( the_thread, pointer_argument, numeric_argument );  
   492ea:	2f2e 0010      	movel %fp@(16),%sp@-                        
   492ee:	2f2e 000c      	movel %fp@(12),%sp@-                        
   492f2:	2f0a           	movel %a2,%sp@-                             
   492f4:	4eb9 0004 d100 	jsr 4d100 <_Thread_Reset>                   
                                                                      
    _Thread_Load_environment( the_thread );                           
   492fa:	2f0a           	movel %a2,%sp@-                             
   492fc:	4eb9 0004 cd54 	jsr 4cd54 <_Thread_Load_environment>        
                                                                      
    _Thread_Ready( the_thread );                                      
   49302:	2f0a           	movel %a2,%sp@-                             
   49304:	4eb9 0004 d040 	jsr 4d040 <_Thread_Ready>                   
                                                                      
    _User_extensions_Thread_restart( the_thread );                    
   4930a:	2f0a           	movel %a2,%sp@-                             
   4930c:	4eb9 0004 9b78 	jsr 49b78 <_User_extensions_Thread_restart> 
                                                                      
    if ( _Thread_Is_executing ( the_thread ) )                        
   49312:	4fef 001c      	lea %sp@(28),%sp                            
   49316:	b5f9 0005 ffca 	cmpal 5ffca <_Thread_Executing>,%a2         
   4931c:	670a           	beqs 49328 <_Thread_Restart+0x64>           
#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )        
  if ( _Thread_Executing->fp_context != NULL )                        
    _Context_Restore_fp( &_Thread_Executing->fp_context );            
#endif                                                                
                                                                      
  _CPU_Context_Restart_self( &_Thread_Executing->Registers );         
   4931e:	7001           	moveq #1,%d0                                
                                                                      
    return true;                                                      
  }                                                                   
                                                                      
  return false;                                                       
}                                                                     
   49320:	246e fffc      	moveal %fp@(-4),%a2                         
   49324:	4e5e           	unlk %fp                                    
   49326:	4e75           	rts                                         
 */                                                                   
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Restart_self( void )                
{                                                                     
#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )        
  if ( _Thread_Executing->fp_context != NULL )                        
   49328:	4aaa 0102      	tstl %a2@(258)                              
   4932c:	6712           	beqs 49340 <_Thread_Restart+0x7c>           
    _Context_Restore_fp( &_Thread_Executing->fp_context );            
   4932e:	486a 0102      	pea %a2@(258)                               
   49332:	4eb9 0004 a0e2 	jsr 4a0e2 <_CPU_Context_restore_fp>         
   49338:	2479 0005 ffca 	moveal 5ffca <_Thread_Executing>,%a2        
   4933e:	588f           	addql #4,%sp                                
#endif                                                                
                                                                      
  _CPU_Context_Restart_self( &_Thread_Executing->Registers );         
   49340:	486a 00ce      	pea %a2@(206)                               
   49344:	4eb9 0004 9f8a 	jsr 49f8a <_CPU_Context_Restart_self>       
   4934a:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4934c:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4934e:	60d0           	bras 49320 <_Thread_Restart+0x5c>           <== NOT EXECUTED
                                                                      
0004c774 <_Thread_Resume>:                                            
{                                                                     
                                                                      
  ISR_Level       level;                                              
  States_Control  current_state;                                      
                                                                      
  _ISR_Disable( level );                                              
   4c774:	327c 0700      	moveaw #1792,%a1                            
   4c778:	2009           	movel %a1,%d0                               
                                                                      
void _Thread_Resume(                                                  
  Thread_Control   *the_thread,                                       
  bool              force                                             
)                                                                     
{                                                                     
   4c77a:	4e56 ffec      	linkw %fp,#-20                              
   4c77e:	206e 0008      	moveal %fp@(8),%a0                          
   4c782:	48d7 1c0c      	moveml %d2-%d3/%a2-%a4,%sp@                 
                                                                      
  ISR_Level       level;                                              
  States_Control  current_state;                                      
                                                                      
  _ISR_Disable( level );                                              
   4c786:	40c1           	movew %sr,%d1                               
   4c788:	8081           	orl %d1,%d0                                 
   4c78a:	46c0           	movew %d0,%sr                               
      _ISR_Enable( level );                                           
      return;                                                         
    }                                                                 
  #endif                                                              
                                                                      
  current_state = the_thread->current_state;                          
   4c78c:	2028 0010      	movel %a0@(16),%d0                          
  if ( current_state & STATES_SUSPENDED ) {                           
   4c790:	0800 0001      	btst #1,%d0                                 
   4c794:	6774           	beqs 4c80a <_Thread_Resume+0x96>            
   4c796:	74fd           	moveq #-3,%d2                               
   4c798:	c082           	andl %d2,%d0                                
    current_state =                                                   
   4c79a:	2140 0010      	movel %d0,%a0@(16)                          
    the_thread->current_state = _States_Clear(STATES_SUSPENDED, current_state);
                                                                      
    if ( _States_Is_ready( current_state ) ) {                        
   4c79e:	666a           	bnes 4c80a <_Thread_Resume+0x96>            
                                                                      
RTEMS_INLINE_ROUTINE void _Priority_Add_to_bit_map (                  
  Priority_Information *the_priority_map                              
)                                                                     
{                                                                     
  *the_priority_map->minor |= the_priority_map->ready_minor;          
   4c7a0:	2868 008e      	moveal %a0@(142),%a4                        
   4c7a4:	3028 0094      	movew %a0@(148),%d0                         
   4c7a8:	3414           	movew %a4@,%d2                              
                                                                      
      _Priority_Add_to_bit_map( &the_thread->Priority_map );          
                                                                      
      _Chain_Append_unprotected(the_thread->ready, &the_thread->Object.Node);
   4c7aa:	2468 008a      	moveal %a0@(138),%a2                        
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *old_last_node;                                          
                                                                      
  the_node->next      = _Chain_Tail(the_chain);                       
   4c7ae:	260a           	movel %a2,%d3                               
   4c7b0:	5883           	addql #4,%d3                                
   4c7b2:	8082           	orl %d2,%d0                                 
   4c7b4:	2083           	movel %d3,%a0@                              
  old_last_node       = the_chain->last;                              
   4c7b6:	266a 0008      	moveal %a2@(8),%a3                          
   4c7ba:	3880           	movew %d0,%a4@                              
  the_chain->last     = the_node;                                     
   4c7bc:	2548 0008      	movel %a0,%a2@(8)                           
  _Priority_Major_bit_map  |= the_priority_map->ready_major;          
   4c7c0:	3439 0006 4c30 	movew 64c30 <_Priority_Major_bit_map>,%d2   
   4c7c6:	3028 0092      	movew %a0@(146),%d0                         
  old_last_node->next = the_node;                                     
  the_node->previous  = old_last_node;                                
   4c7ca:	214b 0004      	movel %a3,%a0@(4)                           
   4c7ce:	8082           	orl %d2,%d0                                 
  Chain_Node *old_last_node;                                          
                                                                      
  the_node->next      = _Chain_Tail(the_chain);                       
  old_last_node       = the_chain->last;                              
  the_chain->last     = the_node;                                     
  old_last_node->next = the_node;                                     
   4c7d0:	2688           	movel %a0,%a3@                              
   4c7d2:	33c0 0006 4c30 	movew %d0,64c30 <_Priority_Major_bit_map>   
                                                                      
      _ISR_Flash( level );                                            
   4c7d8:	2009           	movel %a1,%d0                               
   4c7da:	46c1           	movew %d1,%sr                               
   4c7dc:	8081           	orl %d1,%d0                                 
   4c7de:	46c0           	movew %d0,%sr                               
                                                                      
      if ( the_thread->current_priority < _Thread_Heir->current_priority ) {
   4c7e0:	2028 0014      	movel %a0@(20),%d0                          
   4c7e4:	2279 0006 4c0e 	moveal 64c0e <_Thread_Heir>,%a1             
   4c7ea:	b0a9 0014      	cmpl %a1@(20),%d0                           
   4c7ee:	641a           	bccs 4c80a <_Thread_Resume+0x96>            
        _Thread_Heir = the_thread;                                    
   4c7f0:	23c8 0006 4c0e 	movel %a0,64c0e <_Thread_Heir>              
        if ( _Thread_Executing->is_preemptible ||                     
   4c7f6:	2079 0006 4c3a 	moveal 64c3a <_Thread_Executing>,%a0        
   4c7fc:	4a28 0075      	tstb %a0@(117)                              
   4c800:	6712           	beqs 4c814 <_Thread_Resume+0xa0>            
             the_thread->current_priority == 0 )                      
          _Context_Switch_necessary = true;                           
   4c802:	7001           	moveq #1,%d0                                
   4c804:	13c0 0006 4c4a 	moveb %d0,64c4a <_Context_Switch_necessary> 
      }                                                               
    }                                                                 
  }                                                                   
                                                                      
  _ISR_Enable( level );                                               
   4c80a:	46c1           	movew %d1,%sr                               
}                                                                     
   4c80c:	4cd7 1c0c      	moveml %sp@,%d2-%d3/%a2-%a4                 
   4c810:	4e5e           	unlk %fp                                    
   4c812:	4e75           	rts                                         
                                                                      
      _ISR_Flash( level );                                            
                                                                      
      if ( the_thread->current_priority < _Thread_Heir->current_priority ) {
        _Thread_Heir = the_thread;                                    
        if ( _Thread_Executing->is_preemptible ||                     
   4c814:	4a80           	tstl %d0                                    
   4c816:	66f2           	bnes 4c80a <_Thread_Resume+0x96>            
             the_thread->current_priority == 0 )                      
          _Context_Switch_necessary = true;                           
   4c818:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4c81a:	13c0 0006 4c4a 	moveb %d0,64c4a <_Context_Switch_necessary> <== NOT EXECUTED
   4c820:	60e8           	bras 4c80a <_Thread_Resume+0x96>            <== NOT EXECUTED
	...                                                                  
                                                                      
00048b88 <_Thread_Yield_processor>:                                   
 *    ready chain                                                     
 *    select heir                                                     
 */                                                                   
                                                                      
void _Thread_Yield_processor( void )                                  
{                                                                     
   48b88:	4e56 fff4      	linkw %fp,#-12                              
  ISR_Level       level;                                              
  Thread_Control *executing;                                          
  Chain_Control  *ready;                                              
                                                                      
  executing = _Thread_Executing;                                      
   48b8c:	2079 0005 f032 	moveal 5f032 <_Thread_Executing>,%a0        
 *    ready chain                                                     
 *    select heir                                                     
 */                                                                   
                                                                      
void _Thread_Yield_processor( void )                                  
{                                                                     
   48b92:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     
  Thread_Control *executing;                                          
  Chain_Control  *ready;                                              
                                                                      
  executing = _Thread_Executing;                                      
  ready     = executing->ready;                                       
  _ISR_Disable( level );                                              
   48b96:	243c 0000 0700 	movel #1792,%d2                             
   48b9c:	2002           	movel %d2,%d0                               
  ISR_Level       level;                                              
  Thread_Control *executing;                                          
  Chain_Control  *ready;                                              
                                                                      
  executing = _Thread_Executing;                                      
  ready     = executing->ready;                                       
   48b9e:	2268 008a      	moveal %a0@(138),%a1                        
  _ISR_Disable( level );                                              
   48ba2:	40c1           	movew %sr,%d1                               
   48ba4:	8081           	orl %d1,%d0                                 
   48ba6:	46c0           	movew %d0,%sr                               
    if ( !_Chain_Has_only_one_node( ready ) ) {                       
   48ba8:	2029 0008      	movel %a1@(8),%d0                           
   48bac:	b091           	cmpl %a1@,%d0                               
   48bae:	6750           	beqs 48c00 <_Thread_Yield_processor+0x78>   
)                                                                     
{                                                                     
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
   48bb0:	2450           	moveal %a0@,%a2                             
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *old_last_node;                                          
                                                                      
  the_node->next      = _Chain_Tail(the_chain);                       
   48bb2:	2009           	movel %a1,%d0                               
   48bb4:	5880           	addql #4,%d0                                
{                                                                     
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
  previous       = the_node->previous;                                
   48bb6:	2668 0004      	moveal %a0@(4),%a3                          
  next->previous = previous;                                          
  previous->next = next;                                              
   48bba:	268a           	movel %a2,%a3@                              
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
  previous       = the_node->previous;                                
  next->previous = previous;                                          
   48bbc:	254b 0004      	movel %a3,%a2@(4)                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *old_last_node;                                          
                                                                      
  the_node->next      = _Chain_Tail(the_chain);                       
   48bc0:	2080           	movel %d0,%a0@                              
  old_last_node       = the_chain->last;                              
   48bc2:	2469 0008      	moveal %a1@(8),%a2                          
  the_chain->last     = the_node;                                     
   48bc6:	2348 0008      	movel %a0,%a1@(8)                           
  old_last_node->next = the_node;                                     
  the_node->previous  = old_last_node;                                
   48bca:	214a 0004      	movel %a2,%a0@(4)                           
  Chain_Node *old_last_node;                                          
                                                                      
  the_node->next      = _Chain_Tail(the_chain);                       
  old_last_node       = the_chain->last;                              
  the_chain->last     = the_node;                                     
  old_last_node->next = the_node;                                     
   48bce:	2488           	movel %a0,%a2@                              
      _Chain_Extract_unprotected( &executing->Object.Node );          
      _Chain_Append_unprotected( ready, &executing->Object.Node );    
                                                                      
      _ISR_Flash( level );                                            
   48bd0:	46c1           	movew %d1,%sr                               
   48bd2:	8481           	orl %d1,%d2                                 
   48bd4:	46c2           	movew %d2,%sr                               
                                                                      
      if ( _Thread_Is_heir( executing ) )                             
   48bd6:	b1f9 0005 f006 	cmpal 5f006 <_Thread_Heir>,%a0              
   48bdc:	6712           	beqs 48bf0 <_Thread_Yield_processor+0x68>   
        _Thread_Heir = (Thread_Control *) ready->first;               
      _Context_Switch_necessary = true;                               
    }                                                                 
    else if ( !_Thread_Is_heir( executing ) )                         
      _Context_Switch_necessary = true;                               
   48bde:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   48be0:	13c0 0005 f042 	moveb %d0,5f042 <_Context_Switch_necessary> <== NOT EXECUTED
                                                                      
  _ISR_Enable( level );                                               
   48be6:	46c1           	movew %d1,%sr                               
}                                                                     
   48be8:	4cd7 0c04      	moveml %sp@,%d2/%a2-%a3                     
   48bec:	4e5e           	unlk %fp                                    
   48bee:	4e75           	rts                                         
      _Chain_Append_unprotected( ready, &executing->Object.Node );    
                                                                      
      _ISR_Flash( level );                                            
                                                                      
      if ( _Thread_Is_heir( executing ) )                             
        _Thread_Heir = (Thread_Control *) ready->first;               
   48bf0:	23d1 0005 f006 	movel %a1@,5f006 <_Thread_Heir>             
      _Context_Switch_necessary = true;                               
    }                                                                 
    else if ( !_Thread_Is_heir( executing ) )                         
      _Context_Switch_necessary = true;                               
   48bf6:	7001           	moveq #1,%d0                                
   48bf8:	13c0 0005 f042 	moveb %d0,5f042 <_Context_Switch_necessary> 
   48bfe:	60e6           	bras 48be6 <_Thread_Yield_processor+0x5e>   
                                                                      
      if ( _Thread_Is_heir( executing ) )                             
        _Thread_Heir = (Thread_Control *) ready->first;               
      _Context_Switch_necessary = true;                               
    }                                                                 
    else if ( !_Thread_Is_heir( executing ) )                         
   48c00:	b1f9 0005 f006 	cmpal 5f006 <_Thread_Heir>,%a0              
   48c06:	67de           	beqs 48be6 <_Thread_Yield_processor+0x5e>   
      _Context_Switch_necessary = true;                               
   48c08:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   48c0a:	13c0 0005 f042 	moveb %d0,5f042 <_Context_Switch_necessary> <== NOT EXECUTED
   48c10:	60d4           	bras 48be6 <_Thread_Yield_processor+0x5e>   <== NOT EXECUTED
	...                                                                  
                                                                      
00047834 <_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 ) ) {                  
   47834:	7202           	moveq #2,%d1                                
  Thread_blocking_operation_States  sync_state __attribute__((unused)),
#endif                                                                
  Thread_Control                   *the_thread,                       
  ISR_Level                         level                             
)                                                                     
{                                                                     
   47836:	4e56 0000      	linkw %fp,#0                                
   4783a:	202e 0010      	movel %fp@(16),%d0                          
   4783e:	2f0a           	movel %a2,%sp@-                             
   47840:	246e 000c      	moveal %fp@(12),%a2                         
  #endif                                                              
                                                                      
  /*                                                                  
   * The thread is not waiting on anything after this completes.      
   */                                                                 
  the_thread->Wait.queue = NULL;                                      
   47844:	42aa 0044      	clrl %a2@(68)                               
                                                                      
  /*                                                                  
   *  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 ) ) {                  
   47848:	b2aa 0050      	cmpl %a2@(80),%d1                           
   4784c:	671c           	beqs 4786a <_Thread_blocking_operation_Cancel+0x36>
    _Watchdog_Deactivate( &the_thread->Timer );                       
    _ISR_Enable( level );                                             
    (void) _Watchdog_Remove( &the_thread->Timer );                    
  } else                                                              
    _ISR_Enable( level );                                             
   4784e:	46c0           	movew %d0,%sr                               
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unblock (                           
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
  _Thread_Clear_state( the_thread, STATES_BLOCKED );                  
   47850:	2d4a 0008      	movel %a2,%fp@(8)                           
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
                                                                      
}                                                                     
   47854:	246e fffc      	moveal %fp@(-4),%a2                         
   47858:	203c 1003 fff8 	movel #268697592,%d0                        
   4785e:	2d40 000c      	movel %d0,%fp@(12)                          
   47862:	4e5e           	unlk %fp                                    
   47864:	4ef9 0004 79e8 	jmp 479e8 <_Thread_Clear_state>             
RTEMS_INLINE_ROUTINE void _Watchdog_Deactivate(                       
  Watchdog_Control *the_watchdog                                      
)                                                                     
{                                                                     
                                                                      
  the_watchdog->state = WATCHDOG_REMOVE_IT;                           
   4786a:	123c 0003      	moveb #3,%d1                                
   4786e:	2541 0050      	movel %d1,%a2@(80)                          
   *  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 ) ) {                  
    _Watchdog_Deactivate( &the_thread->Timer );                       
    _ISR_Enable( level );                                             
   47872:	46c0           	movew %d0,%sr                               
    (void) _Watchdog_Remove( &the_thread->Timer );                    
   47874:	486a 0048      	pea %a2@(72)                                
   47878:	4eb9 0004 90a4 	jsr 490a4 <_Watchdog_Remove>                
   4787e:	588f           	addql #4,%sp                                
   47880:	203c 1003 fff8 	movel #268697592,%d0                        
   47886:	2d4a 0008      	movel %a2,%fp@(8)                           
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
                                                                      
}                                                                     
   4788a:	246e fffc      	moveal %fp@(-4),%a2                         
   4788e:	2d40 000c      	movel %d0,%fp@(12)                          
   47892:	4e5e           	unlk %fp                                    
   47894:	4ef9 0004 79e8 	jmp 479e8 <_Thread_Clear_state>             
	...                                                                  
                                                                      
000483b4 <_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                                       
)                                                                     
{                                                                     
   483b4:	4e56 ffe4      	linkw %fp,#-28                              
   483b8:	48d7 1c3c      	moveml %d2-%d5/%a2-%a4,%sp@                 
   483bc:	266e 000c      	moveal %fp@(12),%a3                         
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
   483c0:	41eb 003c      	lea %a3@(60),%a0                            
  return THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;                  
                                                                      
restart_reverse_search:                                               
  search_priority     = PRIORITY_MAXIMUM + 1;                         
                                                                      
  _ISR_Disable( level );                                              
   483c4:	263c 0000 0700 	movel #1792,%d3                             
  Priority_Control     priority;                                      
  States_Control       block_state;                                   
                                                                      
  _Chain_Initialize_empty( &the_thread->Wait.Block2n );               
                                                                      
  priority     = the_thread->current_priority;                        
   483ca:	222b 0014      	movel %a3@(20),%d1                          
  header_index = _Thread_queue_Header_number( priority );             
  header       = &the_thread_queue->Queues.Priority[ header_index ];  
   483ce:	2401           	movel %d1,%d2                               
   483d0:	ec8a           	lsrl #6,%d2                                 
   483d2:	2002           	movel %d2,%d0                               
   483d4:	e58a           	lsll #2,%d2                                 
   483d6:	e988           	lsll #4,%d0                                 
Thread_blocking_operation_States _Thread_queue_Enqueue_priority (     
  Thread_queue_Control *the_thread_queue,                             
  Thread_Control       *the_thread,                                   
  ISR_Level            *level_p                                       
)                                                                     
{                                                                     
   483d8:	286e 0008      	moveal %fp@(8),%a4                          
                                                                      
  _Chain_Initialize_empty( &the_thread->Wait.Block2n );               
                                                                      
  priority     = the_thread->current_priority;                        
  header_index = _Thread_queue_Header_number( priority );             
  header       = &the_thread_queue->Queues.Priority[ header_index ];  
   483dc:	9082           	subl %d2,%d0                                
   483de:	45f4 0800      	lea %a4@(00000000,%d0:l),%a2                
   483e2:	2748 0038      	movel %a0,%a3@(56)                          
  the_chain->permanent_null = NULL;                                   
  the_chain->last           = _Chain_Head(the_chain);                 
   483e6:	41eb 0038      	lea %a3@(56),%a0                            
  block_state  = the_thread_queue->state;                             
   483ea:	242c 0038      	movel %a4@(56),%d2                          
   483ee:	2748 0040      	movel %a0,%a3@(64)                          
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
  the_chain->permanent_null = NULL;                                   
   483f2:	42ab 003c      	clrl %a3@(60)                               
                                                                      
  if ( _Thread_queue_Is_reverse_search( priority ) )                  
   483f6:	0801 0005      	btst #5,%d1                                 
   483fa:	6656           	bnes 48452 <_Thread_queue_Enqueue_priority+0x9e>
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Tail(                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
   return (Chain_Node *) &the_chain->permanent_null;                  
   483fc:	2a0a           	movel %a2,%d5                               
    goto restart_reverse_search;                                      
                                                                      
restart_forward_search:                                               
  search_priority = PRIORITY_MINIMUM - 1;                             
  _ISR_Disable( level );                                              
   483fe:	2803           	movel %d3,%d4                               
   48400:	5885           	addql #4,%d5                                
   48402:	2004           	movel %d4,%d0                               
   48404:	40c3           	movew %sr,%d3                               
   48406:	8083           	orl %d3,%d0                                 
   48408:	46c0           	movew %d0,%sr                               
  search_thread = (Thread_Control *) header->first;                   
   4840a:	2052           	moveal %a2@,%a0                             
  while ( !_Chain_Is_tail( header, (Chain_Node *)search_thread ) ) {  
   4840c:	ba88           	cmpl %a0,%d5                                
   4840e:	6700 010a      	beqw 4851a <_Thread_queue_Enqueue_priority+0x166>
    search_priority = search_thread->current_priority;                
   48412:	2268 0014      	moveal %a0@(20),%a1                         
    if ( priority <= search_priority )                                
   48416:	b3c1           	cmpal %d1,%a1                               
   48418:	6418           	bccs 48432 <_Thread_queue_Enqueue_priority+0x7e>
      break;                                                          
    search_priority = search_thread->current_priority;                
    if ( priority <= search_priority )                                
      break;                                                          
#endif                                                                
    _ISR_Flash( level );                                              
   4841a:	2004           	movel %d4,%d0                               
   4841c:	46c3           	movew %d3,%sr                               
   4841e:	8083           	orl %d3,%d0                                 
   48420:	46c0           	movew %d0,%sr                               
    if ( !_States_Are_set( search_thread->current_state, block_state) ) {
   48422:	2002           	movel %d2,%d0                               
   48424:	c0a8 0010      	andl %a0@(16),%d0                           
   48428:	6700 0092      	beqw 484bc <_Thread_queue_Enqueue_priority+0x108>
      _ISR_Enable( level );                                           
      goto restart_forward_search;                                    
    }                                                                 
    search_thread =                                                   
       (Thread_Control *)search_thread->Object.Node.next;             
   4842c:	2050           	moveal %a0@,%a0                             
                                                                      
restart_forward_search:                                               
  search_priority = PRIORITY_MINIMUM - 1;                             
  _ISR_Disable( level );                                              
  search_thread = (Thread_Control *) header->first;                   
  while ( !_Chain_Is_tail( header, (Chain_Node *)search_thread ) ) {  
   4842e:	ba88           	cmpl %a0,%d5                                
   48430:	66e0           	bnes 48412 <_Thread_queue_Enqueue_priority+0x5e>
   48432:	2403           	movel %d3,%d2                               
    }                                                                 
    search_thread =                                                   
       (Thread_Control *)search_thread->Object.Node.next;             
  }                                                                   
                                                                      
  if ( the_thread_queue->sync_state !=                                
   48434:	7001           	moveq #1,%d0                                
   48436:	b0ac 0030      	cmpl %a4@(48),%d0                           
   4843a:	6700 0094      	beqw 484d0 <_Thread_queue_Enqueue_priority+0x11c>
   *  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;                                                   
   4843e:	206e 0010      	moveal %fp@(16),%a0                         
  return the_thread_queue->sync_state;                                
   48442:	202c 0030      	movel %a4@(48),%d0                          
   *  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;                                                   
   48446:	2082           	movel %d2,%a0@                              
  return the_thread_queue->sync_state;                                
}                                                                     
   48448:	4cd7 1c3c      	moveml %sp@,%d2-%d5/%a2-%a4                 
   4844c:	4e5e           	unlk %fp                                    
   4844e:	4e75           	rts                                         
    if ( priority >= search_priority )                                
      break;                                                          
#endif                                                                
    _ISR_Flash( level );                                              
    if ( !_States_Are_set( search_thread->current_state, block_state) ) {
      _ISR_Enable( level );                                           
   48450:	46c4           	movew %d4,%sr                               
  the_thread->Wait.queue = the_thread_queue;                          
  _ISR_Enable( level );                                               
  return THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;                  
                                                                      
restart_reverse_search:                                               
  search_priority     = PRIORITY_MAXIMUM + 1;                         
   48452:	4284           	clrl %d4                                    
   48454:	1839 0005 d7c2 	moveb 5d7c2 <rtems_maximum_priority>,%d4    
                                                                      
  _ISR_Disable( level );                                              
   4845a:	2003           	movel %d3,%d0                               
  the_thread->Wait.queue = the_thread_queue;                          
  _ISR_Enable( level );                                               
  return THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED;                  
                                                                      
restart_reverse_search:                                               
  search_priority     = PRIORITY_MAXIMUM + 1;                         
   4845c:	2244           	moveal %d4,%a1                              
   4845e:	5289           	addql #1,%a1                                
                                                                      
  _ISR_Disable( level );                                              
   48460:	40c4           	movew %sr,%d4                               
   48462:	8084           	orl %d4,%d0                                 
   48464:	46c0           	movew %d0,%sr                               
  search_thread = (Thread_Control *) header->last;                    
   48466:	206a 0008      	moveal %a2@(8),%a0                          
  while ( !_Chain_Is_head( header, (Chain_Node *)search_thread ) ) {  
   4846a:	b5c8           	cmpal %a0,%a2                               
   4846c:	6720           	beqs 4848e <_Thread_queue_Enqueue_priority+0xda>
    search_priority = search_thread->current_priority;                
   4846e:	2268 0014      	moveal %a0@(20),%a1                         
    if ( priority >= search_priority )                                
   48472:	b3c1           	cmpal %d1,%a1                               
   48474:	6318           	blss 4848e <_Thread_queue_Enqueue_priority+0xda>
      break;                                                          
    search_priority = search_thread->current_priority;                
    if ( priority >= search_priority )                                
      break;                                                          
#endif                                                                
    _ISR_Flash( level );                                              
   48476:	2003           	movel %d3,%d0                               
   48478:	46c4           	movew %d4,%sr                               
   4847a:	8084           	orl %d4,%d0                                 
   4847c:	46c0           	movew %d0,%sr                               
    if ( !_States_Are_set( search_thread->current_state, block_state) ) {
   4847e:	2002           	movel %d2,%d0                               
   48480:	c0a8 0010      	andl %a0@(16),%d0                           
   48484:	67ca           	beqs 48450 <_Thread_queue_Enqueue_priority+0x9c>
      _ISR_Enable( level );                                           
      goto restart_reverse_search;                                    
    }                                                                 
    search_thread = (Thread_Control *)                                
   48486:	2068 0004      	moveal %a0@(4),%a0                          
restart_reverse_search:                                               
  search_priority     = PRIORITY_MAXIMUM + 1;                         
                                                                      
  _ISR_Disable( level );                                              
  search_thread = (Thread_Control *) header->last;                    
  while ( !_Chain_Is_head( header, (Chain_Node *)search_thread ) ) {  
   4848a:	b5c8           	cmpal %a0,%a2                               
   4848c:	66e0           	bnes 4846e <_Thread_queue_Enqueue_priority+0xba>
   4848e:	2404           	movel %d4,%d2                               
    }                                                                 
    search_thread = (Thread_Control *)                                
                         search_thread->Object.Node.previous;         
  }                                                                   
                                                                      
  if ( the_thread_queue->sync_state !=                                
   48490:	7001           	moveq #1,%d0                                
   48492:	b0ac 0030      	cmpl %a4@(48),%d0                           
   48496:	66a6           	bnes 4843e <_Thread_queue_Enqueue_priority+0x8a>
       THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED )                   
    goto synchronize;                                                 
                                                                      
  the_thread_queue->sync_state = THREAD_BLOCKING_OPERATION_SYNCHRONIZED;
   48498:	42ac 0030      	clrl %a4@(48)                               
                                                                      
  if ( priority == search_priority )                                  
   4849c:	b3c1           	cmpal %d1,%a1                               
   4849e:	6756           	beqs 484f6 <_Thread_queue_Enqueue_priority+0x142>
    goto equal_priority;                                              
                                                                      
  search_node = (Chain_Node *) search_thread;                         
  next_node   = search_node->next;                                    
   484a0:	2250           	moveal %a0@,%a1                             
  the_node    = (Chain_Node *) the_thread;                            
                                                                      
  the_node->next          = next_node;                                
  the_node->previous      = search_node;                              
   484a2:	2748 0004      	movel %a0,%a3@(4)                           
                                                                      
  search_node = (Chain_Node *) search_thread;                         
  next_node   = search_node->next;                                    
  the_node    = (Chain_Node *) the_thread;                            
                                                                      
  the_node->next          = next_node;                                
   484a6:	2689           	movel %a1,%a3@                              
  the_node->previous      = search_node;                              
  search_node->next       = the_node;                                 
  next_node->previous    = the_node;                                  
  the_thread->Wait.queue = the_thread_queue;                          
   484a8:	274c 0044      	movel %a4,%a3@(68)                          
  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;                                 
   484ac:	208b           	movel %a3,%a0@                              
  next_node->previous    = the_node;                                  
   484ae:	234b 0004      	movel %a3,%a1@(4)                           
  the_thread->Wait.queue = the_thread_queue;                          
  _ISR_Enable( level );                                               
   484b2:	46c4           	movew %d4,%sr                               
   *                                                                  
   *  WARNING! Returning with interrupts disabled!                    
   */                                                                 
  *level_p = level;                                                   
  return the_thread_queue->sync_state;                                
}                                                                     
   484b4:	4cd7 1c3c      	moveml %sp@,%d2-%d5/%a2-%a4                 
   484b8:	4e5e           	unlk %fp                                    
   484ba:	4e75           	rts                                         
    if ( priority <= search_priority )                                
      break;                                                          
#endif                                                                
    _ISR_Flash( level );                                              
    if ( !_States_Are_set( search_thread->current_state, block_state) ) {
      _ISR_Enable( level );                                           
   484bc:	46c3           	movew %d3,%sr                               <== NOT EXECUTED
  if ( _Thread_queue_Is_reverse_search( priority ) )                  
    goto restart_reverse_search;                                      
                                                                      
restart_forward_search:                                               
  search_priority = PRIORITY_MINIMUM - 1;                             
  _ISR_Disable( level );                                              
   484be:	2004           	movel %d4,%d0                               <== NOT EXECUTED
   484c0:	40c3           	movew %sr,%d3                               <== NOT EXECUTED
   484c2:	8083           	orl %d3,%d0                                 <== NOT EXECUTED
   484c4:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
  search_thread = (Thread_Control *) header->first;                   
   484c6:	2052           	moveal %a2@,%a0                             <== NOT EXECUTED
  while ( !_Chain_Is_tail( header, (Chain_Node *)search_thread ) ) {  
   484c8:	ba88           	cmpl %a0,%d5                                <== NOT EXECUTED
   484ca:	6600 ff46      	bnew 48412 <_Thread_queue_Enqueue_priority+0x5e><== NOT EXECUTED
   484ce:	604a           	bras 4851a <_Thread_queue_Enqueue_priority+0x166><== NOT EXECUTED
                                                                      
  if ( the_thread_queue->sync_state !=                                
       THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED )                   
    goto synchronize;                                                 
                                                                      
  the_thread_queue->sync_state = THREAD_BLOCKING_OPERATION_SYNCHRONIZED;
   484d0:	42ac 0030      	clrl %a4@(48)                               
                                                                      
  if ( priority == search_priority )                                  
   484d4:	b3c1           	cmpal %d1,%a1                               
   484d6:	671e           	beqs 484f6 <_Thread_queue_Enqueue_priority+0x142>
    goto equal_priority;                                              
                                                                      
  search_node   = (Chain_Node *) search_thread;                       
  previous_node = search_node->previous;                              
   484d8:	2268 0004      	moveal %a0@(4),%a1                          
  the_node      = (Chain_Node *) the_thread;                          
                                                                      
  the_node->next         = search_node;                               
   484dc:	2688           	movel %a0,%a3@                              
  the_node->previous     = previous_node;                             
   484de:	2749 0004      	movel %a1,%a3@(4)                           
  previous_node->next    = the_node;                                  
  search_node->previous  = the_node;                                  
  the_thread->Wait.queue = the_thread_queue;                          
   484e2:	274c 0044      	movel %a4,%a3@(68)                          
  previous_node = search_node->previous;                              
  the_node      = (Chain_Node *) the_thread;                          
                                                                      
  the_node->next         = search_node;                               
  the_node->previous     = previous_node;                             
  previous_node->next    = the_node;                                  
   484e6:	228b           	movel %a3,%a1@                              
  search_node->previous  = the_node;                                  
   484e8:	214b 0004      	movel %a3,%a0@(4)                           
  the_thread->Wait.queue = the_thread_queue;                          
  _ISR_Enable( level );                                               
   484ec:	46c3           	movew %d3,%sr                               
   *                                                                  
   *  WARNING! Returning with interrupts disabled!                    
   */                                                                 
  *level_p = level;                                                   
  return the_thread_queue->sync_state;                                
}                                                                     
   484ee:	4cd7 1c3c      	moveml %sp@,%d2-%d5/%a2-%a4                 
   484f2:	4e5e           	unlk %fp                                    
   484f4:	4e75           	rts                                         
   484f6:	41e8 003c      	lea %a0@(60),%a0                            
  _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 );        
  previous_node = search_node->previous;                              
   484fa:	2268 0004      	moveal %a0@(4),%a1                          
  the_node      = (Chain_Node *) the_thread;                          
                                                                      
  the_node->next         = search_node;                               
   484fe:	2688           	movel %a0,%a3@                              
  the_node->previous     = previous_node;                             
   48500:	2749 0004      	movel %a1,%a3@(4)                           
  previous_node->next    = the_node;                                  
  search_node->previous  = the_node;                                  
  the_thread->Wait.queue = the_thread_queue;                          
   48504:	274c 0044      	movel %a4,%a3@(68)                          
  previous_node = search_node->previous;                              
  the_node      = (Chain_Node *) the_thread;                          
                                                                      
  the_node->next         = search_node;                               
  the_node->previous     = previous_node;                             
  previous_node->next    = the_node;                                  
   48508:	228b           	movel %a3,%a1@                              
  search_node->previous  = the_node;                                  
   4850a:	214b 0004      	movel %a3,%a0@(4)                           
  the_thread->Wait.queue = the_thread_queue;                          
  _ISR_Enable( level );                                               
   4850e:	46c2           	movew %d2,%sr                               
   48510:	7001           	moveq #1,%d0                                
   *                                                                  
   *  WARNING! Returning with interrupts disabled!                    
   */                                                                 
  *level_p = level;                                                   
  return the_thread_queue->sync_state;                                
}                                                                     
   48512:	4cd7 1c3c      	moveml %sp@,%d2-%d5/%a2-%a4                 
   48516:	4e5e           	unlk %fp                                    
   48518:	4e75           	rts                                         
                                                                      
restart_forward_search:                                               
  search_priority = PRIORITY_MINIMUM - 1;                             
  _ISR_Disable( level );                                              
  search_thread = (Thread_Control *) header->first;                   
  while ( !_Chain_Is_tail( header, (Chain_Node *)search_thread ) ) {  
   4851a:	2403           	movel %d3,%d2                               
   4851c:	327c ffff      	moveaw #-1,%a1                              
    }                                                                 
    search_thread =                                                   
       (Thread_Control *)search_thread->Object.Node.next;             
  }                                                                   
                                                                      
  if ( the_thread_queue->sync_state !=                                
   48520:	7001           	moveq #1,%d0                                
   48522:	b0ac 0030      	cmpl %a4@(48),%d0                           
   48526:	6600 ff16      	bnew 4843e <_Thread_queue_Enqueue_priority+0x8a>
   4852a:	60a4           	bras 484d0 <_Thread_queue_Enqueue_priority+0x11c>
                                                                      
00048318 <_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                               
)                                                                     
{                                                                     
   48318:	4e56 fff0      	linkw %fp,#-16                              
   4831c:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     
   48320:	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 );           
   48324:	2f2b 0038      	movel %a3@(56),%sp@-                        
    Thread_queue_Control *,                                           
    Thread_Control *,                                                 
    ISR_Level *                                                       
  );                                                                  
                                                                      
  the_thread = _Thread_Executing;                                     
   48328:	2479 0005 f032 	moveal 5f032 <_Thread_Executing>,%a2        
void _Thread_queue_Enqueue_with_handler(                              
  Thread_queue_Control         *the_thread_queue,                     
  Watchdog_Interval             timeout,                              
  Thread_queue_Timeout_callout  handler                               
)                                                                     
{                                                                     
   4832e:	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 );           
   48332:	2f0a           	movel %a2,%sp@-                             
   48334:	4eb9 0004 8720 	jsr 48720 <_Thread_Set_state>               
                                                                      
  /*                                                                  
   *  If the thread wants to timeout, then schedule its timer.        
   */                                                                 
  if ( timeout ) {                                                    
   4833a:	508f           	addql #8,%sp                                
   4833c:	4a82           	tstl %d2                                    
   4833e:	6644           	bnes 48384 <_Thread_queue_Enqueue_with_handler+0x6c>
  }                                                                   
                                                                      
  /*                                                                  
   *  Now enqueue the thread per the discipline for this thread queue.
   */                                                                 
  if ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY )
   48340:	41f9 0004 83b4 	lea 483b4 <_Thread_queue_Enqueue_priority>,%a0
   48346:	7001           	moveq #1,%d0                                
   48348:	b0ab 0034      	cmpl %a3@(52),%d0                           
   4834c:	6706           	beqs 48354 <_Thread_queue_Enqueue_with_handler+0x3c>
   4834e:	41f9 0004 c190 	lea 4c190 <_Thread_queue_Enqueue_fifo>,%a0  
    enqueue_p = _Thread_queue_Enqueue_priority;                       
  else /* must be THREAD_QUEUE_DISCIPLINE_FIFO */                     
    enqueue_p = _Thread_queue_Enqueue_fifo;                           
                                                                      
  sync_state = (*enqueue_p)( the_thread_queue, the_thread, &level );  
   48354:	486e fffc      	pea %fp@(-4)                                
   48358:	2f0a           	movel %a2,%sp@-                             
   4835a:	2f0b           	movel %a3,%sp@-                             
   4835c:	4e90           	jsr %a0@                                    
  if ( sync_state != THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED )     
   4835e:	4fef 000c      	lea %sp@(12),%sp                            
   48362:	7201           	moveq #1,%d1                                
   48364:	b280           	cmpl %d0,%d1                                
   48366:	6712           	beqs 4837a <_Thread_queue_Enqueue_with_handler+0x62>
    _Thread_blocking_operation_Cancel( sync_state, the_thread, level );
   48368:	2f2e fffc      	movel %fp@(-4),%sp@-                        
   4836c:	2f0a           	movel %a2,%sp@-                             
   4836e:	2f00           	movel %d0,%sp@-                             
   48370:	4eb9 0004 7834 	jsr 47834 <_Thread_blocking_operation_Cancel>
   48376:	4fef 000c      	lea %sp@(12),%sp                            
}                                                                     
   4837a:	4cee 0c04 fff0 	moveml %fp@(-16),%d2/%a2-%a3                
   48380:	4e5e           	unlk %fp                                    
   48382:	4e75           	rts                                         
                                                                      
  /*                                                                  
   *  If the thread wants to timeout, then schedule its timer.        
   */                                                                 
  if ( timeout ) {                                                    
    _Watchdog_Initialize(                                             
   48384:	202a 0008      	movel %a2@(8),%d0                           
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
  the_watchdog->routine   = routine;                                  
   48388:	256e 0010 0064 	movel %fp@(16),%a2@(100)                    
  the_watchdog->id        = id;                                       
   4838e:	2540 0068      	movel %d0,%a2@(104)                         
  Watchdog_Control      *the_watchdog,                                
  Watchdog_Interval      units                                        
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
   48392:	2542 0054      	movel %d2,%a2@(84)                          
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   48396:	42aa 0050      	clrl %a2@(80)                               
  the_watchdog->routine   = routine;                                  
  the_watchdog->id        = id;                                       
  the_watchdog->user_data = user_data;                                
   4839a:	42aa 006c      	clrl %a2@(108)                              
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
                                                                      
  _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );           
   4839e:	486a 0048      	pea %a2@(72)                                
   483a2:	4879 0005 f050 	pea 5f050 <_Watchdog_Ticks_chain>           
   483a8:	4eb9 0004 8f5c 	jsr 48f5c <_Watchdog_Insert>                
   483ae:	508f           	addql #8,%sp                                
   483b0:	608e           	bras 48340 <_Thread_queue_Enqueue_with_handler+0x28>
	...                                                                  
                                                                      
0004e0e8 <_Thread_queue_Extract_fifo>:                                
  Thread_Control       *the_thread                                    
)                                                                     
{                                                                     
  ISR_Level level;                                                    
                                                                      
  _ISR_Disable( level );                                              
   4e0e8:	203c 0000 0700 	movel #1792,%d0                             
                                                                      
void _Thread_queue_Extract_fifo(                                      
  Thread_queue_Control *the_thread_queue __attribute__((unused)),     
  Thread_Control       *the_thread                                    
)                                                                     
{                                                                     
   4e0ee:	4e56 0000      	linkw %fp,#0                                
   4e0f2:	2f0a           	movel %a2,%sp@-                             
   4e0f4:	246e 000c      	moveal %fp@(12),%a2                         
  ISR_Level level;                                                    
                                                                      
  _ISR_Disable( level );                                              
   4e0f8:	40c1           	movew %sr,%d1                               
   4e0fa:	8081           	orl %d1,%d0                                 
   4e0fc:	46c0           	movew %d0,%sr                               
                                                                      
  if ( !_States_Is_waiting_on_thread_queue( the_thread->current_state ) ) {
   4e0fe:	202a 0010      	movel %a2@(16),%d0                          
   4e102:	0280 0003 bee0 	andil #245472,%d0                           
   4e108:	6734           	beqs 4e13e <_Thread_queue_Extract_fifo+0x56>
)                                                                     
{                                                                     
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
   4e10a:	2052           	moveal %a2@,%a0                             
                                                                      
  _Chain_Extract_unprotected( &the_thread->Object.Node );             
                                                                      
  the_thread->Wait.queue = NULL;                                      
                                                                      
  if ( !_Watchdog_Is_active( &the_thread->Timer ) ) {                 
   4e10c:	7002           	moveq #2,%d0                                
  previous       = the_node->previous;                                
   4e10e:	226a 0004      	moveal %a2@(4),%a1                          
    return;                                                           
  }                                                                   
                                                                      
  _Chain_Extract_unprotected( &the_thread->Object.Node );             
                                                                      
  the_thread->Wait.queue = NULL;                                      
   4e112:	42aa 0044      	clrl %a2@(68)                               
  next->previous = previous;                                          
  previous->next = next;                                              
   4e116:	2288           	movel %a0,%a1@                              
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
  previous       = the_node->previous;                                
  next->previous = previous;                                          
   4e118:	2149 0004      	movel %a1,%a0@(4)                           
                                                                      
  if ( !_Watchdog_Is_active( &the_thread->Timer ) ) {                 
   4e11c:	b0aa 0050      	cmpl %a2@(80),%d0                           
   4e120:	6726           	beqs 4e148 <_Thread_queue_Extract_fifo+0x60>
    _ISR_Enable( level );                                             
   4e122:	46c1           	movew %d1,%sr                               
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Unblock (                           
  Thread_Control *the_thread                                          
)                                                                     
{                                                                     
  _Thread_Clear_state( the_thread, STATES_BLOCKED );                  
   4e124:	2d4a 0008      	movel %a2,%fp@(8)                           
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
                                                                      
}                                                                     
   4e128:	246e fffc      	moveal %fp@(-4),%a2                         
   4e12c:	203c 1003 fff8 	movel #268697592,%d0                        
   4e132:	2d40 000c      	movel %d0,%fp@(12)                          
   4e136:	4e5e           	unlk %fp                                    
   4e138:	4ef9 0004 79e8 	jmp 479e8 <_Thread_Clear_state>             
  ISR_Level level;                                                    
                                                                      
  _ISR_Disable( level );                                              
                                                                      
  if ( !_States_Is_waiting_on_thread_queue( the_thread->current_state ) ) {
    _ISR_Enable( level );                                             
   4e13e:	46c1           	movew %d1,%sr                               
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
                                                                      
}                                                                     
   4e140:	246e fffc      	moveal %fp@(-4),%a2                         
   4e144:	4e5e           	unlk %fp                                    
   4e146:	4e75           	rts                                         
   4e148:	7003           	moveq #3,%d0                                
   4e14a:	2540 0050      	movel %d0,%a2@(80)                          
                                                                      
  if ( !_Watchdog_Is_active( &the_thread->Timer ) ) {                 
    _ISR_Enable( level );                                             
  } else {                                                            
    _Watchdog_Deactivate( &the_thread->Timer );                       
    _ISR_Enable( level );                                             
   4e14e:	46c1           	movew %d1,%sr                               
    (void) _Watchdog_Remove( &the_thread->Timer );                    
   4e150:	486a 0048      	pea %a2@(72)                                
   4e154:	4eb9 0004 90a4 	jsr 490a4 <_Watchdog_Remove>                
   4e15a:	588f           	addql #4,%sp                                
   4e15c:	203c 1003 fff8 	movel #268697592,%d0                        
   4e162:	2d4a 0008      	movel %a2,%fp@(8)                           
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
                                                                      
}                                                                     
   4e166:	246e fffc      	moveal %fp@(-4),%a2                         
   4e16a:	2d40 000c      	movel %d0,%fp@(12)                          
   4e16e:	4e5e           	unlk %fp                                    
   4e170:	4ef9 0004 79e8 	jmp 479e8 <_Thread_Clear_state>             
	...                                                                  
                                                                      
0004c224 <_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 );                                              
   4c224:	203c 0000 0700 	movel #1792,%d0                             
void _Thread_queue_Extract_priority_helper(                           
  Thread_queue_Control *the_thread_queue __attribute__((unused)),     
  Thread_Control       *the_thread,                                   
  bool                  requeuing                                     
)                                                                     
{                                                                     
   4c22a:	4e56 ffec      	linkw %fp,#-20                              
   4c22e:	48d7 3c04      	moveml %d2/%a2-%a5,%sp@                     
   4c232:	246e 000c      	moveal %fp@(12),%a2                         
   4c236:	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 );                                              
   4c23a:	40c1           	movew %sr,%d1                               
   4c23c:	8081           	orl %d1,%d0                                 
   4c23e:	46c0           	movew %d0,%sr                               
  if ( !_States_Is_waiting_on_thread_queue( the_thread->current_state ) ) {
   4c240:	202a 0010      	movel %a2@(16),%d0                          
   4c244:	0280 0003 bee0 	andil #245472,%d0                           
   4c24a:	677e           	beqs 4c2ca <_Thread_queue_Extract_priority_helper+0xa6>
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Tail(                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
   return (Chain_Node *) &the_chain->permanent_null;                  
   4c24c:	200a           	movel %a2,%d0                               
   4c24e:	0680 0000 003c 	addil #60,%d0                               
                                                                      
  /*                                                                  
   *  The thread was actually waiting on a thread queue so let's remove it.
   */                                                                 
                                                                      
  next_node     = the_node->next;                                     
   4c254:	2652           	moveal %a2@,%a3                             
  previous_node = the_node->previous;                                 
   4c256:	226a 0004      	moveal %a2@(4),%a1                          
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  return (the_chain->first == _Chain_Tail(the_chain));                
   4c25a:	206a 0038      	moveal %a2@(56),%a0                         
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Tail(                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
   return (Chain_Node *) &the_chain->permanent_null;                  
   4c25e:	b088           	cmpl %a0,%d0                                
   4c260:	6774           	beqs 4c2d6 <_Thread_queue_Extract_priority_helper+0xb2>
                                                                      
  if ( !_Chain_Is_empty( &the_thread->Wait.Block2n ) ) {              
    new_first_node   = the_thread->Wait.Block2n.first;                
    new_first_thread = (Thread_Control *) new_first_node;             
    last_node        = the_thread->Wait.Block2n.last;                 
   4c262:	286a 0040      	moveal %a2@(64),%a4                         
    new_second_node  = new_first_node->next;                          
   4c266:	2a50           	moveal %a0@,%a5                             
                                                                      
    previous_node->next      = new_first_node;                        
    next_node->previous      = new_first_node;                        
   4c268:	2748 0004      	movel %a0,%a3@(4)                           
    new_first_node   = the_thread->Wait.Block2n.first;                
    new_first_thread = (Thread_Control *) new_first_node;             
    last_node        = the_thread->Wait.Block2n.last;                 
    new_second_node  = new_first_node->next;                          
                                                                      
    previous_node->next      = new_first_node;                        
   4c26c:	2288           	movel %a0,%a1@                              
    next_node->previous      = new_first_node;                        
    new_first_node->next     = next_node;                             
    new_first_node->previous = previous_node;                         
   4c26e:	2149 0004      	movel %a1,%a0@(4)                           
    last_node        = the_thread->Wait.Block2n.last;                 
    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;                             
   4c272:	208b           	movel %a3,%a0@                              
    new_first_node->previous = previous_node;                         
                                                                      
    if ( !_Chain_Has_only_one_node( &the_thread->Wait.Block2n ) ) {   
   4c274:	202a 0040      	movel %a2@(64),%d0                          
   4c278:	b0aa 0038      	cmpl %a2@(56),%d0                           
   4c27c:	6716           	beqs 4c294 <_Thread_queue_Extract_priority_helper+0x70>
                                        /* > two threads on 2-n */    
      new_second_node->previous =                                     
   4c27e:	43e8 0038      	lea %a0@(56),%a1                            
   4c282:	2b49 0004      	movel %a1,%a5@(4)                           
                _Chain_Head( &new_first_thread->Wait.Block2n );       
      new_first_thread->Wait.Block2n.first = new_second_node;         
   4c286:	214d 0038      	movel %a5,%a0@(56)                          
                                                                      
      new_first_thread->Wait.Block2n.last = last_node;                
   4c28a:	214c 0040      	movel %a4,%a0@(64)                          
      last_node->next = _Chain_Tail( &new_first_thread->Wait.Block2n );
   4c28e:	41e8 003c      	lea %a0@(60),%a0                            
   4c292:	2888           	movel %a0,%a4@                              
                                                                      
  /*                                                                  
   *  If we are not supposed to touch timers or the thread's state, return.
   */                                                                 
                                                                      
  if ( requeuing ) {                                                  
   4c294:	4a02           	tstb %d2                                    
   4c296:	6626           	bnes 4c2be <_Thread_queue_Extract_priority_helper+0x9a>
    _ISR_Enable( level );                                             
    return;                                                           
  }                                                                   
                                                                      
  if ( !_Watchdog_Is_active( &the_thread->Timer ) ) {                 
   4c298:	7002           	moveq #2,%d0                                
   4c29a:	b0aa 0050      	cmpl %a2@(80),%d0                           
   4c29e:	6742           	beqs 4c2e2 <_Thread_queue_Extract_priority_helper+0xbe>
    _ISR_Enable( level );                                             
   4c2a0:	46c1           	movew %d1,%sr                               
   4c2a2:	2d4a 0008      	movel %a2,%fp@(8)                           
   4c2a6:	227c 1003 fff8 	moveal #268697592,%a1                       
                                                                      
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
}                                                                     
   4c2ac:	4cee 3c04 ffec 	moveml %fp@(-20),%d2/%a2-%a5                
   4c2b2:	2d49 000c      	movel %a1,%fp@(12)                          
   4c2b6:	4e5e           	unlk %fp                                    
   4c2b8:	4ef9 0004 79e8 	jmp 479e8 <_Thread_Clear_state>             
  /*                                                                  
   *  If we are not supposed to touch timers or the thread's state, return.
   */                                                                 
                                                                      
  if ( requeuing ) {                                                  
    _ISR_Enable( level );                                             
   4c2be:	46c1           	movew %d1,%sr                               
                                                                      
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
}                                                                     
   4c2c0:	4cee 3c04 ffec 	moveml %fp@(-20),%d2/%a2-%a5                
   4c2c6:	4e5e           	unlk %fp                                    
   4c2c8:	4e75           	rts                                         
  Chain_Node     *last_node;                                          
                                                                      
  the_node = (Chain_Node *) the_thread;                               
  _ISR_Disable( level );                                              
  if ( !_States_Is_waiting_on_thread_queue( the_thread->current_state ) ) {
    _ISR_Enable( level );                                             
   4c2ca:	46c1           	movew %d1,%sr                               
                                                                      
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
}                                                                     
   4c2cc:	4cee 3c04 ffec 	moveml %fp@(-20),%d2/%a2-%a5                
   4c2d2:	4e5e           	unlk %fp                                    
   4c2d4:	4e75           	rts                                         
      new_first_thread->Wait.Block2n.last = last_node;                
      last_node->next = _Chain_Tail( &new_first_thread->Wait.Block2n );
    }                                                                 
  } else {                                                            
    previous_node->next = next_node;                                  
    next_node->previous = previous_node;                              
   4c2d6:	2749 0004      	movel %a1,%a3@(4)                           
                                                                      
      new_first_thread->Wait.Block2n.last = last_node;                
      last_node->next = _Chain_Tail( &new_first_thread->Wait.Block2n );
    }                                                                 
  } else {                                                            
    previous_node->next = next_node;                                  
   4c2da:	228b           	movel %a3,%a1@                              
                                                                      
  /*                                                                  
   *  If we are not supposed to touch timers or the thread's state, return.
   */                                                                 
                                                                      
  if ( requeuing ) {                                                  
   4c2dc:	4a02           	tstb %d2                                    
   4c2de:	67b8           	beqs 4c298 <_Thread_queue_Extract_priority_helper+0x74>
   4c2e0:	60dc           	bras 4c2be <_Thread_queue_Extract_priority_helper+0x9a>
   4c2e2:	7003           	moveq #3,%d0                                
   4c2e4:	2540 0050      	movel %d0,%a2@(80)                          
                                                                      
  if ( !_Watchdog_Is_active( &the_thread->Timer ) ) {                 
    _ISR_Enable( level );                                             
  } else {                                                            
    _Watchdog_Deactivate( &the_thread->Timer );                       
    _ISR_Enable( level );                                             
   4c2e8:	46c1           	movew %d1,%sr                               
    (void) _Watchdog_Remove( &the_thread->Timer );                    
   4c2ea:	486a 0048      	pea %a2@(72)                                
   4c2ee:	4eb9 0004 90a4 	jsr 490a4 <_Watchdog_Remove>                
   4c2f4:	588f           	addql #4,%sp                                
   4c2f6:	227c 1003 fff8 	moveal #268697592,%a1                       
   4c2fc:	2d4a 0008      	movel %a2,%fp@(8)                           
                                                                      
#if defined(RTEMS_MULTIPROCESSING)                                    
  if ( !_Objects_Is_local_id( the_thread->Object.id ) )               
    _Thread_MP_Free_proxy( the_thread );                              
#endif                                                                
}                                                                     
   4c300:	4cee 3c04 ffec 	moveml %fp@(-20),%d2/%a2-%a5                
   4c306:	2d49 000c      	movel %a1,%fp@(12)                          
   4c30a:	4e5e           	unlk %fp                                    
   4c30c:	4ef9 0004 79e8 	jmp 479e8 <_Thread_Clear_state>             
	...                                                                  
                                                                      
00048594 <_Thread_queue_Initialize>:                                  
  the_thread_queue->state          = state;                           
  the_thread_queue->discipline     = the_discipline;                  
  the_thread_queue->timeout_status = timeout_status;                  
  the_thread_queue->sync_state     = THREAD_BLOCKING_OPERATION_SYNCHRONIZED;
                                                                      
  if ( the_discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY ) {         
   48594:	7201           	moveq #1,%d1                                
  Thread_queue_Control         *the_thread_queue,                     
  Thread_queue_Disciplines      the_discipline,                       
  States_Control                state,                                
  uint32_t                      timeout_status                        
)                                                                     
{                                                                     
   48596:	4e56 0000      	linkw %fp,#0                                
   4859a:	206e 0008      	moveal %fp@(8),%a0                          
  the_thread_queue->state          = state;                           
   4859e:	216e 0010 0038 	movel %fp@(16),%a0@(56)                     
  Thread_queue_Control         *the_thread_queue,                     
  Thread_queue_Disciplines      the_discipline,                       
  States_Control                state,                                
  uint32_t                      timeout_status                        
)                                                                     
{                                                                     
   485a4:	202e 000c      	movel %fp@(12),%d0                          
  the_thread_queue->state          = state;                           
  the_thread_queue->discipline     = the_discipline;                  
  the_thread_queue->timeout_status = timeout_status;                  
   485a8:	216e 0014 003c 	movel %fp@(20),%a0@(60)                     
  States_Control                state,                                
  uint32_t                      timeout_status                        
)                                                                     
{                                                                     
  the_thread_queue->state          = state;                           
  the_thread_queue->discipline     = the_discipline;                  
   485ae:	2140 0034      	movel %d0,%a0@(52)                          
  the_thread_queue->timeout_status = timeout_status;                  
  the_thread_queue->sync_state     = THREAD_BLOCKING_OPERATION_SYNCHRONIZED;
   485b2:	42a8 0030      	clrl %a0@(48)                               
                                                                      
  if ( the_discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY ) {         
   485b6:	b280           	cmpl %d0,%d1                                
   485b8:	6712           	beqs 485cc <_Thread_queue_Initialize+0x38>  
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
   485ba:	2008           	movel %a0,%d0                               
   485bc:	5880           	addql #4,%d0                                
  the_chain->permanent_null = NULL;                                   
  the_chain->last           = _Chain_Head(the_chain);                 
   485be:	2148 0008      	movel %a0,%a0@(8)                           
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
   485c2:	2080           	movel %d0,%a0@                              
  the_chain->permanent_null = NULL;                                   
   485c4:	42a8 0004      	clrl %a0@(4)                                
      _Chain_Initialize_empty( &the_thread_queue->Queues.Priority[index] );
  } else { /* must be THREAD_QUEUE_DISCIPLINE_FIFO */                 
    _Chain_Initialize_empty( &the_thread_queue->Queues.Fifo );        
  }                                                                   
                                                                      
}                                                                     
   485c8:	4e5e           	unlk %fp                                    
   485ca:	4e75           	rts                                         
 *    timeout_status        - return on a timeout                     
 *                                                                    
 *  Output parameters: NONE                                           
 */                                                                   
                                                                      
void _Thread_queue_Initialize(                                        
   485cc:	2008           	movel %a0,%d0                               
   485ce:	0680 0000 0030 	addil #48,%d0                               
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
   485d4:	2208           	movel %a0,%d1                               
   485d6:	5881           	addql #4,%d1                                
  the_chain->permanent_null = NULL;                                   
   485d8:	42a8 0004      	clrl %a0@(4)                                
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
   485dc:	2081           	movel %d1,%a0@                              
  the_chain->permanent_null = NULL;                                   
  the_chain->last           = _Chain_Head(the_chain);                 
   485de:	2148 0008      	movel %a0,%a0@(8)                           
   485e2:	41e8 000c      	lea %a0@(12),%a0                            
  the_thread_queue->sync_state     = THREAD_BLOCKING_OPERATION_SYNCHRONIZED;
                                                                      
  if ( the_discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY ) {         
    uint32_t   index;                                                 
                                                                      
    for( index=0 ;                                                    
   485e6:	b088           	cmpl %a0,%d0                                
   485e8:	67de           	beqs 485c8 <_Thread_queue_Initialize+0x34>  
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
   485ea:	2208           	movel %a0,%d1                               
   485ec:	5881           	addql #4,%d1                                
  the_chain->permanent_null = NULL;                                   
   485ee:	42a8 0004      	clrl %a0@(4)                                
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
   485f2:	2081           	movel %d1,%a0@                              
  the_chain->permanent_null = NULL;                                   
  the_chain->last           = _Chain_Head(the_chain);                 
   485f4:	2148 0008      	movel %a0,%a0@(8)                           
   485f8:	41e8 000c      	lea %a0@(12),%a0                            
   485fc:	b088           	cmpl %a0,%d0                                
   485fe:	66d4           	bnes 485d4 <_Thread_queue_Initialize+0x40>  
   48600:	60c6           	bras 485c8 <_Thread_queue_Initialize+0x34>  
	...                                                                  
                                                                      
00048604 <_Thread_queue_Requeue>:                                     
                                                                      
void _Thread_queue_Requeue(                                           
  Thread_queue_Control *the_thread_queue,                             
  Thread_Control       *the_thread                                    
)                                                                     
{                                                                     
   48604:	4e56 fff0      	linkw %fp,#-16                              
   48608:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     
   4860c:	246e 0008      	moveal %fp@(8),%a2                          
   48610:	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 )                                            
   48614:	4a8a           	tstl %a2                                    
   48616:	6708           	beqs 48620 <_Thread_queue_Requeue+0x1c>     
                                                                      
  /*                                                                  
   * 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 ) {
   48618:	7001           	moveq #1,%d0                                
   4861a:	b0aa 0034      	cmpl %a2@(52),%d0                           
   4861e:	670a           	beqs 4862a <_Thread_queue_Requeue+0x26>     
      _Thread_queue_Extract_priority_helper( tq, the_thread, true );  
      (void) _Thread_queue_Enqueue_priority( tq, the_thread, &level_ignored );
    }                                                                 
    _ISR_Enable( level );                                             
  }                                                                   
}                                                                     
   48620:	4cee 0c04 fff0 	moveml %fp@(-16),%d2/%a2-%a3                <== NOT EXECUTED
   48626:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   48628:	4e75           	rts                                         <== NOT EXECUTED
  if ( the_thread_queue->discipline == THREAD_QUEUE_DISCIPLINE_PRIORITY ) {
    Thread_queue_Control *tq = the_thread_queue;                      
    ISR_Level             level;                                      
    ISR_Level             level_ignored;                              
                                                                      
    _ISR_Disable( level );                                            
   4862a:	303c 0700      	movew #1792,%d0                             
   4862e:	40c2           	movew %sr,%d2                               
   48630:	8082           	orl %d2,%d0                                 
   48632:	46c0           	movew %d0,%sr                               
    if ( _States_Is_waiting_on_thread_queue( the_thread->current_state ) ) {
   48634:	202b 0010      	movel %a3@(16),%d0                          
   48638:	0280 0003 bee0 	andil #245472,%d0                           
   4863e:	660c           	bnes 4864c <_Thread_queue_Requeue+0x48>     
      _Thread_queue_Enter_critical_section( tq );                     
      _Thread_queue_Extract_priority_helper( tq, the_thread, true );  
      (void) _Thread_queue_Enqueue_priority( tq, the_thread, &level_ignored );
    }                                                                 
    _ISR_Enable( level );                                             
   48640:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
  }                                                                   
}                                                                     
   48642:	4cee 0c04 fff0 	moveml %fp@(-16),%d2/%a2-%a3                
   48648:	4e5e           	unlk %fp                                    
   4864a:	4e75           	rts                                         
    ISR_Level             level_ignored;                              
                                                                      
    _ISR_Disable( level );                                            
    if ( _States_Is_waiting_on_thread_queue( the_thread->current_state ) ) {
      _Thread_queue_Enter_critical_section( tq );                     
      _Thread_queue_Extract_priority_helper( tq, the_thread, true );  
   4864c:	4878 0001      	pea 1 <ADD>                                 
   48650:	7001           	moveq #1,%d0                                
   48652:	2f0b           	movel %a3,%sp@-                             
   48654:	2540 0030      	movel %d0,%a2@(48)                          
   48658:	2f0a           	movel %a2,%sp@-                             
   4865a:	4eb9 0004 c224 	jsr 4c224 <_Thread_queue_Extract_priority_helper>
      (void) _Thread_queue_Enqueue_priority( tq, the_thread, &level_ignored );
   48660:	486e fffc      	pea %fp@(-4)                                
   48664:	2f0b           	movel %a3,%sp@-                             
   48666:	2f0a           	movel %a2,%sp@-                             
   48668:	4eb9 0004 83b4 	jsr 483b4 <_Thread_queue_Enqueue_priority>  
   4866e:	4fef 0018      	lea %sp@(24),%sp                            
    }                                                                 
    _ISR_Enable( level );                                             
   48672:	46c2           	movew %d2,%sr                               
   48674:	60cc           	bras 48642 <_Thread_queue_Requeue+0x3e>     
	...                                                                  
                                                                      
0005944c <_Timer_server_Body>:                                        
 *  @a arg points to the corresponding timer server control block.    
 */                                                                   
static rtems_task _Timer_server_Body(                                 
  rtems_task_argument arg                                             
)                                                                     
{                                                                     
   5944c:	4e56 ffb0      	linkw %fp,#-80                              
   59450:	41ee ffec      	lea %fp@(-20),%a0                           
   59454:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 
   59458:	246e 0008      	moveal %fp@(8),%a2                          
   5945c:	2c0e           	movel %fp,%d6                               
   5945e:	260e           	movel %fp,%d3                               
   59460:	5186           	subql #8,%d6                                
   59462:	0683 ffff ffe8 	addil #-24,%d3                              
   */                                                                 
  Watchdog_Interval delta = snapshot - watchdogs->last_snapshot;      
                                                                      
  watchdogs->last_snapshot = snapshot;                                
                                                                      
  _Watchdog_Adjust_to_chain( &watchdogs->Chain, delta, fire_chain );  
   59468:	240a           	movel %a2,%d2                               
    /*                                                                
     *  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 );
   5946a:	2a0a           	movel %a2,%d5                               
   5946c:	4bf9 0005 d70c 	lea 5d70c <_Watchdog_Adjust_to_chain>,%a5   
   */                                                                 
  Watchdog_Interval delta = snapshot - watchdogs->last_snapshot;      
                                                                      
  watchdogs->last_snapshot = snapshot;                                
                                                                      
  _Watchdog_Adjust_to_chain( &watchdogs->Chain, delta, fire_chain );  
   59472:	0682 0000 0030 	addil #48,%d2                               
    /*                                                                
     *  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 );
   59478:	0685 0000 0068 	addil #104,%d5                              
   5947e:	47f9 0005 9f08 	lea 59f08 <_Chain_Get>,%a3                  
   59484:	49f9 0005 d79c 	lea 5d79c <_Watchdog_Insert>,%a4            
     *  of zero it will be processed in the next iteration of the timer server
     *  body loop.                                                    
     */                                                               
    _Timer_server_Process_insertions( ts );                           
                                                                      
    _ISR_Disable( level );                                            
   5948a:	283c 0000 0700 	movel #1792,%d4                             
   59490:	2d48 ffd8      	movel %a0,%fp@(-40)                         
                                                                      
static void _Timer_server_Stop_interval_system_watchdog(              
  Timer_server_Control *ts                                            
)                                                                     
{                                                                     
  _Watchdog_Remove( &ts->Interval_watchdogs.System_watchdog );        
   59494:	41ea 0008      	lea %a2@(8),%a0                             
   59498:	2d48 ffe0      	movel %a0,%fp@(-32)                         
                                                                      
static void _Timer_server_Stop_tod_system_watchdog(                   
  Timer_server_Control *ts                                            
)                                                                     
{                                                                     
  _Watchdog_Remove( &ts->TOD_watchdogs.System_watchdog );             
   5949c:	41ea 0040      	lea %a2@(64),%a0                            
   594a0:	2d48 ffe4      	movel %a0,%fp@(-28)                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
  the_chain->permanent_null = NULL;                                   
  the_chain->last           = _Chain_Head(the_chain);                 
   594a4:	41ee fff4      	lea %fp@(-12),%a0                           
   594a8:	2d48 fffc      	movel %a0,%fp@(-4)                          
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
   594ac:	41ee ffec      	lea %fp@(-20),%a0                           
   594b0:	2d46 fff4      	movel %d6,%fp@(-12)                         
  the_chain->permanent_null = NULL;                                   
   594b4:	42ae fff8      	clrl %fp@(-8)                               
 */                                                                   
RTEMS_INLINE_ROUTINE void _Chain_Initialize_empty(                    
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  the_chain->first          = _Chain_Tail(the_chain);                 
   594b8:	2d48 ffe8      	movel %a0,%fp@(-24)                         
  the_chain->permanent_null = NULL;                                   
   594bc:	42ae ffec      	clrl %fp@(-20)                              
  the_chain->last           = _Chain_Head(the_chain);                 
   594c0:	2d43 fff0      	movel %d3,%fp@(-16)                         
{                                                                     
  /*                                                                  
   *  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;                                    
   594c4:	41ee fff4      	lea %fp@(-12),%a0                           
   594c8:	2548 0078      	movel %a0,%a2@(120)                         
static void _Timer_server_Process_interval_watchdogs(                 
  Timer_server_Watchdogs *watchdogs,                                  
  Chain_Control *fire_chain                                           
)                                                                     
{                                                                     
  Watchdog_Interval snapshot = _Watchdog_Ticks_since_boot;            
   594cc:	2039 0007 e910 	movel 7e910 <_Watchdog_Ticks_since_boot>,%d0
                                                                      
  /*                                                                  
   *  We assume adequate unsigned arithmetic here.                    
   */                                                                 
  Watchdog_Interval delta = snapshot - watchdogs->last_snapshot;      
   594d2:	222a 003c      	movel %a2@(60),%d1                          
                                                                      
  watchdogs->last_snapshot = snapshot;                                
   594d6:	2540 003c      	movel %d0,%a2@(60)                          
                                                                      
  _Watchdog_Adjust_to_chain( &watchdogs->Chain, delta, fire_chain );  
   594da:	9081           	subl %d1,%d0                                
   594dc:	2f03           	movel %d3,%sp@-                             
   594de:	2f00           	movel %d0,%sp@-                             
   594e0:	2f02           	movel %d2,%sp@-                             
   594e2:	4e95           	jsr %a5@                                    
static void _Timer_server_Process_tod_watchdogs(                      
  Timer_server_Watchdogs *watchdogs,                                  
  Chain_Control *fire_chain                                           
)                                                                     
{                                                                     
  Watchdog_Interval snapshot = (Watchdog_Interval) _TOD_Seconds_since_epoch();
   594e4:	2039 0007 e85e 	movel 7e85e <_TOD_Now>,%d0                  
  /*                                                                  
   *  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 ) {                                   
   594ea:	4fef 000c      	lea %sp@(12),%sp                            
  Timer_server_Watchdogs *watchdogs,                                  
  Chain_Control *fire_chain                                           
)                                                                     
{                                                                     
  Watchdog_Interval snapshot = (Watchdog_Interval) _TOD_Seconds_since_epoch();
  Watchdog_Interval last_snapshot = watchdogs->last_snapshot;         
   594ee:	222a 0074      	movel %a2@(116),%d1                         
  /*                                                                  
   *  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 ) {                                   
   594f2:	b280           	cmpl %d0,%d1                                
   594f4:	6500 0086      	bcsw 5957c <_Timer_server_Body+0x130>       
     *  TOD has been set forward.                                     
     */                                                               
    delta = snapshot - last_snapshot;                                 
    _Watchdog_Adjust_to_chain( &watchdogs->Chain, delta, fire_chain );
                                                                      
  } else if ( snapshot < last_snapshot ) {                            
   594f8:	b280           	cmpl %d0,%d1                                
   594fa:	6200 00a4      	bhiw 595a0 <_Timer_server_Body+0x154>       
      */                                                              
     delta = last_snapshot - snapshot;                                
     _Watchdog_Adjust( &watchdogs->Chain, WATCHDOG_BACKWARD, delta ); 
  }                                                                   
                                                                      
  watchdogs->last_snapshot = snapshot;                                
   594fe:	2540 0074      	movel %d0,%a2@(116)                         
}                                                                     
                                                                      
static void _Timer_server_Process_insertions( Timer_server_Control *ts )
{                                                                     
  while ( true ) {                                                    
    Timer_Control *timer = (Timer_Control *) _Chain_Get( ts->insert_chain );
   59502:	202a 0078      	movel %a2@(120),%d0                         
   59506:	2f00           	movel %d0,%sp@-                             
   59508:	4e93           	jsr %a3@                                    
                                                                      
    if ( timer == NULL ) {                                            
   5950a:	588f           	addql #4,%sp                                
   5950c:	4a80           	tstl %d0                                    
   5950e:	672e           	beqs 5953e <_Timer_server_Body+0xf2>        
static void _Timer_server_Insert_timer(                               
  Timer_server_Control *ts,                                           
  Timer_Control *timer                                                
)                                                                     
{                                                                     
  if ( timer->the_class == TIMER_INTERVAL_ON_TASK ) {                 
   59510:	2040           	moveal %d0,%a0                              
   59512:	7e01           	moveq #1,%d7                                
   59514:	2228 0038      	movel %a0@(56),%d1                          
   59518:	be81           	cmpl %d1,%d7                                
   5951a:	6700 00a8      	beqw 595c4 <_Timer_server_Body+0x178>       
    _Watchdog_Insert( &ts->Interval_watchdogs.Chain, &timer->Ticker );
  } else if ( timer->the_class == TIMER_TIME_OF_DAY_ON_TASK ) {       
   5951e:	7e03           	moveq #3,%d7                                
   59520:	be81           	cmpl %d1,%d7                                
   59522:	66de           	bnes 59502 <_Timer_server_Body+0xb6>        
    _Watchdog_Insert( &ts->TOD_watchdogs.Chain, &timer->Ticker );     
   59524:	2040           	moveal %d0,%a0                              
   59526:	4868 0010      	pea %a0@(16)                                
   5952a:	2f05           	movel %d5,%sp@-                             
   5952c:	4e94           	jsr %a4@                                    
}                                                                     
                                                                      
static void _Timer_server_Process_insertions( Timer_server_Control *ts )
{                                                                     
  while ( true ) {                                                    
    Timer_Control *timer = (Timer_Control *) _Chain_Get( ts->insert_chain );
   5952e:	202a 0078      	movel %a2@(120),%d0                         
)                                                                     
{                                                                     
  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 );     
   59532:	508f           	addql #8,%sp                                
}                                                                     
                                                                      
static void _Timer_server_Process_insertions( Timer_server_Control *ts )
{                                                                     
  while ( true ) {                                                    
    Timer_Control *timer = (Timer_Control *) _Chain_Get( ts->insert_chain );
   59534:	2f00           	movel %d0,%sp@-                             
   59536:	4e93           	jsr %a3@                                    
                                                                      
    if ( timer == NULL ) {                                            
   59538:	588f           	addql #4,%sp                                
   5953a:	4a80           	tstl %d0                                    
   5953c:	66d2           	bnes 59510 <_Timer_server_Body+0xc4>        
     *  of zero it will be processed in the next iteration of the timer server
     *  body loop.                                                    
     */                                                               
    _Timer_server_Process_insertions( ts );                           
                                                                      
    _ISR_Disable( level );                                            
   5953e:	2004           	movel %d4,%d0                               
   59540:	40c1           	movew %sr,%d1                               
   59542:	8081           	orl %d1,%d0                                 
   59544:	46c0           	movew %d0,%sr                               
    if ( _Chain_Is_empty( insert_chain ) ) {                          
   59546:	bcae fff4      	cmpl %fp@(-12),%d6                          
   5954a:	6700 0086      	beqw 595d2 <_Timer_server_Body+0x186>       
      ts->insert_chain = NULL;                                        
      _ISR_Enable( level );                                           
                                                                      
      break;                                                          
    } else {                                                          
      _ISR_Enable( level );                                           
   5954e:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
static void _Timer_server_Process_interval_watchdogs(                 
  Timer_server_Watchdogs *watchdogs,                                  
  Chain_Control *fire_chain                                           
)                                                                     
{                                                                     
  Watchdog_Interval snapshot = _Watchdog_Ticks_since_boot;            
   59550:	2039 0007 e910 	movel 7e910 <_Watchdog_Ticks_since_boot>,%d0<== NOT EXECUTED
                                                                      
  /*                                                                  
   *  We assume adequate unsigned arithmetic here.                    
   */                                                                 
  Watchdog_Interval delta = snapshot - watchdogs->last_snapshot;      
   59556:	222a 003c      	movel %a2@(60),%d1                          <== NOT EXECUTED
                                                                      
  watchdogs->last_snapshot = snapshot;                                
   5955a:	2540 003c      	movel %d0,%a2@(60)                          <== NOT EXECUTED
                                                                      
  _Watchdog_Adjust_to_chain( &watchdogs->Chain, delta, fire_chain );  
   5955e:	9081           	subl %d1,%d0                                <== NOT EXECUTED
   59560:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   59562:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   59564:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   59566:	4e95           	jsr %a5@                                    <== 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();
   59568:	2039 0007 e85e 	movel 7e85e <_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 ) {                                   
   5956e:	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;         
   59572:	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 ) {                                   
   59576:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   59578:	6400 ff7e      	bccw 594f8 <_Timer_server_Body+0xac>        <== 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 );
   5957c:	2f03           	movel %d3,%sp@-                             
   5957e:	2e00           	movel %d0,%d7                               
   59580:	9e81           	subl %d1,%d7                                
   59582:	2f07           	movel %d7,%sp@-                             
   59584:	2d40 ffdc      	movel %d0,%fp@(-36)                         
   59588:	2f05           	movel %d5,%sp@-                             
   5958a:	4eb9 0005 d70c 	jsr 5d70c <_Watchdog_Adjust_to_chain>       
   59590:	202e ffdc      	movel %fp@(-36),%d0                         
   59594:	4fef 000c      	lea %sp@(12),%sp                            
      */                                                              
     delta = last_snapshot - snapshot;                                
     _Watchdog_Adjust( &watchdogs->Chain, WATCHDOG_BACKWARD, delta ); 
  }                                                                   
                                                                      
  watchdogs->last_snapshot = snapshot;                                
   59598:	2540 0074      	movel %d0,%a2@(116)                         
   5959c:	6000 ff64      	braw 59502 <_Timer_server_Body+0xb6>        
     /*                                                               
      *  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 ); 
   595a0:	9280           	subl %d0,%d1                                
   595a2:	2f01           	movel %d1,%sp@-                             
   595a4:	4878 0001      	pea 1 <ADD>                                 
   595a8:	2d40 ffdc      	movel %d0,%fp@(-36)                         
   595ac:	2f05           	movel %d5,%sp@-                             
   595ae:	4eb9 0005 d678 	jsr 5d678 <_Watchdog_Adjust>                
   595b4:	202e ffdc      	movel %fp@(-36),%d0                         
   595b8:	4fef 000c      	lea %sp@(12),%sp                            
  }                                                                   
                                                                      
  watchdogs->last_snapshot = snapshot;                                
   595bc:	2540 0074      	movel %d0,%a2@(116)                         
   595c0:	6000 ff40      	braw 59502 <_Timer_server_Body+0xb6>        
  Timer_server_Control *ts,                                           
  Timer_Control *timer                                                
)                                                                     
{                                                                     
  if ( timer->the_class == TIMER_INTERVAL_ON_TASK ) {                 
    _Watchdog_Insert( &ts->Interval_watchdogs.Chain, &timer->Ticker );
   595c4:	4868 0010      	pea %a0@(16)                                
   595c8:	2f02           	movel %d2,%sp@-                             
   595ca:	4e94           	jsr %a4@                                    
   595cc:	508f           	addql #8,%sp                                
   595ce:	6000 ff32      	braw 59502 <_Timer_server_Body+0xb6>        
     */                                                               
    _Timer_server_Process_insertions( ts );                           
                                                                      
    _ISR_Disable( level );                                            
    if ( _Chain_Is_empty( insert_chain ) ) {                          
      ts->insert_chain = NULL;                                        
   595d2:	42aa 0078      	clrl %a2@(120)                              
      _ISR_Enable( level );                                           
   595d6:	46c1           	movew %d1,%sr                               
  _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 ) ) {                          
   595d8:	202e ffd8      	movel %fp@(-40),%d0                         
   595dc:	b0ae ffe8      	cmpl %fp@(-24),%d0                          
   595e0:	6752           	beqs 59634 <_Timer_server_Body+0x1e8>       
                                                                      
        /*                                                            
         *  It is essential that interrupts are disable here since an interrupt
         *  service routine may remove a watchdog from the chain.     
         */                                                           
        _ISR_Disable( level );                                        
   595e2:	2204           	movel %d4,%d1                               
   595e4:	40c0           	movew %sr,%d0                               
   595e6:	8280           	orl %d0,%d1                                 
   595e8:	46c1           	movew %d1,%sr                               
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  return (the_chain->first == _Chain_Tail(the_chain));                
   595ea:	206e ffe8      	moveal %fp@(-24),%a0                        
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Get_unprotected(              
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  if ( !_Chain_Is_empty(the_chain))                                   
   595ee:	b1ee ffd8      	cmpal %fp@(-40),%a0                         
   595f2:	6732           	beqs 59626 <_Timer_server_Body+0x1da>       
{                                                                     
  Chain_Node  *return_node;                                           
  Chain_Node  *new_first;                                             
                                                                      
  return_node         = the_chain->first;                             
  new_first           = return_node->next;                            
   595f4:	2250           	moveal %a0@,%a1                             
  the_chain->first    = new_first;                                    
   595f6:	2d49 ffe8      	movel %a1,%fp@(-24)                         
        watchdog = (Watchdog_Control *) _Chain_Get_unprotected( &fire_chain );
        if ( watchdog != NULL ) {                                     
          watchdog->state = WATCHDOG_INACTIVE;                        
   595fa:	42a8 0008      	clrl %a0@(8)                                
  new_first->previous = _Chain_Head(the_chain);                       
   595fe:	2343 0004      	movel %d3,%a1@(4)                           
          _ISR_Enable( level );                                       
   59602:	46c0           	movew %d0,%sr                               
        /*                                                            
         *  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 );    
   59604:	2f28 0024      	movel %a0@(36),%sp@-                        
   59608:	2f28 0020      	movel %a0@(32),%sp@-                        
   5960c:	2068 001c      	moveal %a0@(28),%a0                         
   59610:	4e90           	jsr %a0@                                    
      }                                                               
   59612:	508f           	addql #8,%sp                                
                                                                      
        /*                                                            
         *  It is essential that interrupts are disable here since an interrupt
         *  service routine may remove a watchdog from the chain.     
         */                                                           
        _ISR_Disable( level );                                        
   59614:	2204           	movel %d4,%d1                               
   59616:	40c0           	movew %sr,%d0                               
   59618:	8280           	orl %d0,%d1                                 
   5961a:	46c1           	movew %d1,%sr                               
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  return (the_chain->first == _Chain_Tail(the_chain));                
   5961c:	206e ffe8      	moveal %fp@(-24),%a0                        
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Get_unprotected(              
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  if ( !_Chain_Is_empty(the_chain))                                   
   59620:	b1ee ffd8      	cmpal %fp@(-40),%a0                         
   59624:	66ce           	bnes 595f4 <_Timer_server_Body+0x1a8>       
        watchdog = (Watchdog_Control *) _Chain_Get_unprotected( &fire_chain );
        if ( watchdog != NULL ) {                                     
          watchdog->state = WATCHDOG_INACTIVE;                        
          _ISR_Enable( level );                                       
        } else {                                                      
          _ISR_Enable( level );                                       
   59626:	46c0           	movew %d0,%sr                               
{                                                                     
  /*                                                                  
   *  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;                                    
   59628:	41ee fff4      	lea %fp@(-12),%a0                           
   5962c:	2548 0078      	movel %a0,%a2@(120)                         
   59630:	6000 fe9a      	braw 594cc <_Timer_server_Body+0x80>        
         *  the active flag of the timer server is true.              
         */                                                           
        (*watchdog->routine)( watchdog->id, watchdog->user_data );    
      }                                                               
    } else {                                                          
      ts->active = false;                                             
   59634:	4207           	clrb %d7                                    
   59636:	1547 007c      	moveb %d7,%a2@(124)                         
   5963a:	2039 0007 e7cc 	movel 7e7cc <_Thread_Dispatch_disable_level>,%d0
   59640:	5280           	addql #1,%d0                                
   59642:	23c0 0007 e7cc 	movel %d0,7e7cc <_Thread_Dispatch_disable_level>
                                                                      
      /*                                                              
       *  Block until there is something to do.                       
       */                                                             
      _Thread_Disable_dispatch();                                     
        _Thread_Set_state( ts->thread, STATES_DELAYING );             
   59648:	4878 0008      	pea 8 <DIVIDE_BY_ZERO>                      
   5964c:	2f12           	movel %a2@,%sp@-                            
   5964e:	4eb9 0005 cd90 	jsr 5cd90 <_Thread_Set_state>               
        _Timer_server_Reset_interval_system_watchdog( ts );           
   59654:	2f0a           	movel %a2,%sp@-                             
   59656:	4eba fd1c      	jsr %pc@(59374 <_Timer_server_Reset_interval_system_watchdog>)
        _Timer_server_Reset_tod_system_watchdog( ts );                
   5965a:	2f0a           	movel %a2,%sp@-                             
   5965c:	4eba fd80      	jsr %pc@(593de <_Timer_server_Reset_tod_system_watchdog>)
      _Thread_Enable_dispatch();                                      
   59660:	4eb9 0005 c2c0 	jsr 5c2c0 <_Thread_Enable_dispatch>         
                                                                      
      ts->active = true;                                              
   59666:	7001           	moveq #1,%d0                                
   59668:	1540 007c      	moveb %d0,%a2@(124)                         
                                                                      
static void _Timer_server_Stop_interval_system_watchdog(              
  Timer_server_Control *ts                                            
)                                                                     
{                                                                     
  _Watchdog_Remove( &ts->Interval_watchdogs.System_watchdog );        
   5966c:	2f2e ffe0      	movel %fp@(-32),%sp@-                       
   59670:	4eb9 0005 d8e4 	jsr 5d8e4 <_Watchdog_Remove>                
                                                                      
static void _Timer_server_Stop_tod_system_watchdog(                   
  Timer_server_Control *ts                                            
)                                                                     
{                                                                     
  _Watchdog_Remove( &ts->TOD_watchdogs.System_watchdog );             
   59676:	2f2e ffe4      	movel %fp@(-28),%sp@-                       
   5967a:	4eb9 0005 d8e4 	jsr 5d8e4 <_Watchdog_Remove>                
   59680:	4fef 0018      	lea %sp@(24),%sp                            
   59684:	6000 fe3e      	braw 594c4 <_Timer_server_Body+0x78>        
                                                                      
00059688 <_Timer_server_Schedule_operation_method>:                   
                                                                      
static void _Timer_server_Schedule_operation_method(                  
  Timer_server_Control *ts,                                           
  Timer_Control *timer                                                
)                                                                     
{                                                                     
   59688:	4e56 fff0      	linkw %fp,#-16                              
   5968c:	206e 000c      	moveal %fp@(12),%a0                         
   59690:	48d7 041c      	moveml %d2-%d4/%a2,%sp@                     
   59694:	246e 0008      	moveal %fp@(8),%a2                          
  if ( ts->insert_chain == NULL ) {                                   
   59698:	202a 0078      	movel %a2@(120),%d0                         
   5969c:	671a           	beqs 596b8 <_Timer_server_Schedule_operation_method+0x30>
     *  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 );           
   5969e:	202a 0078      	movel %a2@(120),%d0                         
   596a2:	2d48 000c      	movel %a0,%fp@(12)                          
  }                                                                   
}                                                                     
   596a6:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                
     *  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 );           
   596ac:	2d40 0008      	movel %d0,%fp@(8)                           
  }                                                                   
}                                                                     
   596b0:	4e5e           	unlk %fp                                    
     *  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 );           
   596b2:	4ef9 0005 9ed0 	jmp 59ed0 <_Chain_Append>                   
   596b8:	2039 0007 e7cc 	movel 7e7cc <_Thread_Dispatch_disable_level>,%d0
   596be:	5280           	addql #1,%d0                                
   596c0:	23c0 0007 e7cc 	movel %d0,7e7cc <_Thread_Dispatch_disable_level>
   *  being inserted.  This could result in an integer overflow.      
   */                                                                 
                                                                      
  _Thread_Disable_dispatch();                                         
                                                                      
  if ( timer->the_class == TIMER_INTERVAL_ON_TASK ) {                 
   596c6:	2028 0038      	movel %a0@(56),%d0                          
   596ca:	7201           	moveq #1,%d1                                
   596cc:	b280           	cmpl %d0,%d1                                
   596ce:	6700 0088      	beqw 59758 <_Timer_server_Schedule_operation_method+0xd0>
    _Watchdog_Insert( &ts->Interval_watchdogs.Chain, &timer->Ticker );
                                                                      
    if ( !ts->active ) {                                              
      _Timer_server_Reset_interval_system_watchdog( ts );             
    }                                                                 
  } else if ( timer->the_class == TIMER_TIME_OF_DAY_ON_TASK ) {       
   596d2:	7203           	moveq #3,%d1                                
   596d4:	b280           	cmpl %d0,%d1                                
   596d6:	670e           	beqs 596e6 <_Timer_server_Schedule_operation_method+0x5e>
     *  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 );           
  }                                                                   
}                                                                     
   596d8:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                
   596de:	4e5e           	unlk %fp                                    
    if ( !ts->active ) {                                              
      _Timer_server_Reset_tod_system_watchdog( ts );                  
    }                                                                 
  }                                                                   
                                                                      
  _Thread_Enable_dispatch();                                          
   596e0:	4ef9 0005 c2c0 	jmp 5c2c0 <_Thread_Enable_dispatch>         
  } else if ( timer->the_class == TIMER_TIME_OF_DAY_ON_TASK ) {       
    /*                                                                
     *  We have to advance the last known seconds value of the server and update
     *  the watchdog chain accordingly.                               
     */                                                               
    _ISR_Disable( level );                                            
   596e6:	203c 0000 0700 	movel #1792,%d0                             
   596ec:	40c2           	movew %sr,%d2                               
   596ee:	8082           	orl %d2,%d0                                 
   596f0:	46c0           	movew %d0,%sr                               
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Tail(                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
   return (Chain_Node *) &the_chain->permanent_null;                  
   596f2:	260a           	movel %a2,%d3                               
   596f4:	0683 0000 006c 	addil #108,%d3                              
    snapshot = (Watchdog_Interval) _TOD_Seconds_since_epoch();        
   596fa:	2039 0007 e85e 	movel 7e85e <_TOD_Now>,%d0                  
    last_snapshot = ts->TOD_watchdogs.last_snapshot;                  
   59700:	222a 0074      	movel %a2@(116),%d1                         
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  return (the_chain->first == _Chain_Tail(the_chain));                
   59704:	226a 0068      	moveal %a2@(104),%a1                        
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Tail(                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
   return (Chain_Node *) &the_chain->permanent_null;                  
   59708:	b689           	cmpl %a1,%d3                                
   5970a:	671a           	beqs 59726 <_Timer_server_Schedule_operation_method+0x9e>
    if ( !_Chain_Is_empty( &ts->TOD_watchdogs.Chain ) ) {             
      first_watchdog = _Watchdog_First( &ts->TOD_watchdogs.Chain );   
      delta_interval = first_watchdog->delta_interval;                
   5970c:	2629 0010      	movel %a1@(16),%d3                          
      if ( snapshot > last_snapshot ) {                               
   59710:	b280           	cmpl %d0,%d1                                
   59712:	6400 00b8      	bccw 597cc <_Timer_server_Schedule_operation_method+0x144>
        /*                                                            
         *  We advanced in time.                                      
         */                                                           
        delta = snapshot - last_snapshot;                             
   59716:	2800           	movel %d0,%d4                               
   59718:	9881           	subl %d1,%d4                                
        if (delta_interval > delta) {                                 
   5971a:	b883           	cmpl %d3,%d4                                
   5971c:	6500 00ba      	bcsw 597d8 <_Timer_server_Schedule_operation_method+0x150>
   59720:	4281           	clrl %d1                                    <== NOT EXECUTED
         *  Someone put us in the past.                               
         */                                                           
        delta = last_snapshot - snapshot;                             
        delta_interval += delta;                                      
      }                                                               
      first_watchdog->delta_interval = delta_interval;                
   59722:	2341 0010      	movel %d1,%a1@(16)                          <== NOT EXECUTED
    }                                                                 
    ts->TOD_watchdogs.last_snapshot = snapshot;                       
   59726:	2540 0074      	movel %d0,%a2@(116)                         
    _ISR_Enable( level );                                             
   5972a:	46c2           	movew %d2,%sr                               
                                                                      
    _Watchdog_Insert( &ts->TOD_watchdogs.Chain, &timer->Ticker );     
   5972c:	4868 0010      	pea %a0@(16)                                
   59730:	486a 0068      	pea %a2@(104)                               
   59734:	4eb9 0005 d79c 	jsr 5d79c <_Watchdog_Insert>                
                                                                      
    if ( !ts->active ) {                                              
   5973a:	508f           	addql #8,%sp                                
   5973c:	102a 007c      	moveb %a2@(124),%d0                         
   59740:	6696           	bnes 596d8 <_Timer_server_Schedule_operation_method+0x50>
      _Timer_server_Reset_tod_system_watchdog( ts );                  
   59742:	2f0a           	movel %a2,%sp@-                             
   59744:	4eba fc98      	jsr %pc@(593de <_Timer_server_Reset_tod_system_watchdog>)
   59748:	588f           	addql #4,%sp                                
     *  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 );           
  }                                                                   
}                                                                     
   5974a:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                
   59750:	4e5e           	unlk %fp                                    
    if ( !ts->active ) {                                              
      _Timer_server_Reset_tod_system_watchdog( ts );                  
    }                                                                 
  }                                                                   
                                                                      
  _Thread_Enable_dispatch();                                          
   59752:	4ef9 0005 c2c0 	jmp 5c2c0 <_Thread_Enable_dispatch>         
  if ( timer->the_class == TIMER_INTERVAL_ON_TASK ) {                 
    /*                                                                
     *  We have to advance the last known ticks value of the server and update
     *  the watchdog chain accordingly.                               
     */                                                               
    _ISR_Disable( level );                                            
   59758:	203c 0000 0700 	movel #1792,%d0                             
   5975e:	40c3           	movew %sr,%d3                               
   59760:	8083           	orl %d3,%d0                                 
   59762:	46c0           	movew %d0,%sr                               
    snapshot = _Watchdog_Ticks_since_boot;                            
   59764:	2039 0007 e910 	movel 7e910 <_Watchdog_Ticks_since_boot>,%d0
   5976a:	240a           	movel %a2,%d2                               
   5976c:	0682 0000 0034 	addil #52,%d2                               
    last_snapshot = ts->Interval_watchdogs.last_snapshot;             
   59772:	222a 003c      	movel %a2@(60),%d1                          
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  return (the_chain->first == _Chain_Tail(the_chain));                
   59776:	226a 0030      	moveal %a2@(48),%a1                         
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Tail(                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
   return (Chain_Node *) &the_chain->permanent_null;                  
   5977a:	b489           	cmpl %a1,%d2                                
   5977c:	6712           	beqs 59790 <_Timer_server_Schedule_operation_method+0x108>
      first_watchdog = _Watchdog_First( &ts->Interval_watchdogs.Chain );
                                                                      
      /*                                                              
       *  We assume adequate unsigned arithmetic here.                
       */                                                             
      delta = snapshot - last_snapshot;                               
   5977e:	2800           	movel %d0,%d4                               
   59780:	9881           	subl %d1,%d4                                
                                                                      
      delta_interval = first_watchdog->delta_interval;                
   59782:	2429 0010      	movel %a1@(16),%d2                          
      if (delta_interval > delta) {                                   
   59786:	b484           	cmpl %d4,%d2                                
   59788:	623a           	bhis 597c4 <_Timer_server_Schedule_operation_method+0x13c>
   5978a:	4282           	clrl %d2                                    
        delta_interval -= delta;                                      
      } else {                                                        
        delta_interval = 0;                                           
      }                                                               
      first_watchdog->delta_interval = delta_interval;                
   5978c:	2342 0010      	movel %d2,%a1@(16)                          
    }                                                                 
    ts->Interval_watchdogs.last_snapshot = snapshot;                  
   59790:	2540 003c      	movel %d0,%a2@(60)                          
    _ISR_Enable( level );                                             
   59794:	46c3           	movew %d3,%sr                               
                                                                      
    _Watchdog_Insert( &ts->Interval_watchdogs.Chain, &timer->Ticker );
   59796:	4868 0010      	pea %a0@(16)                                
   5979a:	486a 0030      	pea %a2@(48)                                
   5979e:	4eb9 0005 d79c 	jsr 5d79c <_Watchdog_Insert>                
                                                                      
    if ( !ts->active ) {                                              
   597a4:	508f           	addql #8,%sp                                
   597a6:	102a 007c      	moveb %a2@(124),%d0                         
   597aa:	6600 ff2c      	bnew 596d8 <_Timer_server_Schedule_operation_method+0x50>
      _Timer_server_Reset_interval_system_watchdog( ts );             
   597ae:	2f0a           	movel %a2,%sp@-                             
   597b0:	4eba fbc2      	jsr %pc@(59374 <_Timer_server_Reset_interval_system_watchdog>)
   597b4:	588f           	addql #4,%sp                                
     *  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 );           
  }                                                                   
}                                                                     
   597b6:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                
   597bc:	4e5e           	unlk %fp                                    
    if ( !ts->active ) {                                              
      _Timer_server_Reset_tod_system_watchdog( ts );                  
    }                                                                 
  }                                                                   
                                                                      
  _Thread_Enable_dispatch();                                          
   597be:	4ef9 0005 c2c0 	jmp 5c2c0 <_Thread_Enable_dispatch>         
       */                                                             
      delta = snapshot - last_snapshot;                               
                                                                      
      delta_interval = first_watchdog->delta_interval;                
      if (delta_interval > delta) {                                   
        delta_interval -= delta;                                      
   597c4:	9484           	subl %d4,%d2                                
      } else {                                                        
        delta_interval = 0;                                           
      }                                                               
      first_watchdog->delta_interval = delta_interval;                
   597c6:	2342 0010      	movel %d2,%a1@(16)                          
   597ca:	60c4           	bras 59790 <_Timer_server_Schedule_operation_method+0x108>
        }                                                             
      } else {                                                        
        /*                                                            
         *  Someone put us in the past.                               
         */                                                           
        delta = last_snapshot - snapshot;                             
   597cc:	d283           	addl %d3,%d1                                
        delta_interval += delta;                                      
   597ce:	9280           	subl %d0,%d1                                
      }                                                               
      first_watchdog->delta_interval = delta_interval;                
   597d0:	2341 0010      	movel %d1,%a1@(16)                          
   597d4:	6000 ff50      	braw 59726 <_Timer_server_Schedule_operation_method+0x9e>
        /*                                                            
         *  We advanced in time.                                      
         */                                                           
        delta = snapshot - last_snapshot;                             
        if (delta_interval > delta) {                                 
          delta_interval -= delta;                                    
   597d8:	9684           	subl %d4,%d3                                
   597da:	2203           	movel %d3,%d1                               
         *  Someone put us in the past.                               
         */                                                           
        delta = last_snapshot - snapshot;                             
        delta_interval += delta;                                      
      }                                                               
      first_watchdog->delta_interval = delta_interval;                
   597dc:	2341 0010      	movel %d1,%a1@(16)                          
   597e0:	6000 ff44      	braw 59726 <_Timer_server_Schedule_operation_method+0x9e>
                                                                      
0005d70c <_Watchdog_Adjust_to_chain>:                                 
  Chain_Control               *header,                                
  Watchdog_Interval            units_arg,                             
  Chain_Control               *to_fire                                
                                                                      
)                                                                     
{                                                                     
   5d70c:	4e56 ffe4      	linkw %fp,#-28                              
   5d710:	48d7 3c1c      	moveml %d2-%d4/%a2-%a5,%sp@                 
   5d714:	2a6e 0008      	moveal %fp@(8),%a5                          
   5d718:	282e 000c      	movel %fp@(12),%d4                          
   5d71c:	266e 0010      	moveal %fp@(16),%a3                         
  Watchdog_Interval  units = units_arg;                               
  ISR_Level          level;                                           
  Watchdog_Control  *first;                                           
                                                                      
  if ( units <= 0 ) {                                                 
   5d720:	675e           	beqs 5d780 <_Watchdog_Adjust_to_chain+0x74> 
    return;                                                           
  }                                                                   
                                                                      
  _ISR_Disable( level );                                              
   5d722:	263c 0000 0700 	movel #1792,%d3                             
   5d728:	2003           	movel %d3,%d0                               
   5d72a:	40c1           	movew %sr,%d1                               
   5d72c:	8081           	orl %d1,%d0                                 
   5d72e:	46c0           	movew %d0,%sr                               
   5d730:	284d           	moveal %a5,%a4                              
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Tail(                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
   return (Chain_Node *) &the_chain->permanent_null;                  
   5d732:	240b           	movel %a3,%d2                               
   5d734:	5882           	addql #4,%d2                                
   5d736:	205c           	moveal %a4@+,%a0                            
                                                                      
  while ( 1 ) {                                                       
    if ( units <= 0 ) {                                               
      break;                                                          
    }                                                                 
    if ( _Chain_Is_empty( header ) ) {                                
   5d738:	b1cc           	cmpal %a4,%a0                               
   5d73a:	6742           	beqs 5d77e <_Watchdog_Adjust_to_chain+0x72> 
                                                                      
    /*                                                                
     *  If it is longer than "units" until the first element on the chain
     *  fires, then bump it and quit.                                 
     */                                                               
    if ( units < first->delta_interval ) {                            
   5d73c:	2028 0010      	movel %a0@(16),%d0                          
   5d740:	b880           	cmpl %d0,%d4                                
   5d742:	654c           	bcss 5d790 <_Watchdog_Adjust_to_chain+0x84> 
                                                                      
    /*                                                                
     *  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;                                   
   5d744:	9880           	subl %d0,%d4                                
    first->delta_interval = 0;                                        
   5d746:	42a8 0010      	clrl %a0@(16)                               
)                                                                     
{                                                                     
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
   5d74a:	2250           	moveal %a0@,%a1                             
  previous       = the_node->previous;                                
   5d74c:	2468 0004      	moveal %a0@(4),%a2                          
  next->previous = previous;                                          
  previous->next = next;                                              
   5d750:	2489           	movel %a1,%a2@                              
  Chain_Node *next;                                                   
  Chain_Node *previous;                                               
                                                                      
  next           = the_node->next;                                    
  previous       = the_node->previous;                                
  next->previous = previous;                                          
   5d752:	234a 0004      	movel %a2,%a1@(4)                           
  Chain_Node    *the_node                                             
)                                                                     
{                                                                     
  Chain_Node *old_last_node;                                          
                                                                      
  the_node->next      = _Chain_Tail(the_chain);                       
   5d756:	2082           	movel %d2,%a0@                              
  old_last_node       = the_chain->last;                              
   5d758:	226b 0008      	moveal %a3@(8),%a1                          
  the_chain->last     = the_node;                                     
   5d75c:	2748 0008      	movel %a0,%a3@(8)                           
  old_last_node->next = the_node;                                     
  the_node->previous  = old_last_node;                                
   5d760:	2149 0004      	movel %a1,%a0@(4)                           
  Chain_Node *old_last_node;                                          
                                                                      
  the_node->next      = _Chain_Tail(the_chain);                       
  old_last_node       = the_chain->last;                              
  the_chain->last     = the_node;                                     
  old_last_node->next = the_node;                                     
   5d764:	2288           	movel %a0,%a1@                              
                                                                      
    while ( 1 ) {                                                     
      _Chain_Extract_unprotected( &first->Node );                     
      _Chain_Append_unprotected( to_fire, &first->Node );             
                                                                      
      _ISR_Flash( level );                                            
   5d766:	2003           	movel %d3,%d0                               
   5d768:	46c1           	movew %d1,%sr                               
   5d76a:	8081           	orl %d1,%d0                                 
   5d76c:	46c0           	movew %d0,%sr                               
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Chain_Is_empty(                            
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
  return (the_chain->first == _Chain_Tail(the_chain));                
   5d76e:	2055           	moveal %a5@,%a0                             
                                                                      
      if ( _Chain_Is_empty( header ) )                                
   5d770:	b1cc           	cmpal %a4,%a0                               
   5d772:	6714           	beqs 5d788 <_Watchdog_Adjust_to_chain+0x7c> 
        break;                                                        
      first = _Watchdog_First( header );                              
      if ( first->delta_interval != 0 )                               
   5d774:	4aa8 0010      	tstl %a0@(16)                               
   5d778:	67d0           	beqs 5d74a <_Watchdog_Adjust_to_chain+0x3e> 
  }                                                                   
                                                                      
  _ISR_Disable( level );                                              
                                                                      
  while ( 1 ) {                                                       
    if ( units <= 0 ) {                                               
   5d77a:	4a84           	tstl %d4                                    
   5d77c:	66ba           	bnes 5d738 <_Watchdog_Adjust_to_chain+0x2c> 
      if ( first->delta_interval != 0 )                               
        break;                                                        
    }                                                                 
  }                                                                   
                                                                      
  _ISR_Enable( level );                                               
   5d77e:	46c1           	movew %d1,%sr                               
}                                                                     
   5d780:	4cd7 3c1c      	moveml %sp@,%d2-%d4/%a2-%a5                 
   5d784:	4e5e           	unlk %fp                                    
   5d786:	4e75           	rts                                         
 */                                                                   
RTEMS_INLINE_ROUTINE Chain_Node *_Chain_Tail(                         
  Chain_Control *the_chain                                            
)                                                                     
{                                                                     
   return (Chain_Node *) &the_chain->permanent_null;                  
   5d788:	204c           	moveal %a4,%a0                              
  }                                                                   
                                                                      
  _ISR_Disable( level );                                              
                                                                      
  while ( 1 ) {                                                       
    if ( units <= 0 ) {                                               
   5d78a:	4a84           	tstl %d4                                    
   5d78c:	66aa           	bnes 5d738 <_Watchdog_Adjust_to_chain+0x2c> 
   5d78e:	60ee           	bras 5d77e <_Watchdog_Adjust_to_chain+0x72> 
    /*                                                                
     *  If it is longer than "units" until the first element on the chain
     *  fires, then bump it and quit.                                 
     */                                                               
    if ( units < first->delta_interval ) {                            
      first->delta_interval -= units;                                 
   5d790:	9084           	subl %d4,%d0                                <== NOT EXECUTED
   5d792:	2140 0010      	movel %d0,%a0@(16)                          <== NOT EXECUTED
      if ( first->delta_interval != 0 )                               
        break;                                                        
    }                                                                 
  }                                                                   
                                                                      
  _ISR_Enable( level );                                               
   5d796:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
   5d798:	60e6           	bras 5d780 <_Watchdog_Adjust_to_chain+0x74> <== NOT EXECUTED
	...                                                                  
                                                                      
00049228 <_Workspace_Handler_initialization>:                         
                                                                      
/*                                                                    
 *  _Workspace_Handler_initialization                                 
 */                                                                   
void _Workspace_Handler_initialization(void)                          
{                                                                     
   49228:	4e56 0000      	linkw %fp,#0                                
   4922c:	2f03           	movel %d3,%sp@-                             
  uintptr_t memory_available = 0;                                     
  void *starting_address = Configuration.work_space_start;            
  uintptr_t size = Configuration.work_space_size;                     
   4922e:	2639 0005 d7c8 	movel 5d7c8 <Configuration+0x4>,%d3         
                                                                      
/*                                                                    
 *  _Workspace_Handler_initialization                                 
 */                                                                   
void _Workspace_Handler_initialization(void)                          
{                                                                     
   49234:	2f02           	movel %d2,%sp@-                             
  uintptr_t memory_available = 0;                                     
  void *starting_address = Configuration.work_space_start;            
   49236:	2439 0005 d7c4 	movel 5d7c4 <Configuration>,%d2             
  uintptr_t size = Configuration.work_space_size;                     
                                                                      
  if ( Configuration.do_zero_of_workspace )                           
   4923c:	4a39 0005 d7ec 	tstb 5d7ec <Configuration+0x28>             
   49242:	6628           	bnes 4926c <_Workspace_Handler_initialization+0x44>
   memset( starting_address, 0, size );                               
                                                                      
  memory_available = _Heap_Initialize(                                
   49244:	4878 0004      	pea 4 <CONTEXT_ARG>                         
   49248:	2f03           	movel %d3,%sp@-                             
   4924a:	2f02           	movel %d2,%sp@-                             
   4924c:	4879 0005 ef9a 	pea 5ef9a <_Workspace_Area>                 
   49252:	4eb9 0004 6c60 	jsr 46c60 <_Heap_Initialize>                
    starting_address,                                                 
    size,                                                             
    CPU_HEAP_ALIGNMENT                                                
  );                                                                  
                                                                      
  if ( memory_available == 0 )                                        
   49258:	4fef 0010      	lea %sp@(16),%sp                            
   4925c:	4a80           	tstl %d0                                    
   4925e:	671e           	beqs 4927e <_Workspace_Handler_initialization+0x56>
    _Internal_error_Occurred(                                         
      INTERNAL_ERROR_CORE,                                            
      true,                                                           
      INTERNAL_ERROR_TOO_LITTLE_WORKSPACE                             
    );                                                                
}                                                                     
   49260:	242e fff8      	movel %fp@(-8),%d2                          
   49264:	262e fffc      	movel %fp@(-4),%d3                          
   49268:	4e5e           	unlk %fp                                    
   4926a:	4e75           	rts                                         
  uintptr_t memory_available = 0;                                     
  void *starting_address = Configuration.work_space_start;            
  uintptr_t size = Configuration.work_space_size;                     
                                                                      
  if ( Configuration.do_zero_of_workspace )                           
   memset( starting_address, 0, size );                               
   4926c:	2f03           	movel %d3,%sp@-                             
   4926e:	42a7           	clrl %sp@-                                  
   49270:	2f02           	movel %d2,%sp@-                             
   49272:	4eb9 0004 f484 	jsr 4f484 <memset>                          
   49278:	4fef 000c      	lea %sp@(12),%sp                            
   4927c:	60c6           	bras 49244 <_Workspace_Handler_initialization+0x1c>
    size,                                                             
    CPU_HEAP_ALIGNMENT                                                
  );                                                                  
                                                                      
  if ( memory_available == 0 )                                        
    _Internal_error_Occurred(                                         
   4927e:	4878 0003      	pea 3 <DIVIDE>                              
   49282:	4878 0001      	pea 1 <ADD>                                 
   49286:	42a7           	clrl %sp@-                                  
   49288:	4eb9 0004 6fcc 	jsr 46fcc <_Internal_error_Occurred>        
	...                                                                  
                                                                      
0005b3c0 <_calloc_r>:                                                 
void *_calloc_r(                                                      
  struct _reent *ignored __attribute__((unused)),                     
  size_t         elements,                                            
  size_t         size                                                 
)                                                                     
{                                                                     
   5b3c0:	4e56 0000      	linkw %fp,#0                                
   5b3c4:	202e 000c      	movel %fp@(12),%d0                          
  return calloc( elements, size );                                    
   5b3c8:	2d6e 0010 000c 	movel %fp@(16),%fp@(12)                     
   5b3ce:	2d40 0008      	movel %d0,%fp@(8)                           
}                                                                     
   5b3d2:	4e5e           	unlk %fp                                    
  struct _reent *ignored __attribute__((unused)),                     
  size_t         elements,                                            
  size_t         size                                                 
)                                                                     
{                                                                     
  return calloc( elements, size );                                    
   5b3d4:	4ef9 0004 a608 	jmp 4a608 <calloc>                          
	...                                                                  
                                                                      
00042e0a <_exit>:                                                     
  /*                                                                  
   *  If the toolset uses init/fini sections, then we need to         
   *  run the global destructors now.                                 
   */                                                                 
  #if defined(__USE_INIT_FINI__)                                      
    FINI_SYMBOL();                                                    
   42e0a:	4e56 0000      	linkw %fp,#0                                
   42e0e:	4eb9 0005 bc4c 	jsr 5bc4c <_fini>                           
   *  We need to do the exit processing on the global reentrancy structure.
   *  This has already been done on the per task reentrancy structure 
   *  associated with this task.                                      
   */                                                                 
                                                                      
  libc_wrapup();                                                      
   42e14:	4eb9 0004 2da4 	jsr 42da4 <libc_wrapup>                     
  rtems_shutdown_executive(status);                                   
   42e1a:	2f2e 0008      	movel %fp@(8),%sp@-                         
   42e1e:	4eb9 0004 63fc 	jsr 463fc <rtems_shutdown_executive>        
   42e24:	588f           	addql #4,%sp                                <== NOT EXECUTED
   42e26:	60fe           	bras 42e26 <_exit+0x1c>                     <== NOT EXECUTED
                                                                      
0007a98c <_fcntl_r>:                                                  
  struct _reent *ptr __attribute__((unused)),                         
  int fd,                                                             
  int cmd,                                                            
  int arg                                                             
)                                                                     
{                                                                     
   7a98c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   7a990:	222e 0010      	movel %fp@(16),%d1                          <== NOT EXECUTED
   7a994:	202e 000c      	movel %fp@(12),%d0                          <== NOT EXECUTED
  return fcntl( fd, cmd, arg );                                       
   7a998:	2d6e 0014 0010 	movel %fp@(20),%fp@(16)                     <== NOT EXECUTED
   7a99e:	2d41 000c      	movel %d1,%fp@(12)                          <== NOT EXECUTED
   7a9a2:	2d40 0008      	movel %d0,%fp@(8)                           <== NOT EXECUTED
}                                                                     
   7a9a6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  int fd,                                                             
  int cmd,                                                            
  int arg                                                             
)                                                                     
{                                                                     
  return fcntl( fd, cmd, arg );                                       
   7a9a8:	4ef9 0007 a768 	jmp 7a768 <fcntl>                           <== NOT EXECUTED
	...                                                                  
                                                                      
0005b3dc <_free_r>:                                                   
                                                                      
void _free_r(                                                         
  struct _reent *ignored __attribute__((unused)),                     
  void          *ptr                                                  
)                                                                     
{                                                                     
   5b3dc:	4e56 0000      	linkw %fp,#0                                
  free( ptr );                                                        
   5b3e0:	2d6e 000c 0008 	movel %fp@(12),%fp@(8)                      
}                                                                     
   5b3e6:	4e5e           	unlk %fp                                    
void _free_r(                                                         
  struct _reent *ignored __attribute__((unused)),                     
  void          *ptr                                                  
)                                                                     
{                                                                     
  free( ptr );                                                        
   5b3e8:	4ef9 0004 a6f4 	jmp 4a6f4 <free>                            
	...                                                                  
                                                                      
0004d5ae <_getpid_r>:                                                 
pid_t _getpid_r(                                                      
  struct _reent *ptr __attribute__((unused))                          
)                                                                     
{                                                                     
  return getpid();                                                    
}                                                                     
   4d5ae:	7001           	moveq #1,%d0                                <== NOT EXECUTED
#include <reent.h>                                                    
                                                                      
pid_t _getpid_r(                                                      
  struct _reent *ptr __attribute__((unused))                          
)                                                                     
{                                                                     
   4d5b0:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return getpid();                                                    
}                                                                     
   4d5b4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004a8f8 <_gettimeofday>:                                             
                                                                      
int _gettimeofday(                                                    
  struct timeval  *tp,                                                
  struct timezone *tzp                                                
)                                                                     
{                                                                     
   4a8f8:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return gettimeofday( tp, tzp );                                     
}                                                                     
   4a8fc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
int _gettimeofday(                                                    
  struct timeval  *tp,                                                
  struct timezone *tzp                                                
)                                                                     
{                                                                     
  return gettimeofday( tp, tzp );                                     
   4a8fe:	4ef9 0004 a894 	jmp 4a894 <gettimeofday>                    <== NOT EXECUTED
                                                                      
0004a904 <_gettimeofday_r>:                                           
int _gettimeofday_r(                                                  
  struct _reent   *ignored_reentrancy_stuff __attribute__((unused)),  
  struct timeval  *tp,                                                
  struct timezone *tzp                                                
)                                                                     
{                                                                     
   4a904:	4e56 0000      	linkw %fp,#0                                
   4a908:	202e 000c      	movel %fp@(12),%d0                          
  return gettimeofday( tp, tzp );                                     
   4a90c:	2d6e 0010 000c 	movel %fp@(16),%fp@(12)                     
   4a912:	2d40 0008      	movel %d0,%fp@(8)                           
}                                                                     
   4a916:	4e5e           	unlk %fp                                    
  struct _reent   *ignored_reentrancy_stuff __attribute__((unused)),  
  struct timeval  *tp,                                                
  struct timezone *tzp                                                
)                                                                     
{                                                                     
  return gettimeofday( tp, tzp );                                     
   4a918:	4ef9 0004 a894 	jmp 4a894 <gettimeofday>                    
	...                                                                  
                                                                      
0005b4cc <_isatty_r>:                                                 
                                                                      
int _isatty_r(                                                        
  struct _reent *ptr __attribute__((unused)),                         
  int            fd                                                   
)                                                                     
{                                                                     
   5b4cc:	4e56 0000      	linkw %fp,#0                                
  return isatty( fd );                                                
   5b4d0:	2d6e 000c 0008 	movel %fp@(12),%fp@(8)                      
}                                                                     
   5b4d6:	4e5e           	unlk %fp                                    
int _isatty_r(                                                        
  struct _reent *ptr __attribute__((unused)),                         
  int            fd                                                   
)                                                                     
{                                                                     
  return isatty( fd );                                                
   5b4d8:	4ef9 0005 bba0 	jmp 5bba0 <isatty>                          
	...                                                                  
                                                                      
00067e80 <_link_r>:                                                   
int _link_r(                                                          
  struct _reent *ptr __attribute__((unused)),                         
  const char    *existing,                                            
  const char    *new                                                  
)                                                                     
{                                                                     
   67e80:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   67e84:	202e 000c      	movel %fp@(12),%d0                          <== NOT EXECUTED
  return link( existing, new );                                       
   67e88:	2d6e 0010 000c 	movel %fp@(16),%fp@(12)                     <== NOT EXECUTED
   67e8e:	2d40 0008      	movel %d0,%fp@(8)                           <== NOT EXECUTED
}                                                                     
   67e92:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  struct _reent *ptr __attribute__((unused)),                         
  const char    *existing,                                            
  const char    *new                                                  
)                                                                     
{                                                                     
  return link( existing, new );                                       
   67e94:	4ef9 0006 7c64 	jmp 67c64 <link>                            <== NOT EXECUTED
	...                                                                  
                                                                      
00068124 <_lstat_r>:                                                  
int _STAT_R_NAME(                                                     
  struct _reent *ptr __attribute__((unused)),                         
  const char    *path,                                                
  struct stat   *buf                                                  
)                                                                     
{                                                                     
   68124:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   68128:	202e 000c      	movel %fp@(12),%d0                          <== NOT EXECUTED
  return _STAT_NAME( path, buf );                                     
   6812c:	2d6e 0010 000c 	movel %fp@(16),%fp@(12)                     <== NOT EXECUTED
   68132:	2d40 0008      	movel %d0,%fp@(8)                           <== NOT EXECUTED
}                                                                     
   68136:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  struct _reent *ptr __attribute__((unused)),                         
  const char    *path,                                                
  struct stat   *buf                                                  
)                                                                     
{                                                                     
  return _STAT_NAME( path, buf );                                     
   68138:	4ef9 0006 8040 	jmp 68040 <lstat>                           <== NOT EXECUTED
	...                                                                  
                                                                      
0005b684 <_malloc_r>:                                                 
                                                                      
void *_malloc_r(                                                      
  struct _reent *ignored __attribute__((unused)),                     
  size_t         size                                                 
)                                                                     
{                                                                     
   5b684:	4e56 0000      	linkw %fp,#0                                
  return malloc( size );                                              
   5b688:	2d6e 000c 0008 	movel %fp@(12),%fp@(8)                      
}                                                                     
   5b68e:	4e5e           	unlk %fp                                    
void *_malloc_r(                                                      
  struct _reent *ignored __attribute__((unused)),                     
  size_t         size                                                 
)                                                                     
{                                                                     
  return malloc( size );                                              
   5b690:	4ef9 0004 ac8c 	jmp 4ac8c <malloc>                          
	...                                                                  
                                                                      
0005b788 <_realloc_r>:                                                
void *_realloc_r(                                                     
  struct _reent *ignored __attribute__((unused)),                     
  void          *ptr,                                                 
  size_t         size                                                 
)                                                                     
{                                                                     
   5b788:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   5b78c:	202e 000c      	movel %fp@(12),%d0                          <== NOT EXECUTED
  return realloc( ptr, size );                                        
   5b790:	2d6e 0010 000c 	movel %fp@(16),%fp@(12)                     <== NOT EXECUTED
   5b796:	2d40 0008      	movel %d0,%fp@(8)                           <== NOT EXECUTED
}                                                                     
   5b79a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  struct _reent *ignored __attribute__((unused)),                     
  void          *ptr,                                                 
  size_t         size                                                 
)                                                                     
{                                                                     
  return realloc( ptr, size );                                        
   5b79c:	4ef9 0005 b7e4 	jmp 5b7e4 <realloc>                         <== NOT EXECUTED
	...                                                                  
                                                                      
00097e14 <_rename_r>:                                                 
int _rename_r(                                                        
  struct _reent *ptr __attribute__((unused)),                         
  const char    *old,                                                 
  const char    *new                                                  
)                                                                     
{                                                                     
   97e14:	4e56 ffa0      	linkw %fp,#-96                              <== NOT EXECUTED
   97e18:	48d7 3c3c      	moveml %d2-%d5/%a2-%a5,%sp@                 <== NOT EXECUTED
   97e1c:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Get the parent node of the old path to be renamed. Find the parent path.
   */                                                                 
                                                                      
  old_parent_pathlen = rtems_filesystem_dirname ( old );              
   97e20:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
int _rename_r(                                                        
  struct _reent *ptr __attribute__((unused)),                         
  const char    *old,                                                 
  const char    *new                                                  
)                                                                     
{                                                                     
   97e22:	2a2e 0010      	movel %fp@(16),%d5                          <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Get the parent node of the old path to be renamed. Find the parent path.
   */                                                                 
                                                                      
  old_parent_pathlen = rtems_filesystem_dirname ( old );              
   97e26:	4eb9 0004 6550 	jsr 46550 <rtems_filesystem_dirname>        <== NOT EXECUTED
                                                                      
  if ( old_parent_pathlen == 0 )                                      
   97e2c:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Get the parent node of the old path to be renamed. Find the parent path.
   */                                                                 
                                                                      
  old_parent_pathlen = rtems_filesystem_dirname ( old );              
   97e2e:	2400           	movel %d0,%d2                               <== NOT EXECUTED
                                                                      
  if ( old_parent_pathlen == 0 )                                      
   97e30:	6600 0338      	bnew 9816a <_rename_r+0x356>                <== NOT EXECUTED
    rtems_filesystem_get_start_loc( old, &i, &old_parent_loc );       
   97e34:	762f           	moveq #47,%d3                               <== NOT EXECUTED
   97e36:	1212           	moveb %a2@,%d1                              <== NOT EXECUTED
   97e38:	1001           	moveb %d1,%d0                               <== NOT EXECUTED
   97e3a:	49c0           	extbl %d0                                   <== NOT EXECUTED
   97e3c:	b680           	cmpl %d0,%d3                                <== NOT EXECUTED
   97e3e:	670e           	beqs 97e4e <_rename_r+0x3a>                 <== NOT EXECUTED
   97e40:	163c 005c      	moveb #92,%d3                               <== NOT EXECUTED
   97e44:	b680           	cmpl %d0,%d3                                <== NOT EXECUTED
   97e46:	6706           	beqs 97e4e <_rename_r+0x3a>                 <== NOT EXECUTED
   97e48:	4a01           	tstb %d1                                    <== NOT EXECUTED
   97e4a:	6600 01ac      	bnew 97ff8 <_rename_r+0x1e4>                <== NOT EXECUTED
   97e4e:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   <== NOT EXECUTED
   97e54:	47ee ffd4      	lea %fp@(-44),%a3                           <== NOT EXECUTED
   97e58:	220e           	movel %fp,%d1                               <== NOT EXECUTED
   97e5a:	0681 ffff ffd8 	addil #-40,%d1                              <== NOT EXECUTED
   97e60:	2841           	moveal %d1,%a4                              <== NOT EXECUTED
   97e62:	200e           	movel %fp,%d0                               <== NOT EXECUTED
   97e64:	0680 ffff ffdc 	addil #-36,%d0                              <== NOT EXECUTED
   97e6a:	4bee ffe0      	lea %fp@(-32),%a5                           <== NOT EXECUTED
   97e6e:	43ee ffe4      	lea %fp@(-28),%a1                           <== NOT EXECUTED
   97e72:	26a8 0018      	movel %a0@(24),%a3@                         <== NOT EXECUTED
   97e76:	28a8 001c      	movel %a0@(28),%a4@                         <== NOT EXECUTED
   97e7a:	2840           	moveal %d0,%a4                              <== NOT EXECUTED
   97e7c:	28a8 0020      	movel %a0@(32),%a4@                         <== NOT EXECUTED
   97e80:	2aa8 0024      	movel %a0@(36),%a5@                         <== NOT EXECUTED
   97e84:	22a8 0028      	movel %a0@(40),%a1@                         <== NOT EXECUTED
   97e88:	4204           	clrb %d4                                    <== NOT EXECUTED
                                                                      
  /*                                                                  
   * Start from the parent to find the node that should be under it.  
   */                                                                 
                                                                      
  old_loc = old_parent_loc;                                           
   97e8a:	2041           	moveal %d1,%a0                              <== NOT EXECUTED
   97e8c:	2840           	moveal %d0,%a4                              <== NOT EXECUTED
  name = old + old_parent_pathlen;                                    
   97e8e:	d48a           	addl %a2,%d2                                <== NOT EXECUTED
  name += rtems_filesystem_prefix_separators( name, strlen( name ) ); 
   97e90:	45f9 0008 6ee4 	lea 86ee4 <strlen>,%a2                      <== NOT EXECUTED
                                                                      
  result = rtems_filesystem_evaluate_relative_path( name , strlen( name ),
   97e96:	260e           	movel %fp,%d3                               <== NOT EXECUTED
   97e98:	0683 ffff ffe8 	addil #-24,%d3                              <== NOT EXECUTED
                                                                      
  /*                                                                  
   * Start from the parent to find the node that should be under it.  
   */                                                                 
                                                                      
  old_loc = old_parent_loc;                                           
   97e9e:	2d50 ffec      	movel %a0@,%fp@(-20)                        <== NOT EXECUTED
   97ea2:	2d51 fff8      	movel %a1@,%fp@(-8)                         <== NOT EXECUTED
   97ea6:	2d54 fff0      	movel %a4@,%fp@(-16)                        <== NOT EXECUTED
   97eaa:	2d55 fff4      	movel %a5@,%fp@(-12)                        <== NOT EXECUTED
   97eae:	2d53 ffe8      	movel %a3@,%fp@(-24)                        <== NOT EXECUTED
  name = old + old_parent_pathlen;                                    
   97eb2:	2d42 fffc      	movel %d2,%fp@(-4)                          <== NOT EXECUTED
  name += rtems_filesystem_prefix_separators( name, strlen( name ) ); 
   97eb6:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   97eb8:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   97eba:	2e80           	movel %d0,%sp@                              <== NOT EXECUTED
   97ebc:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   97ebe:	4eb9 0004 6508 	jsr 46508 <rtems_filesystem_prefix_separators><== NOT EXECUTED
   97ec4:	d480           	addl %d0,%d2                                <== NOT EXECUTED
   97ec6:	2d42 fffc      	movel %d2,%fp@(-4)                          <== NOT EXECUTED
                                                                      
  result = rtems_filesystem_evaluate_relative_path( name , strlen( name ),
   97eca:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   97ecc:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   97ece:	4297           	clrl %sp@                                   <== NOT EXECUTED
   97ed0:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   97ed2:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   97ed4:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   97ed6:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   97ed8:	4eb9 0004 65c2 	jsr 465c2 <rtems_filesystem_evaluate_relative_path><== NOT EXECUTED
                                                    0, &old_loc, false );
  if ( result != 0 ) {                                                
   97ede:	4fef 001c      	lea %sp@(28),%sp                            <== NOT EXECUTED
                                                                      
  old_loc = old_parent_loc;                                           
  name = old + old_parent_pathlen;                                    
  name += rtems_filesystem_prefix_separators( name, strlen( name ) ); 
                                                                      
  result = rtems_filesystem_evaluate_relative_path( name , strlen( name ),
   97ee2:	2400           	movel %d0,%d2                               <== NOT EXECUTED
                                                    0, &old_loc, false );
  if ( result != 0 ) {                                                
   97ee4:	6600 01ac      	bnew 98092 <_rename_r+0x27e>                <== NOT EXECUTED
                                                                      
  /*                                                                  
   * Get the parent of the new node we are renaming to.               
   */                                                                 
                                                                      
  rtems_filesystem_get_start_loc( new, &i, &new_parent_loc );         
   97ee8:	2245           	moveal %d5,%a1                              <== NOT EXECUTED
   97eea:	742f           	moveq #47,%d2                               <== NOT EXECUTED
   97eec:	1211           	moveb %a1@,%d1                              <== NOT EXECUTED
   97eee:	1001           	moveb %d1,%d0                               <== NOT EXECUTED
   97ef0:	49c0           	extbl %d0                                   <== NOT EXECUTED
   97ef2:	b480           	cmpl %d0,%d2                                <== NOT EXECUTED
   97ef4:	6700 00d6      	beqw 97fcc <_rename_r+0x1b8>                <== NOT EXECUTED
   97ef8:	143c 005c      	moveb #92,%d2                               <== NOT EXECUTED
   97efc:	b480           	cmpl %d0,%d2                                <== NOT EXECUTED
   97efe:	6700 00cc      	beqw 97fcc <_rename_r+0x1b8>                <== NOT EXECUTED
   97f02:	4a01           	tstb %d1                                    <== NOT EXECUTED
   97f04:	6700 00c6      	beqw 97fcc <_rename_r+0x1b8>                <== NOT EXECUTED
   97f08:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   <== NOT EXECUTED
   97f0e:	45ee ffc0      	lea %fp@(-64),%a2                           <== NOT EXECUTED
   97f12:	5888           	addql #4,%a0                                <== NOT EXECUTED
   97f14:	4280           	clrl %d0                                    <== NOT EXECUTED
   97f16:	2498           	movel %a0@+,%a2@                            <== NOT EXECUTED
   97f18:	2d58 ffc4      	movel %a0@+,%fp@(-60)                       <== NOT EXECUTED
   97f1c:	2d58 ffc8      	movel %a0@+,%fp@(-56)                       <== NOT EXECUTED
   97f20:	2d58 ffcc      	movel %a0@+,%fp@(-52)                       <== NOT EXECUTED
   97f24:	2d50 ffd0      	movel %a0@,%fp@(-48)                        <== NOT EXECUTED
                                                                      
  if ( !new_parent_loc.ops->evalformake_h ) {                         
   97f28:	206e ffcc      	moveal %fp@(-52),%a0                        <== NOT EXECUTED
   97f2c:	2068 0004      	moveal %a0@(4),%a0                          <== NOT EXECUTED
   97f30:	4a88           	tstl %a0                                    <== NOT EXECUTED
   97f32:	6700 01e8      	beqw 9811c <_rename_r+0x308>                <== NOT EXECUTED
      rtems_filesystem_freenode( &old_parent_loc );                   
    rtems_filesystem_freenode( &old_loc );                            
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*new_parent_loc.ops->evalformake_h)( &new[i], &new_parent_loc, &name );
   97f36:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   97f3a:	2245           	moveal %d5,%a1                              <== NOT EXECUTED
   97f3c:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   97f3e:	4871 0800      	pea %a1@(00000000,%d0:l)                    <== NOT EXECUTED
   97f42:	4e90           	jsr %a0@                                    <== NOT EXECUTED
  if ( result != 0 ) {                                                
   97f44:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
      rtems_filesystem_freenode( &old_parent_loc );                   
    rtems_filesystem_freenode( &old_loc );                            
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*new_parent_loc.ops->evalformake_h)( &new[i], &new_parent_loc, &name );
   97f48:	2400           	movel %d0,%d2                               <== NOT EXECUTED
  if ( result != 0 ) {                                                
   97f4a:	6600 017a      	bnew 980c6 <_rename_r+0x2b2>                <== NOT EXECUTED
  /*                                                                  
   *  Check to see if the caller is trying to rename across file system
   *  boundaries.                                                     
   */                                                                 
                                                                      
  if ( old_parent_loc.mt_entry != new_parent_loc.mt_entry ) {         
   97f4e:	226e ffd0      	moveal %fp@(-48),%a1                        <== NOT EXECUTED
   97f52:	b3ee ffe4      	cmpal %fp@(-28),%a1                         <== NOT EXECUTED
   97f56:	6600 00d8      	bnew 98030 <_rename_r+0x21c>                <== NOT EXECUTED
      rtems_filesystem_freenode( &old_parent_loc );                   
    rtems_filesystem_freenode( &old_loc );                            
    rtems_set_errno_and_return_minus_one( EXDEV );                    
  }                                                                   
                                                                      
  if ( !new_parent_loc.ops->rename_h ) {                              
   97f5a:	226e ffcc      	moveal %fp@(-52),%a1                        <== NOT EXECUTED
   97f5e:	2069 0040      	moveal %a1@(64),%a0                         <== NOT EXECUTED
   97f62:	4a88           	tstl %a0                                    <== NOT EXECUTED
   97f64:	6700 0240      	beqw 981a6 <_rename_r+0x392>                <== NOT EXECUTED
      rtems_filesystem_freenode( &old_parent_loc );                   
    rtems_filesystem_freenode( &old_loc );                            
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*new_parent_loc.ops->rename_h)( &old_parent_loc, &old_loc, &new_parent_loc, name );
   97f68:	2f2e fffc      	movel %fp@(-4),%sp@-                        <== NOT EXECUTED
   97f6c:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   97f6e:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   97f70:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   97f72:	4e90           	jsr %a0@                                    <== NOT EXECUTED
                                                                      
  rtems_filesystem_freenode( &new_parent_loc );                       
   97f74:	206e ffcc      	moveal %fp@(-52),%a0                        <== NOT EXECUTED
      rtems_filesystem_freenode( &old_parent_loc );                   
    rtems_filesystem_freenode( &old_loc );                            
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*new_parent_loc.ops->rename_h)( &old_parent_loc, &old_loc, &new_parent_loc, name );
   97f78:	2840           	moveal %d0,%a4                              <== NOT EXECUTED
                                                                      
  rtems_filesystem_freenode( &new_parent_loc );                       
   97f7a:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   97f7e:	4a88           	tstl %a0                                    <== NOT EXECUTED
   97f80:	670e           	beqs 97f90 <_rename_r+0x17c>                <== NOT EXECUTED
   97f82:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   97f86:	4a88           	tstl %a0                                    <== NOT EXECUTED
   97f88:	6706           	beqs 97f90 <_rename_r+0x17c>                <== NOT EXECUTED
   97f8a:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   97f8c:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   97f8e:	588f           	addql #4,%sp                                <== NOT EXECUTED
  if ( free_old_parentloc )                                           
   97f90:	4a04           	tstb %d4                                    <== NOT EXECUTED
   97f92:	6716           	beqs 97faa <_rename_r+0x196>                <== NOT EXECUTED
    rtems_filesystem_freenode( &old_parent_loc );                     
   97f94:	206e ffe0      	moveal %fp@(-32),%a0                        <== NOT EXECUTED
   97f98:	4a88           	tstl %a0                                    <== NOT EXECUTED
   97f9a:	670e           	beqs 97faa <_rename_r+0x196>                <== NOT EXECUTED
   97f9c:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   97fa0:	4a88           	tstl %a0                                    <== NOT EXECUTED
   97fa2:	6706           	beqs 97faa <_rename_r+0x196>                <== NOT EXECUTED
   97fa4:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   97fa6:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   97fa8:	588f           	addql #4,%sp                                <== NOT EXECUTED
  rtems_filesystem_freenode( &old_loc );                              
   97faa:	206e fff4      	moveal %fp@(-12),%a0                        <== NOT EXECUTED
   97fae:	4a88           	tstl %a0                                    <== NOT EXECUTED
   97fb0:	670e           	beqs 97fc0 <_rename_r+0x1ac>                <== NOT EXECUTED
   97fb2:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   97fb6:	4a88           	tstl %a0                                    <== NOT EXECUTED
   97fb8:	6706           	beqs 97fc0 <_rename_r+0x1ac>                <== NOT EXECUTED
   97fba:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   97fbc:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   97fbe:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  return result;                                                      
}                                                                     
   97fc0:	200c           	movel %a4,%d0                               <== NOT EXECUTED
   97fc2:	4cee 3c3c ffa0 	moveml %fp@(-96),%d2-%d5/%a2-%a5            <== NOT EXECUTED
   97fc8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   97fca:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  /*                                                                  
   * Get the parent of the new node we are renaming to.               
   */                                                                 
                                                                      
  rtems_filesystem_get_start_loc( new, &i, &new_parent_loc );         
   97fcc:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   <== NOT EXECUTED
   97fd2:	45ee ffc0      	lea %fp@(-64),%a2                           <== NOT EXECUTED
   97fd6:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   97fd8:	24a8 0018      	movel %a0@(24),%a2@                         <== NOT EXECUTED
   97fdc:	2d68 001c ffc4 	movel %a0@(28),%fp@(-60)                    <== NOT EXECUTED
   97fe2:	2d68 0020 ffc8 	movel %a0@(32),%fp@(-56)                    <== NOT EXECUTED
   97fe8:	2d68 0024 ffcc 	movel %a0@(36),%fp@(-52)                    <== NOT EXECUTED
   97fee:	2d68 0028 ffd0 	movel %a0@(40),%fp@(-48)                    <== NOT EXECUTED
   97ff4:	6000 ff32      	braw 97f28 <_rename_r+0x114>                <== NOT EXECUTED
   */                                                                 
                                                                      
  old_parent_pathlen = rtems_filesystem_dirname ( old );              
                                                                      
  if ( old_parent_pathlen == 0 )                                      
    rtems_filesystem_get_start_loc( old, &i, &old_parent_loc );       
   97ff8:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   <== NOT EXECUTED
   97ffe:	47ee ffd4      	lea %fp@(-44),%a3                           <== NOT EXECUTED
   98002:	5888           	addql #4,%a0                                <== NOT EXECUTED
   98004:	220e           	movel %fp,%d1                               <== NOT EXECUTED
   98006:	0681 ffff ffd8 	addil #-40,%d1                              <== NOT EXECUTED
   9800c:	2841           	moveal %d1,%a4                              <== NOT EXECUTED
   9800e:	200e           	movel %fp,%d0                               <== NOT EXECUTED
   98010:	0680 ffff ffdc 	addil #-36,%d0                              <== NOT EXECUTED
   98016:	4bee ffe0      	lea %fp@(-32),%a5                           <== NOT EXECUTED
   9801a:	43ee ffe4      	lea %fp@(-28),%a1                           <== NOT EXECUTED
   9801e:	2698           	movel %a0@+,%a3@                            <== NOT EXECUTED
   98020:	2898           	movel %a0@+,%a4@                            <== NOT EXECUTED
   98022:	2840           	moveal %d0,%a4                              <== NOT EXECUTED
   98024:	2898           	movel %a0@+,%a4@                            <== NOT EXECUTED
   98026:	2a98           	movel %a0@+,%a5@                            <== NOT EXECUTED
   98028:	2290           	movel %a0@,%a1@                             <== NOT EXECUTED
   9802a:	4204           	clrb %d4                                    <== NOT EXECUTED
   9802c:	6000 fe5c      	braw 97e8a <_rename_r+0x76>                 <== NOT EXECUTED
   *  Check to see if the caller is trying to rename across file system
   *  boundaries.                                                     
   */                                                                 
                                                                      
  if ( old_parent_loc.mt_entry != new_parent_loc.mt_entry ) {         
    rtems_filesystem_freenode( &new_parent_loc );                     
   98030:	206e ffcc      	moveal %fp@(-52),%a0                        <== NOT EXECUTED
   98034:	4a88           	tstl %a0                                    <== NOT EXECUTED
   98036:	670e           	beqs 98046 <_rename_r+0x232>                <== NOT EXECUTED
   98038:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   9803c:	4a88           	tstl %a0                                    <== NOT EXECUTED
   9803e:	6706           	beqs 98046 <_rename_r+0x232>                <== NOT EXECUTED
   98040:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   98042:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   98044:	588f           	addql #4,%sp                                <== NOT EXECUTED
    if ( free_old_parentloc )                                         
   98046:	4a04           	tstb %d4                                    <== NOT EXECUTED
   98048:	6716           	beqs 98060 <_rename_r+0x24c>                <== NOT EXECUTED
      rtems_filesystem_freenode( &old_parent_loc );                   
   9804a:	206e ffe0      	moveal %fp@(-32),%a0                        <== NOT EXECUTED
   9804e:	4a88           	tstl %a0                                    <== NOT EXECUTED
   98050:	670e           	beqs 98060 <_rename_r+0x24c>                <== NOT EXECUTED
   98052:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   98056:	4a88           	tstl %a0                                    <== NOT EXECUTED
   98058:	6706           	beqs 98060 <_rename_r+0x24c>                <== NOT EXECUTED
   9805a:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   9805c:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   9805e:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_filesystem_freenode( &old_loc );                            
   98060:	206e fff4      	moveal %fp@(-12),%a0                        <== NOT EXECUTED
   98064:	4a88           	tstl %a0                                    <== NOT EXECUTED
   98066:	670e           	beqs 98076 <_rename_r+0x262>                <== NOT EXECUTED
   98068:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   9806c:	4a88           	tstl %a0                                    <== NOT EXECUTED
   9806e:	6706           	beqs 98076 <_rename_r+0x262>                <== NOT EXECUTED
   98070:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   98072:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   98074:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( EXDEV );                    
   98076:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   9807c:	387c ffff      	moveaw #-1,%a4                              <== NOT EXECUTED
   98080:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   98082:	7012           	moveq #18,%d0                               <== NOT EXECUTED
   98084:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
  if ( free_old_parentloc )                                           
    rtems_filesystem_freenode( &old_parent_loc );                     
  rtems_filesystem_freenode( &old_loc );                              
                                                                      
  return result;                                                      
}                                                                     
   98086:	200c           	movel %a4,%d0                               <== NOT EXECUTED
   98088:	4cee 3c3c ffa0 	moveml %fp@(-96),%d2-%d5/%a2-%a5            <== NOT EXECUTED
   9808e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   98090:	4e75           	rts                                         <== NOT EXECUTED
  name += rtems_filesystem_prefix_separators( name, strlen( name ) ); 
                                                                      
  result = rtems_filesystem_evaluate_relative_path( name , strlen( name ),
                                                    0, &old_loc, false );
  if ( result != 0 ) {                                                
    if ( free_old_parentloc )                                         
   98092:	4a04           	tstb %d4                                    <== NOT EXECUTED
   98094:	6716           	beqs 980ac <_rename_r+0x298>                <== NOT EXECUTED
      rtems_filesystem_freenode( &old_parent_loc );                   
   98096:	206e ffe0      	moveal %fp@(-32),%a0                        <== NOT EXECUTED
   9809a:	4a88           	tstl %a0                                    <== NOT EXECUTED
   9809c:	670e           	beqs 980ac <_rename_r+0x298>                <== NOT EXECUTED
   9809e:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   980a2:	4a88           	tstl %a0                                    <== NOT EXECUTED
   980a4:	6706           	beqs 980ac <_rename_r+0x298>                <== NOT EXECUTED
   980a6:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   980a8:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   980aa:	588f           	addql #4,%sp                                <== NOT EXECUTED
  if ( result != 0 ) {                                                
    rtems_filesystem_freenode( &new_parent_loc );                     
    if ( free_old_parentloc )                                         
      rtems_filesystem_freenode( &old_parent_loc );                   
    rtems_filesystem_freenode( &old_loc );                            
    rtems_set_errno_and_return_minus_one( result );                   
   980ac:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   980b2:	387c ffff      	moveaw #-1,%a4                              <== NOT EXECUTED
   980b6:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   980b8:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
  if ( free_old_parentloc )                                           
    rtems_filesystem_freenode( &old_parent_loc );                     
  rtems_filesystem_freenode( &old_loc );                              
                                                                      
  return result;                                                      
}                                                                     
   980ba:	200c           	movel %a4,%d0                               <== NOT EXECUTED
   980bc:	4cee 3c3c ffa0 	moveml %fp@(-96),%d2-%d5/%a2-%a5            <== NOT EXECUTED
   980c2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   980c4:	4e75           	rts                                         <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*new_parent_loc.ops->evalformake_h)( &new[i], &new_parent_loc, &name );
  if ( result != 0 ) {                                                
    rtems_filesystem_freenode( &new_parent_loc );                     
   980c6:	206e ffcc      	moveal %fp@(-52),%a0                        <== NOT EXECUTED
   980ca:	4a88           	tstl %a0                                    <== NOT EXECUTED
   980cc:	670e           	beqs 980dc <_rename_r+0x2c8>                <== NOT EXECUTED
   980ce:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   980d2:	4a88           	tstl %a0                                    <== NOT EXECUTED
   980d4:	6706           	beqs 980dc <_rename_r+0x2c8>                <== NOT EXECUTED
   980d6:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   980d8:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   980da:	588f           	addql #4,%sp                                <== NOT EXECUTED
    if ( free_old_parentloc )                                         
   980dc:	4a04           	tstb %d4                                    <== NOT EXECUTED
   980de:	6716           	beqs 980f6 <_rename_r+0x2e2>                <== NOT EXECUTED
      rtems_filesystem_freenode( &old_parent_loc );                   
   980e0:	206e ffe0      	moveal %fp@(-32),%a0                        <== NOT EXECUTED
   980e4:	4a88           	tstl %a0                                    <== NOT EXECUTED
   980e6:	670e           	beqs 980f6 <_rename_r+0x2e2>                <== NOT EXECUTED
   980e8:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   980ec:	4a88           	tstl %a0                                    <== NOT EXECUTED
   980ee:	6706           	beqs 980f6 <_rename_r+0x2e2>                <== NOT EXECUTED
   980f0:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   980f2:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   980f4:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_filesystem_freenode( &old_loc );                            
   980f6:	206e fff4      	moveal %fp@(-12),%a0                        <== NOT EXECUTED
   980fa:	4a88           	tstl %a0                                    <== NOT EXECUTED
   980fc:	67ae           	beqs 980ac <_rename_r+0x298>                <== NOT EXECUTED
   980fe:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   98102:	4a88           	tstl %a0                                    <== NOT EXECUTED
   98104:	67a6           	beqs 980ac <_rename_r+0x298>                <== NOT EXECUTED
   98106:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( result );                   
   98108:	387c ffff      	moveaw #-1,%a4                              <== NOT EXECUTED
  result = (*new_parent_loc.ops->evalformake_h)( &new[i], &new_parent_loc, &name );
  if ( result != 0 ) {                                                
    rtems_filesystem_freenode( &new_parent_loc );                     
    if ( free_old_parentloc )                                         
      rtems_filesystem_freenode( &old_parent_loc );                   
    rtems_filesystem_freenode( &old_loc );                            
   9810c:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   9810e:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( result );                   
   98110:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   98116:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   98118:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
   9811a:	609e           	bras 980ba <_rename_r+0x2a6>                <== NOT EXECUTED
   */                                                                 
                                                                      
  rtems_filesystem_get_start_loc( new, &i, &new_parent_loc );         
                                                                      
  if ( !new_parent_loc.ops->evalformake_h ) {                         
    if ( free_old_parentloc )                                         
   9811c:	4a04           	tstb %d4                                    <== NOT EXECUTED
   9811e:	6716           	beqs 98136 <_rename_r+0x322>                <== NOT EXECUTED
      rtems_filesystem_freenode( &old_parent_loc );                   
   98120:	206e ffe0      	moveal %fp@(-32),%a0                        <== NOT EXECUTED
   98124:	4a88           	tstl %a0                                    <== NOT EXECUTED
   98126:	670e           	beqs 98136 <_rename_r+0x322>                <== NOT EXECUTED
   98128:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   9812c:	4a88           	tstl %a0                                    <== NOT EXECUTED
   9812e:	6706           	beqs 98136 <_rename_r+0x322>                <== NOT EXECUTED
   98130:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   98132:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   98134:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_filesystem_freenode( &old_loc );                            
   98136:	206e fff4      	moveal %fp@(-12),%a0                        <== NOT EXECUTED
   9813a:	4a88           	tstl %a0                                    <== NOT EXECUTED
   9813c:	670e           	beqs 9814c <_rename_r+0x338>                <== NOT EXECUTED
   9813e:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   98142:	4a88           	tstl %a0                                    <== NOT EXECUTED
   98144:	6706           	beqs 9814c <_rename_r+0x338>                <== NOT EXECUTED
   98146:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   98148:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   9814a:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   9814c:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   98152:	387c ffff      	moveaw #-1,%a4                              <== NOT EXECUTED
   98156:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  if ( free_old_parentloc )                                           
    rtems_filesystem_freenode( &old_parent_loc );                     
  rtems_filesystem_freenode( &old_loc );                              
                                                                      
  return result;                                                      
}                                                                     
   98158:	200c           	movel %a4,%d0                               <== NOT EXECUTED
   9815a:	4cee 3c3c ffa0 	moveml %fp@(-96),%d2-%d5/%a2-%a5            <== NOT EXECUTED
                                                                      
  if ( !new_parent_loc.ops->evalformake_h ) {                         
    if ( free_old_parentloc )                                         
      rtems_filesystem_freenode( &old_parent_loc );                   
    rtems_filesystem_freenode( &old_loc );                            
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   98160:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  if ( free_old_parentloc )                                           
    rtems_filesystem_freenode( &old_parent_loc );                     
  rtems_filesystem_freenode( &old_loc );                              
                                                                      
  return result;                                                      
}                                                                     
   98166:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   98168:	4e75           	rts                                         <== NOT EXECUTED
  old_parent_pathlen = rtems_filesystem_dirname ( old );              
                                                                      
  if ( old_parent_pathlen == 0 )                                      
    rtems_filesystem_get_start_loc( old, &i, &old_parent_loc );       
  else {                                                              
    result = rtems_filesystem_evaluate_path( old, old_parent_pathlen, 
   9816a:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   9816c:	47ee ffd4      	lea %fp@(-44),%a3                           <== NOT EXECUTED
   98170:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   98172:	4878 0002      	pea 2 <DOUBLE_FLOAT>                        <== NOT EXECUTED
   98176:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   98178:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   9817a:	4eb9 0004 66cc 	jsr 466cc <rtems_filesystem_evaluate_path>  <== NOT EXECUTED
                                             RTEMS_LIBIO_PERMS_WRITE, 
                                             &old_parent_loc,         
                                             false );                 
    if ( result != 0 )                                                
   98180:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   98184:	4a80           	tstl %d0                                    <== NOT EXECUTED
   98186:	667a           	bnes 98202 <_rename_r+0x3ee>                <== NOT EXECUTED
   98188:	220e           	movel %fp,%d1                               <== NOT EXECUTED
   9818a:	200e           	movel %fp,%d0                               <== NOT EXECUTED
   9818c:	0681 ffff ffd8 	addil #-40,%d1                              <== NOT EXECUTED
   98192:	0680 ffff ffdc 	addil #-36,%d0                              <== NOT EXECUTED
   98198:	4bee ffe0      	lea %fp@(-32),%a5                           <== NOT EXECUTED
   9819c:	43ee ffe4      	lea %fp@(-28),%a1                           <== NOT EXECUTED
   981a0:	7801           	moveq #1,%d4                                <== NOT EXECUTED
   981a2:	6000 fce6      	braw 97e8a <_rename_r+0x76>                 <== NOT EXECUTED
    rtems_filesystem_freenode( &old_loc );                            
    rtems_set_errno_and_return_minus_one( EXDEV );                    
  }                                                                   
                                                                      
  if ( !new_parent_loc.ops->rename_h ) {                              
    rtems_filesystem_freenode( &new_parent_loc );                     
   981a6:	2069 001c      	moveal %a1@(28),%a0                         <== NOT EXECUTED
   981aa:	4a88           	tstl %a0                                    <== NOT EXECUTED
   981ac:	6706           	beqs 981b4 <_rename_r+0x3a0>                <== NOT EXECUTED
   981ae:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   981b0:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   981b2:	588f           	addql #4,%sp                                <== NOT EXECUTED
    if ( free_old_parentloc )                                         
   981b4:	4a04           	tstb %d4                                    <== NOT EXECUTED
   981b6:	6716           	beqs 981ce <_rename_r+0x3ba>                <== NOT EXECUTED
      rtems_filesystem_freenode( &old_parent_loc );                   
   981b8:	206e ffe0      	moveal %fp@(-32),%a0                        <== NOT EXECUTED
   981bc:	4a88           	tstl %a0                                    <== NOT EXECUTED
   981be:	670e           	beqs 981ce <_rename_r+0x3ba>                <== NOT EXECUTED
   981c0:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   981c4:	4a88           	tstl %a0                                    <== NOT EXECUTED
   981c6:	6706           	beqs 981ce <_rename_r+0x3ba>                <== NOT EXECUTED
   981c8:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   981ca:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   981cc:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_filesystem_freenode( &old_loc );                            
   981ce:	206e fff4      	moveal %fp@(-12),%a0                        <== NOT EXECUTED
   981d2:	4a88           	tstl %a0                                    <== NOT EXECUTED
   981d4:	670e           	beqs 981e4 <_rename_r+0x3d0>                <== NOT EXECUTED
   981d6:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   981da:	4a88           	tstl %a0                                    <== NOT EXECUTED
   981dc:	6706           	beqs 981e4 <_rename_r+0x3d0>                <== NOT EXECUTED
   981de:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   981e0:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   981e2:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   981e4:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   981ea:	387c ffff      	moveaw #-1,%a4                              <== NOT EXECUTED
   981ee:	2240           	moveal %d0,%a1                              <== NOT EXECUTED
  if ( free_old_parentloc )                                           
    rtems_filesystem_freenode( &old_parent_loc );                     
  rtems_filesystem_freenode( &old_loc );                              
                                                                      
  return result;                                                      
}                                                                     
   981f0:	200c           	movel %a4,%d0                               <== NOT EXECUTED
   981f2:	4cee 3c3c ffa0 	moveml %fp@(-96),%d2-%d5/%a2-%a5            <== NOT EXECUTED
  if ( !new_parent_loc.ops->rename_h ) {                              
    rtems_filesystem_freenode( &new_parent_loc );                     
    if ( free_old_parentloc )                                         
      rtems_filesystem_freenode( &old_parent_loc );                   
    rtems_filesystem_freenode( &old_loc );                            
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   981f8:	22bc 0000 0086 	movel #134,%a1@                             <== NOT EXECUTED
  if ( free_old_parentloc )                                           
    rtems_filesystem_freenode( &old_parent_loc );                     
  rtems_filesystem_freenode( &old_loc );                              
                                                                      
  return result;                                                      
}                                                                     
   981fe:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   98200:	4e75           	rts                                         <== NOT EXECUTED
  else {                                                              
    result = rtems_filesystem_evaluate_path( old, old_parent_pathlen, 
                                             RTEMS_LIBIO_PERMS_WRITE, 
                                             &old_parent_loc,         
                                             false );                 
    if ( result != 0 )                                                
   98202:	387c ffff      	moveaw #-1,%a4                              <== NOT EXECUTED
  if ( free_old_parentloc )                                           
    rtems_filesystem_freenode( &old_parent_loc );                     
  rtems_filesystem_freenode( &old_loc );                              
                                                                      
  return result;                                                      
}                                                                     
   98206:	200c           	movel %a4,%d0                               <== NOT EXECUTED
   98208:	4cee 3c3c ffa0 	moveml %fp@(-96),%d2-%d5/%a2-%a5            <== NOT EXECUTED
   9820e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
00047d16 <_stat_r>:                                                   
int _STAT_R_NAME(                                                     
  struct _reent *ptr __attribute__((unused)),                         
  const char    *path,                                                
  struct stat   *buf                                                  
)                                                                     
{                                                                     
   47d16:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   47d1a:	202e 000c      	movel %fp@(12),%d0                          <== NOT EXECUTED
  return _STAT_NAME( path, buf );                                     
   47d1e:	2d6e 0010 000c 	movel %fp@(16),%fp@(12)                     <== NOT EXECUTED
   47d24:	2d40 0008      	movel %d0,%fp@(8)                           <== NOT EXECUTED
}                                                                     
   47d28:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  struct _reent *ptr __attribute__((unused)),                         
  const char    *path,                                                
  struct stat   *buf                                                  
)                                                                     
{                                                                     
  return _STAT_NAME( path, buf );                                     
   47d2a:	4ef9 0004 7c30 	jmp 47c30 <stat>                            <== NOT EXECUTED
                                                                      
0004e630 <_unlink_r>:                                                 
                                                                      
int _unlink_r(                                                        
  struct _reent *ptr __attribute__((unused)),                         
  const char    *path                                                 
)                                                                     
{                                                                     
   4e630:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return unlink( path );                                              
   4e634:	2d6e 000c 0008 	movel %fp@(12),%fp@(8)                      <== NOT EXECUTED
}                                                                     
   4e63a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
int _unlink_r(                                                        
  struct _reent *ptr __attribute__((unused)),                         
  const char    *path                                                 
)                                                                     
{                                                                     
  return unlink( path );                                              
   4e63c:	4ef9 0004 e3c8 	jmp 4e3c8 <unlink>                          <== NOT EXECUTED
	...                                                                  
                                                                      
0005b7a4 <_write_r>:                                                  
  struct _reent *ptr __attribute__((unused)),                         
  int            fd,                                                  
  const void    *buf,                                                 
  size_t         nbytes                                               
)                                                                     
{                                                                     
   5b7a4:	4e56 0000      	linkw %fp,#0                                
   5b7a8:	222e 0010      	movel %fp@(16),%d1                          
   5b7ac:	202e 000c      	movel %fp@(12),%d0                          
  return write( fd, buf, nbytes );                                    
   5b7b0:	2d6e 0014 0010 	movel %fp@(20),%fp@(16)                     
   5b7b6:	2d41 000c      	movel %d1,%fp@(12)                          
   5b7ba:	2d40 0008      	movel %d0,%fp@(8)                           
}                                                                     
   5b7be:	4e5e           	unlk %fp                                    
  int            fd,                                                  
  const void    *buf,                                                 
  size_t         nbytes                                               
)                                                                     
{                                                                     
  return write( fd, buf, nbytes );                                    
   5b7c0:	4ef9 0005 b900 	jmp 5b900 <write>                           
	...                                                                  
                                                                      
00066c98 <chdir>:                                                     
#include <rtems/seterr.h>                                             
                                                                      
int chdir(                                                            
  const char *pathname                                                
)                                                                     
{                                                                     
   66c98:	4e56 ffec      	linkw %fp,#-20                              
   66c9c:	2f0a           	movel %a2,%sp@-                             
   66c9e:	2f02           	movel %d2,%sp@-                             
   66ca0:	242e 0008      	movel %fp@(8),%d2                           
  rtems_filesystem_location_info_t  loc;                              
  int                               result;                           
                                                                      
  if ( !pathname )                                                    
   66ca4:	6700 0098      	beqw 66d3e <chdir+0xa6>                     
                                                                      
  /*                                                                  
   *  Get the node where we wish to go.                               
   */                                                                 
  result = rtems_filesystem_evaluate_path(                            
    pathname, strlen( pathname ), RTEMS_LIBIO_PERMS_SEARCH, &loc, true );
   66ca8:	2f02           	movel %d2,%sp@-                             
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  /*                                                                  
   *  Get the node where we wish to go.                               
   */                                                                 
  result = rtems_filesystem_evaluate_path(                            
   66caa:	45ee ffec      	lea %fp@(-20),%a2                           
    pathname, strlen( pathname ), RTEMS_LIBIO_PERMS_SEARCH, &loc, true );
   66cae:	4eb9 0008 6ee4 	jsr 86ee4 <strlen>                          
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  /*                                                                  
   *  Get the node where we wish to go.                               
   */                                                                 
  result = rtems_filesystem_evaluate_path(                            
   66cb4:	7201           	moveq #1,%d1                                
   66cb6:	2e81           	movel %d1,%sp@                              
   66cb8:	2f0a           	movel %a2,%sp@-                             
   66cba:	4878 0001      	pea 1 <ADD>                                 
   66cbe:	2f00           	movel %d0,%sp@-                             
   66cc0:	2f02           	movel %d2,%sp@-                             
   66cc2:	4eb9 0004 66cc 	jsr 466cc <rtems_filesystem_evaluate_path>  
    pathname, strlen( pathname ), RTEMS_LIBIO_PERMS_SEARCH, &loc, true );
  if ( result != 0 )                                                  
   66cc8:	4fef 0014      	lea %sp@(20),%sp                            
   66ccc:	4a80           	tstl %d0                                    
   66cce:	6660           	bnes 66d30 <chdir+0x98>                     
     return -1;                                                       
                                                                      
  /*                                                                  
   * Verify you can change directory into this node.                  
   */                                                                 
  if ( !loc.ops->node_type_h ) {                                      
   66cd0:	226e fff8      	moveal %fp@(-8),%a1                         
   66cd4:	2069 0010      	moveal %a1@(16),%a0                         
   66cd8:	4a88           	tstl %a0                                    
   66cda:	6700 00ac      	beqw 66d88 <chdir+0xf0>                     
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if (  (*loc.ops->node_type_h)( &loc ) != RTEMS_FILESYSTEM_DIRECTORY ) {
   66cde:	2f0a           	movel %a2,%sp@-                             
   66ce0:	4e90           	jsr %a0@                                    
   66ce2:	588f           	addql #4,%sp                                
   66ce4:	7201           	moveq #1,%d1                                
   66ce6:	b280           	cmpl %d0,%d1                                
   66ce8:	666e           	bnes 66d58 <chdir+0xc0>                     
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTDIR );                  
  }                                                                   
                                                                      
  rtems_filesystem_freenode( &rtems_filesystem_current );             
   66cea:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   
   66cf0:	2268 0010      	moveal %a0@(16),%a1                         
   66cf4:	4a89           	tstl %a1                                    
   66cf6:	6716           	beqs 66d0e <chdir+0x76>                     
   66cf8:	2269 001c      	moveal %a1@(28),%a1                         
   66cfc:	4a89           	tstl %a1                                    
   66cfe:	670e           	beqs 66d0e <chdir+0x76>                     
   66d00:	4868 0004      	pea %a0@(4)                                 
   66d04:	4e91           	jsr %a1@                                    
   66d06:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   
   66d0c:	588f           	addql #4,%sp                                
                                                                      
  rtems_filesystem_current = loc;                                     
   66d0e:	5888           	addql #4,%a0                                
   66d10:	4280           	clrl %d0                                    
   66d12:	20d2           	movel %a2@,%a0@+                            
   66d14:	20ee fff0      	movel %fp@(-16),%a0@+                       
   66d18:	20ee fff4      	movel %fp@(-12),%a0@+                       
   66d1c:	20ee fff8      	movel %fp@(-8),%a0@+                        
                                                                      
  return 0;                                                           
}                                                                     
   66d20:	242e ffe4      	movel %fp@(-28),%d2                         
    rtems_set_errno_and_return_minus_one( ENOTDIR );                  
  }                                                                   
                                                                      
  rtems_filesystem_freenode( &rtems_filesystem_current );             
                                                                      
  rtems_filesystem_current = loc;                                     
   66d24:	20ae fffc      	movel %fp@(-4),%a0@                         
                                                                      
  return 0;                                                           
}                                                                     
   66d28:	246e ffe8      	moveal %fp@(-24),%a2                        
   66d2c:	4e5e           	unlk %fp                                    
   66d2e:	4e75           	rts                                         
   66d30:	242e ffe4      	movel %fp@(-28),%d2                         
  /*                                                                  
   *  Get the node where we wish to go.                               
   */                                                                 
  result = rtems_filesystem_evaluate_path(                            
    pathname, strlen( pathname ), RTEMS_LIBIO_PERMS_SEARCH, &loc, true );
  if ( result != 0 )                                                  
   66d34:	70ff           	moveq #-1,%d0                               
  rtems_filesystem_freenode( &rtems_filesystem_current );             
                                                                      
  rtems_filesystem_current = loc;                                     
                                                                      
  return 0;                                                           
}                                                                     
   66d36:	246e ffe8      	moveal %fp@(-24),%a2                        
   66d3a:	4e5e           	unlk %fp                                    
   66d3c:	4e75           	rts                                         
{                                                                     
  rtems_filesystem_location_info_t  loc;                              
  int                               result;                           
                                                                      
  if ( !pathname )                                                    
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   66d3e:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         
   66d44:	740e           	moveq #14,%d2                               
   66d46:	2040           	moveal %d0,%a0                              
   66d48:	70ff           	moveq #-1,%d0                               
   66d4a:	2082           	movel %d2,%a0@                              
  rtems_filesystem_freenode( &rtems_filesystem_current );             
                                                                      
  rtems_filesystem_current = loc;                                     
                                                                      
  return 0;                                                           
}                                                                     
   66d4c:	242e ffe4      	movel %fp@(-28),%d2                         
   66d50:	246e ffe8      	moveal %fp@(-24),%a2                        
   66d54:	4e5e           	unlk %fp                                    
   66d56:	4e75           	rts                                         
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if (  (*loc.ops->node_type_h)( &loc ) != RTEMS_FILESYSTEM_DIRECTORY ) {
    rtems_filesystem_freenode( &loc );                                
   66d58:	206e fff8      	moveal %fp@(-8),%a0                         
   66d5c:	4a88           	tstl %a0                                    
   66d5e:	670e           	beqs 66d6e <chdir+0xd6>                     
   66d60:	2068 001c      	moveal %a0@(28),%a0                         
   66d64:	4a88           	tstl %a0                                    
   66d66:	6706           	beqs 66d6e <chdir+0xd6>                     
   66d68:	2f0a           	movel %a2,%sp@-                             
   66d6a:	4e90           	jsr %a0@                                    
   66d6c:	588f           	addql #4,%sp                                
    rtems_set_errno_and_return_minus_one( ENOTDIR );                  
   66d6e:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         
  rtems_filesystem_freenode( &rtems_filesystem_current );             
                                                                      
  rtems_filesystem_current = loc;                                     
                                                                      
  return 0;                                                           
}                                                                     
   66d74:	242e ffe4      	movel %fp@(-28),%d2                         
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if (  (*loc.ops->node_type_h)( &loc ) != RTEMS_FILESYSTEM_DIRECTORY ) {
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTDIR );                  
   66d78:	2040           	moveal %d0,%a0                              
   66d7a:	7214           	moveq #20,%d1                               
   66d7c:	70ff           	moveq #-1,%d0                               
  rtems_filesystem_freenode( &rtems_filesystem_current );             
                                                                      
  rtems_filesystem_current = loc;                                     
                                                                      
  return 0;                                                           
}                                                                     
   66d7e:	246e ffe8      	moveal %fp@(-24),%a2                        
   66d82:	4e5e           	unlk %fp                                    
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if (  (*loc.ops->node_type_h)( &loc ) != RTEMS_FILESYSTEM_DIRECTORY ) {
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTDIR );                  
   66d84:	2081           	movel %d1,%a0@                              
  rtems_filesystem_freenode( &rtems_filesystem_current );             
                                                                      
  rtems_filesystem_current = loc;                                     
                                                                      
  return 0;                                                           
}                                                                     
   66d86:	4e75           	rts                                         
                                                                      
  /*                                                                  
   * Verify you can change directory into this node.                  
   */                                                                 
  if ( !loc.ops->node_type_h ) {                                      
    rtems_filesystem_freenode( &loc );                                
   66d88:	2069 001c      	moveal %a1@(28),%a0                         <== NOT EXECUTED
   66d8c:	4a88           	tstl %a0                                    <== NOT EXECUTED
   66d8e:	6706           	beqs 66d96 <chdir+0xfe>                     <== NOT EXECUTED
   66d90:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   66d92:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   66d94:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   66d96:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
  rtems_filesystem_freenode( &rtems_filesystem_current );             
                                                                      
  rtems_filesystem_current = loc;                                     
                                                                      
  return 0;                                                           
}                                                                     
   66d9c:	242e ffe4      	movel %fp@(-28),%d2                         <== NOT EXECUTED
  /*                                                                  
   * Verify you can change directory into this node.                  
   */                                                                 
  if ( !loc.ops->node_type_h ) {                                      
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   66da0:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   66da2:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
  rtems_filesystem_freenode( &rtems_filesystem_current );             
                                                                      
  rtems_filesystem_current = loc;                                     
                                                                      
  return 0;                                                           
}                                                                     
   66da4:	246e ffe8      	moveal %fp@(-24),%a2                        <== NOT EXECUTED
   66da8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  /*                                                                  
   * Verify you can change directory into this node.                  
   */                                                                 
  if ( !loc.ops->node_type_h ) {                                      
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   66daa:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  rtems_filesystem_freenode( &rtems_filesystem_current );             
                                                                      
  rtems_filesystem_current = loc;                                     
                                                                      
  return 0;                                                           
}                                                                     
	...                                                                  
                                                                      
00046138 <chmod>:                                                     
                                                                      
int chmod(                                                            
  const char *path,                                                   
  mode_t      mode                                                    
)                                                                     
{                                                                     
   46138:	4e56 ffec      	linkw %fp,#-20                              
   4613c:	2f03           	movel %d3,%sp@-                             
   4613e:	262e 0008      	movel %fp@(8),%d3                           
   46142:	2f02           	movel %d2,%sp@-                             
  int                              status;                            
  rtems_filesystem_location_info_t loc;                               
  int                              result;                            
                                                                      
  status = rtems_filesystem_evaluate_path( path, strlen( path ), 0, &loc, true );
   46144:	240e           	movel %fp,%d2                               
   46146:	0682 ffff ffec 	addil #-20,%d2                              
   4614c:	2f03           	movel %d3,%sp@-                             
   4614e:	4eb9 0008 6ee4 	jsr 86ee4 <strlen>                          
   46154:	7201           	moveq #1,%d1                                
   46156:	2e81           	movel %d1,%sp@                              
   46158:	2f02           	movel %d2,%sp@-                             
   4615a:	42a7           	clrl %sp@-                                  
   4615c:	2f00           	movel %d0,%sp@-                             
   4615e:	2f03           	movel %d3,%sp@-                             
   46160:	4eb9 0004 66cc 	jsr 466cc <rtems_filesystem_evaluate_path>  
  if ( status != 0 )                                                  
   46166:	4fef 0014      	lea %sp@(20),%sp                            
   4616a:	4a80           	tstl %d0                                    
   4616c:	6640           	bnes 461ae <chmod+0x76>                     
    return -1;                                                        
                                                                      
  if ( !loc.handlers ){                                               
   4616e:	206e fff4      	moveal %fp@(-12),%a0                        
   46172:	4a88           	tstl %a0                                    
   46174:	677c           	beqs 461f2 <chmod+0xba>                     
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( EBADF );                    
  }                                                                   
                                                                      
  if ( !loc.handlers->fchmod_h ){                                     
   46176:	2068 001c      	moveal %a0@(28),%a0                         
   4617a:	4a88           	tstl %a0                                    
   4617c:	6740           	beqs 461be <chmod+0x86>                     
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*loc.handlers->fchmod_h)( &loc, mode );                   
   4617e:	2f2e 000c      	movel %fp@(12),%sp@-                        
   46182:	2f02           	movel %d2,%sp@-                             
   46184:	4e90           	jsr %a0@                                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   46186:	206e fff8      	moveal %fp@(-8),%a0                         
  if ( !loc.handlers->fchmod_h ){                                     
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*loc.handlers->fchmod_h)( &loc, mode );                   
   4618a:	2600           	movel %d0,%d3                               
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   4618c:	508f           	addql #8,%sp                                
   4618e:	4a88           	tstl %a0                                    
   46190:	670e           	beqs 461a0 <chmod+0x68>                     
   46192:	2068 001c      	moveal %a0@(28),%a0                         
   46196:	4a88           	tstl %a0                                    
   46198:	6706           	beqs 461a0 <chmod+0x68>                     
   4619a:	2f02           	movel %d2,%sp@-                             
   4619c:	4e90           	jsr %a0@                                    
   4619e:	588f           	addql #4,%sp                                
                                                                      
  return result;                                                      
}                                                                     
   461a0:	2003           	movel %d3,%d0                               
   461a2:	242e ffe4      	movel %fp@(-28),%d2                         
   461a6:	262e ffe8      	movel %fp@(-24),%d3                         
   461aa:	4e5e           	unlk %fp                                    
   461ac:	4e75           	rts                                         
  int                              status;                            
  rtems_filesystem_location_info_t loc;                               
  int                              result;                            
                                                                      
  status = rtems_filesystem_evaluate_path( path, strlen( path ), 0, &loc, true );
  if ( status != 0 )                                                  
   461ae:	76ff           	moveq #-1,%d3                               
  result = (*loc.handlers->fchmod_h)( &loc, mode );                   
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   461b0:	2003           	movel %d3,%d0                               
   461b2:	242e ffe4      	movel %fp@(-28),%d2                         
   461b6:	262e ffe8      	movel %fp@(-24),%d3                         
   461ba:	4e5e           	unlk %fp                                    
   461bc:	4e75           	rts                                         
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( EBADF );                    
  }                                                                   
                                                                      
  if ( !loc.handlers->fchmod_h ){                                     
    rtems_filesystem_freenode( &loc );                                
   461be:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
   461c2:	4a88           	tstl %a0                                    <== NOT EXECUTED
   461c4:	670e           	beqs 461d4 <chmod+0x9c>                     <== NOT EXECUTED
   461c6:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   461ca:	4a88           	tstl %a0                                    <== NOT EXECUTED
   461cc:	6706           	beqs 461d4 <chmod+0x9c>                     <== NOT EXECUTED
   461ce:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   461d0:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   461d2:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   461d4:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   461da:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
   461dc:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  result = (*loc.handlers->fchmod_h)( &loc, mode );                   
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   461de:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   461e0:	242e ffe4      	movel %fp@(-28),%d2                         <== NOT EXECUTED
   461e4:	262e ffe8      	movel %fp@(-24),%d3                         <== NOT EXECUTED
   461e8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( EBADF );                    
  }                                                                   
                                                                      
  if ( !loc.handlers->fchmod_h ){                                     
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   461ea:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  result = (*loc.handlers->fchmod_h)( &loc, mode );                   
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   461f0:	4e75           	rts                                         <== NOT EXECUTED
  status = rtems_filesystem_evaluate_path( path, strlen( path ), 0, &loc, true );
  if ( status != 0 )                                                  
    return -1;                                                        
                                                                      
  if ( !loc.handlers ){                                               
    rtems_filesystem_freenode( &loc );                                
   461f2:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
   461f6:	4a88           	tstl %a0                                    <== NOT EXECUTED
   461f8:	670e           	beqs 46208 <chmod+0xd0>                     <== NOT EXECUTED
   461fa:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   461fe:	4a88           	tstl %a0                                    <== NOT EXECUTED
   46200:	6706           	beqs 46208 <chmod+0xd0>                     <== NOT EXECUTED
   46202:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   46204:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   46206:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( EBADF );                    
   46208:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   4620e:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
   46210:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   46212:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   46214:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
  result = (*loc.handlers->fchmod_h)( &loc, mode );                   
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   46216:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   46218:	242e ffe4      	movel %fp@(-28),%d2                         <== NOT EXECUTED
   4621c:	262e ffe8      	movel %fp@(-24),%d3                         <== NOT EXECUTED
   46220:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00066db4 <chown>:                                                     
int chown(                                                            
  const char *path,                                                   
  uid_t       owner,                                                  
  gid_t       group                                                   
)                                                                     
{                                                                     
   66db4:	4e56 ffdc      	linkw %fp,#-36                              
   66db8:	48d7 003c      	moveml %d2-%d5,%sp@                         
   66dbc:	262e 0008      	movel %fp@(8),%d3                           
  rtems_filesystem_location_info_t   loc;                             
  int                                result;                          
                                                                      
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x00, &loc, true ) )
   66dc0:	240e           	movel %fp,%d2                               
   66dc2:	0682 ffff ffec 	addil #-20,%d2                              
   66dc8:	2f03           	movel %d3,%sp@-                             
int chown(                                                            
  const char *path,                                                   
  uid_t       owner,                                                  
  gid_t       group                                                   
)                                                                     
{                                                                     
   66dca:	382e 000e      	movew %fp@(14),%d4                          
  rtems_filesystem_location_info_t   loc;                             
  int                                result;                          
                                                                      
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x00, &loc, true ) )
   66dce:	4eb9 0008 6ee4 	jsr 86ee4 <strlen>                          
   66dd4:	7201           	moveq #1,%d1                                
   66dd6:	2e81           	movel %d1,%sp@                              
int chown(                                                            
  const char *path,                                                   
  uid_t       owner,                                                  
  gid_t       group                                                   
)                                                                     
{                                                                     
   66dd8:	3a2e 0012      	movew %fp@(18),%d5                          
  rtems_filesystem_location_info_t   loc;                             
  int                                result;                          
                                                                      
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x00, &loc, true ) )
   66ddc:	2f02           	movel %d2,%sp@-                             
   66dde:	42a7           	clrl %sp@-                                  
   66de0:	2f00           	movel %d0,%sp@-                             
   66de2:	2f03           	movel %d3,%sp@-                             
   66de4:	4eb9 0004 66cc 	jsr 466cc <rtems_filesystem_evaluate_path>  
   66dea:	4fef 0014      	lea %sp@(20),%sp                            
   66dee:	4a80           	tstl %d0                                    
   66df0:	6640           	bnes 66e32 <chown+0x7e>                     
    return -1;                                                        
                                                                      
  if ( !loc.ops->chown_h ) {                                          
   66df2:	226e fff8      	moveal %fp@(-8),%a1                         
   66df6:	2069 0018      	moveal %a1@(24),%a0                         
   66dfa:	4a88           	tstl %a0                                    
   66dfc:	6742           	beqs 66e40 <chown+0x8c>                     
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*loc.ops->chown_h)( &loc, owner, group );                 
   66dfe:	3f05           	movew %d5,%sp@-                             
   66e00:	4267           	clrw %sp@-                                  
   66e02:	3f04           	movew %d4,%sp@-                             
   66e04:	4267           	clrw %sp@-                                  
   66e06:	2f02           	movel %d2,%sp@-                             
   66e08:	4e90           	jsr %a0@                                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   66e0a:	206e fff8      	moveal %fp@(-8),%a0                         
  if ( !loc.ops->chown_h ) {                                          
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*loc.ops->chown_h)( &loc, owner, group );                 
   66e0e:	2600           	movel %d0,%d3                               
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   66e10:	4fef 000c      	lea %sp@(12),%sp                            
   66e14:	4a88           	tstl %a0                                    
   66e16:	670e           	beqs 66e26 <chown+0x72>                     
   66e18:	2068 001c      	moveal %a0@(28),%a0                         
   66e1c:	4a88           	tstl %a0                                    
   66e1e:	6706           	beqs 66e26 <chown+0x72>                     
   66e20:	2f02           	movel %d2,%sp@-                             
   66e22:	4e90           	jsr %a0@                                    
   66e24:	588f           	addql #4,%sp                                
                                                                      
  return result;                                                      
}                                                                     
   66e26:	2003           	movel %d3,%d0                               
   66e28:	4cee 003c ffdc 	moveml %fp@(-36),%d2-%d5                    
   66e2e:	4e5e           	unlk %fp                                    
   66e30:	4e75           	rts                                         
)                                                                     
{                                                                     
  rtems_filesystem_location_info_t   loc;                             
  int                                result;                          
                                                                      
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x00, &loc, true ) )
   66e32:	76ff           	moveq #-1,%d3                               
  result = (*loc.ops->chown_h)( &loc, owner, group );                 
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   66e34:	2003           	movel %d3,%d0                               
   66e36:	4cee 003c ffdc 	moveml %fp@(-36),%d2-%d5                    
   66e3c:	4e5e           	unlk %fp                                    
   66e3e:	4e75           	rts                                         
                                                                      
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x00, &loc, true ) )
    return -1;                                                        
                                                                      
  if ( !loc.ops->chown_h ) {                                          
    rtems_filesystem_freenode( &loc );                                
   66e40:	2069 001c      	moveal %a1@(28),%a0                         <== NOT EXECUTED
   66e44:	4a88           	tstl %a0                                    <== NOT EXECUTED
   66e46:	6706           	beqs 66e4e <chown+0x9a>                     <== NOT EXECUTED
   66e48:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   66e4a:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   66e4c:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   66e4e:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   66e54:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
   66e56:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  result = (*loc.ops->chown_h)( &loc, owner, group );                 
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   66e58:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   66e5a:	4cee 003c ffdc 	moveml %fp@(-36),%d2-%d5                    <== NOT EXECUTED
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x00, &loc, true ) )
    return -1;                                                        
                                                                      
  if ( !loc.ops->chown_h ) {                                          
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   66e60:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  result = (*loc.ops->chown_h)( &loc, owner, group );                 
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   66e66:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
00066e6c <chroot>:                                                    
#include <rtems/seterr.h>                                             
                                                                      
int chroot(                                                           
  const char *pathname                                                
)                                                                     
{                                                                     
   66e6c:	4e56 ffec      	linkw %fp,#-20                              
  int                               result;                           
  rtems_filesystem_location_info_t  loc;                              
                                                                      
  /* an automatic call to new private env the first time */           
  if (rtems_current_user_env == &rtems_global_user_env) {             
   66e70:	203c 000a 697c 	movel #682364,%d0                           
#include <rtems/seterr.h>                                             
                                                                      
int chroot(                                                           
  const char *pathname                                                
)                                                                     
{                                                                     
   66e76:	2f0b           	movel %a3,%sp@-                             
   66e78:	2f0a           	movel %a2,%sp@-                             
  int                               result;                           
  rtems_filesystem_location_info_t  loc;                              
                                                                      
  /* an automatic call to new private env the first time */           
  if (rtems_current_user_env == &rtems_global_user_env) {             
   66e7a:	b0b9 000a 1f7c 	cmpl a1f7c <rtems_current_user_env>,%d0     
   66e80:	6700 0086      	beqw 66f08 <chroot+0x9c>                    
   rtems_libio_set_private_env(); /* try to set a new private env*/   
   if (rtems_current_user_env == &rtems_global_user_env) /* not ok */ 
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = chdir(pathname);                                           
   66e84:	2f2e 0008      	movel %fp@(8),%sp@-                         
   66e88:	4eb9 0006 6c98 	jsr 66c98 <chdir>                           
  if (result) {                                                       
   66e8e:	588f           	addql #4,%sp                                
   66e90:	4a80           	tstl %d0                                    
   66e92:	6600 00a6      	bnew 66f3a <chroot+0xce>                    
    rtems_set_errno_and_return_minus_one( errno );                    
  }                                                                   
                                                                      
  /* clone the new root location */                                   
  if (rtems_filesystem_evaluate_path(".", 1, 0, &loc, 0)) {           
   66e96:	42a7           	clrl %sp@-                                  
   66e98:	45ee ffec      	lea %fp@(-20),%a2                           
   66e9c:	2f0a           	movel %a2,%sp@-                             
   66e9e:	42a7           	clrl %sp@-                                  
   66ea0:	4878 0001      	pea 1 <ADD>                                 
   66ea4:	4879 0009 acab 	pea 9acab <rtems_bdpart_shell_usage+0xf1f>  
   66eaa:	4eb9 0004 66cc 	jsr 466cc <rtems_filesystem_evaluate_path>  
   66eb0:	4fef 0014      	lea %sp@(20),%sp                            
   66eb4:	4a80           	tstl %d0                                    
   66eb6:	6600 0082      	bnew 66f3a <chroot+0xce>                    
    /* our cwd has changed, though - but there is no easy way of return :-( */
    rtems_set_errno_and_return_minus_one( errno );                    
  }                                                                   
  rtems_filesystem_freenode(&rtems_filesystem_root);                  
   66eba:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   
   66ec0:	2268 0024      	moveal %a0@(36),%a1                         
   66ec4:	4a89           	tstl %a1                                    
   66ec6:	6716           	beqs 66ede <chroot+0x72>                    
   66ec8:	2269 001c      	moveal %a1@(28),%a1                         
   66ecc:	4a89           	tstl %a1                                    
   66ece:	670e           	beqs 66ede <chroot+0x72>                    
   66ed0:	4868 0018      	pea %a0@(24)                                
   66ed4:	4e91           	jsr %a1@                                    
   66ed6:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   
   66edc:	588f           	addql #4,%sp                                
  rtems_filesystem_root = loc;                                        
   66ede:	2152 0018      	movel %a2@,%a0@(24)                         
   66ee2:	4280           	clrl %d0                                    
   66ee4:	216e fff0 001c 	movel %fp@(-16),%a0@(28)                    
   66eea:	216e fff4 0020 	movel %fp@(-12),%a0@(32)                    
   66ef0:	216e fff8 0024 	movel %fp@(-8),%a0@(36)                     
                                                                      
  return 0;                                                           
}                                                                     
   66ef6:	246e ffe4      	moveal %fp@(-28),%a2                        
   66efa:	266e ffe8      	moveal %fp@(-24),%a3                        
  if (rtems_filesystem_evaluate_path(".", 1, 0, &loc, 0)) {           
    /* our cwd has changed, though - but there is no easy way of return :-( */
    rtems_set_errno_and_return_minus_one( errno );                    
  }                                                                   
  rtems_filesystem_freenode(&rtems_filesystem_root);                  
  rtems_filesystem_root = loc;                                        
   66efe:	216e fffc 0028 	movel %fp@(-4),%a0@(40)                     
                                                                      
  return 0;                                                           
}                                                                     
   66f04:	4e5e           	unlk %fp                                    
   66f06:	4e75           	rts                                         
  int                               result;                           
  rtems_filesystem_location_info_t  loc;                              
                                                                      
  /* an automatic call to new private env the first time */           
  if (rtems_current_user_env == &rtems_global_user_env) {             
   rtems_libio_set_private_env(); /* try to set a new private env*/   
   66f08:	4eb9 0006 83a4 	jsr 683a4 <rtems_libio_set_private_env>     
   if (rtems_current_user_env == &rtems_global_user_env) /* not ok */ 
   66f0e:	203c 000a 697c 	movel #682364,%d0                           
   66f14:	b0b9 000a 1f7c 	cmpl a1f7c <rtems_current_user_env>,%d0     
   66f1a:	6600 ff68      	bnew 66e84 <chroot+0x18>                    
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   66f1e:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
  }                                                                   
  rtems_filesystem_freenode(&rtems_filesystem_root);                  
  rtems_filesystem_root = loc;                                        
                                                                      
  return 0;                                                           
}                                                                     
   66f24:	246e ffe4      	moveal %fp@(-28),%a2                        <== NOT EXECUTED
                                                                      
  /* an automatic call to new private env the first time */           
  if (rtems_current_user_env == &rtems_global_user_env) {             
   rtems_libio_set_private_env(); /* try to set a new private env*/   
   if (rtems_current_user_env == &rtems_global_user_env) /* not ok */ 
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   66f28:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   66f2a:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
  }                                                                   
  rtems_filesystem_freenode(&rtems_filesystem_root);                  
  rtems_filesystem_root = loc;                                        
                                                                      
  return 0;                                                           
}                                                                     
   66f2c:	266e ffe8      	moveal %fp@(-24),%a3                        <== NOT EXECUTED
   66f30:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
  /* an automatic call to new private env the first time */           
  if (rtems_current_user_env == &rtems_global_user_env) {             
   rtems_libio_set_private_env(); /* try to set a new private env*/   
   if (rtems_current_user_env == &rtems_global_user_env) /* not ok */ 
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   66f32:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  }                                                                   
  rtems_filesystem_freenode(&rtems_filesystem_root);                  
  rtems_filesystem_root = loc;                                        
                                                                      
  return 0;                                                           
}                                                                     
   66f38:	4e75           	rts                                         <== NOT EXECUTED
  }                                                                   
                                                                      
  /* clone the new root location */                                   
  if (rtems_filesystem_evaluate_path(".", 1, 0, &loc, 0)) {           
    /* our cwd has changed, though - but there is no easy way of return :-( */
    rtems_set_errno_and_return_minus_one( errno );                    
   66f3a:	45f9 0008 0e3c 	lea 80e3c <__errno>,%a2                     <== NOT EXECUTED
   66f40:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   66f42:	2640           	moveal %d0,%a3                              <== NOT EXECUTED
   66f44:	4e92           	jsr %a2@                                    <== NOT EXECUTED
  }                                                                   
  rtems_filesystem_freenode(&rtems_filesystem_root);                  
  rtems_filesystem_root = loc;                                        
                                                                      
  return 0;                                                           
}                                                                     
   66f46:	246e ffe4      	moveal %fp@(-28),%a2                        <== NOT EXECUTED
  }                                                                   
                                                                      
  /* clone the new root location */                                   
  if (rtems_filesystem_evaluate_path(".", 1, 0, &loc, 0)) {           
    /* our cwd has changed, though - but there is no easy way of return :-( */
    rtems_set_errno_and_return_minus_one( errno );                    
   66f4a:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   66f4c:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   66f4e:	2690           	movel %a0@,%a3@                             <== NOT EXECUTED
  }                                                                   
  rtems_filesystem_freenode(&rtems_filesystem_root);                  
  rtems_filesystem_root = loc;                                        
                                                                      
  return 0;                                                           
}                                                                     
   66f50:	266e ffe8      	moveal %fp@(-24),%a3                        <== NOT EXECUTED
   66f54:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004a654 <close>:                                                     
#include <rtems/libio_.h>                                             
                                                                      
int close(                                                            
  int  fd                                                             
)                                                                     
{                                                                     
   4a654:	4e56 0000      	linkw %fp,#0                                
   4a658:	202e 0008      	movel %fp@(8),%d0                           
   4a65c:	2f0a           	movel %a2,%sp@-                             
   4a65e:	2f02           	movel %d2,%sp@-                             
  rtems_libio_t      *iop;                                            
  rtems_status_code   rc;                                             
                                                                      
  rtems_libio_check_fd(fd);                                           
   4a660:	b0b9 0005 d714 	cmpl 5d714 <rtems_libio_number_iops>,%d0    
   4a666:	645e           	bccs 4a6c6 <close+0x72>                     
  iop = rtems_libio_iop(fd);                                          
   4a668:	2479 0005 ee18 	moveal 5ee18 <rtems_libio_iops>,%a2         
   4a66e:	ed88           	lsll #6,%d0                                 
   4a670:	d5c0           	addal %d0,%a2                               
  rtems_libio_check_is_open(iop);                                     
   4a672:	202a 0014      	movel %a2@(20),%d0                          
   4a676:	0280 0000 0100 	andil #256,%d0                              
   4a67c:	6748           	beqs 4a6c6 <close+0x72>                     
                                                                      
  rc = RTEMS_SUCCESSFUL;                                              
  if ( iop->handlers->close_h )                                       
   4a67e:	206a 003c      	moveal %a2@(60),%a0                         
   4a682:	2068 0004      	moveal %a0@(4),%a0                          
   4a686:	4a88           	tstl %a0                                    
   4a688:	6738           	beqs 4a6c2 <close+0x6e>                     
    rc = (*iop->handlers->close_h)( iop );                            
   4a68a:	2f0a           	movel %a2,%sp@-                             
   4a68c:	4e90           	jsr %a0@                                    
   4a68e:	588f           	addql #4,%sp                                
   4a690:	2400           	movel %d0,%d2                               
                                                                      
  rtems_filesystem_freenode( &iop->pathinfo );                        
   4a692:	206a 0024      	moveal %a2@(36),%a0                         
   4a696:	4a88           	tstl %a0                                    
   4a698:	6710           	beqs 4a6aa <close+0x56>                     
   4a69a:	2068 001c      	moveal %a0@(28),%a0                         
   4a69e:	4a88           	tstl %a0                                    
   4a6a0:	6708           	beqs 4a6aa <close+0x56>                     
   4a6a2:	486a 0018      	pea %a2@(24)                                
   4a6a6:	4e90           	jsr %a0@                                    
   4a6a8:	588f           	addql #4,%sp                                
  rtems_libio_free( iop );                                            
   4a6aa:	2f0a           	movel %a2,%sp@-                             
   4a6ac:	4eb9 0004 aa6a 	jsr 4aa6a <rtems_libio_free>                
                                                                      
  return rc;                                                          
}                                                                     
   4a6b2:	246e fffc      	moveal %fp@(-4),%a2                         
   4a6b6:	2002           	movel %d2,%d0                               
    rc = (*iop->handlers->close_h)( iop );                            
                                                                      
  rtems_filesystem_freenode( &iop->pathinfo );                        
  rtems_libio_free( iop );                                            
                                                                      
  return rc;                                                          
   4a6b8:	588f           	addql #4,%sp                                
}                                                                     
   4a6ba:	242e fff8      	movel %fp@(-8),%d2                          
   4a6be:	4e5e           	unlk %fp                                    
   4a6c0:	4e75           	rts                                         
  rtems_libio_check_fd(fd);                                           
  iop = rtems_libio_iop(fd);                                          
  rtems_libio_check_is_open(iop);                                     
                                                                      
  rc = RTEMS_SUCCESSFUL;                                              
  if ( iop->handlers->close_h )                                       
   4a6c2:	4282           	clrl %d2                                    <== NOT EXECUTED
   4a6c4:	60cc           	bras 4a692 <close+0x3e>                     <== NOT EXECUTED
  rtems_libio_t      *iop;                                            
  rtems_status_code   rc;                                             
                                                                      
  rtems_libio_check_fd(fd);                                           
  iop = rtems_libio_iop(fd);                                          
  rtems_libio_check_is_open(iop);                                     
   4a6c6:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   4a6cc:	74ff           	moveq #-1,%d2                               
   4a6ce:	2040           	moveal %d0,%a0                              
   4a6d0:	7009           	moveq #9,%d0                                
   4a6d2:	2080           	movel %d0,%a0@                              
                                                                      
  rtems_filesystem_freenode( &iop->pathinfo );                        
  rtems_libio_free( iop );                                            
                                                                      
  return rc;                                                          
}                                                                     
   4a6d4:	2002           	movel %d2,%d0                               
   4a6d6:	242e fff8      	movel %fp@(-8),%d2                          
   4a6da:	246e fffc      	moveal %fp@(-4),%a2                         
   4a6de:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000497ec <devFS_close>:                                               
#include "devfs.h"                                                    
                                                                      
int devFS_close(                                                      
  rtems_libio_t *iop                                                  
)                                                                     
{                                                                     
   497ec:	4e56 fff4      	linkw %fp,#-12                              
   497f0:	206e 0008      	moveal %fp@(8),%a0                          
                                                                      
  args.iop   = iop;                                                   
  args.flags = 0;                                                     
  args.mode  = 0;                                                     
                                                                      
  status = rtems_io_close(                                            
   497f4:	486e fff4      	pea %fp@(-12)                               
{                                                                     
  rtems_libio_open_close_args_t  args;                                
  rtems_status_code              status;                              
  rtems_device_name_t           *np;                                  
                                                                      
  np         = (rtems_device_name_t *)iop->file_info;                 
   497f8:	2268 0038      	moveal %a0@(56),%a1                         
                                                                      
  args.iop   = iop;                                                   
  args.flags = 0;                                                     
   497fc:	42ae fff8      	clrl %fp@(-8)                               
  args.mode  = 0;                                                     
   49800:	42ae fffc      	clrl %fp@(-4)                               
                                                                      
  status = rtems_io_close(                                            
   49804:	2f29 000c      	movel %a1@(12),%sp@-                        
   49808:	2f29 0008      	movel %a1@(8),%sp@-                         
  rtems_status_code              status;                              
  rtems_device_name_t           *np;                                  
                                                                      
  np         = (rtems_device_name_t *)iop->file_info;                 
                                                                      
  args.iop   = iop;                                                   
   4980c:	2d48 fff4      	movel %a0,%fp@(-12)                         
  args.flags = 0;                                                     
  args.mode  = 0;                                                     
                                                                      
  status = rtems_io_close(                                            
   49810:	4eb9 0004 ac7c 	jsr 4ac7c <rtems_io_close>                  
    np->major,                                                        
    np->minor,                                                        
    (void *) &args                                                    
  );                                                                  
  if ( status ) {                                                     
   49816:	4fef 000c      	lea %sp@(12),%sp                            
   4981a:	4a80           	tstl %d0                                    
   4981c:	6604           	bnes 49822 <devFS_close+0x36>               
    return rtems_deviceio_errno(status);                              
  }                                                                   
  return 0;                                                           
}                                                                     
   4981e:	4e5e           	unlk %fp                                    
   49820:	4e75           	rts                                         
    np->major,                                                        
    np->minor,                                                        
    (void *) &args                                                    
  );                                                                  
  if ( status ) {                                                     
    return rtems_deviceio_errno(status);                              
   49822:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   49824:	4eb9 0004 98fc 	jsr 498fc <rtems_deviceio_errno>            <== NOT EXECUTED
   4982a:	588f           	addql #4,%sp                                <== NOT EXECUTED
  }                                                                   
  return 0;                                                           
}                                                                     
   4982c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00049842 <devFS_evaluate_path>:                                       
  const char                        *pathname,                        
  int                                pathnamelen,                     
  int                                flags,                           
  rtems_filesystem_location_info_t  *pathloc                          
)                                                                     
{                                                                     
   49842:	4e56 ffdc      	linkw %fp,#-36                              
   49846:	48d7 3c7c      	moveml %d2-%d6/%a2-%a5,%sp@                 
   4984a:	286e 0014      	moveal %fp@(20),%a4                         
   4984e:	2c2e 0008      	movel %fp@(8),%d6                           
   49852:	262e 000c      	movel %fp@(12),%d3                          
     assert( 0 );                                                     
     rtems_set_errno_and_return_minus_one( EIO );                     
  }                                                                   
                                                                      
  /* get the device name table */                                     
  device_name_table = (rtems_device_name_t *)pathloc->node_access;    
   49856:	2814           	movel %a4@,%d4                              
  if (!device_name_table)                                             
   49858:	6700 008a      	beqw 498e4 <devFS_evaluate_path+0xa2>       
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  for (i = 0; i < rtems_device_table_size; i++) {                     
   4985c:	2a39 0005 acf8 	movel 5acf8 <rtems_device_table_size>,%d5   
   49862:	673c           	beqs 498a0 <devFS_evaluate_path+0x5e>       
  }                                                                   
                                                                      
  /* get the device name table */                                     
  device_name_table = (rtems_device_name_t *)pathloc->node_access;    
  if (!device_name_table)                                             
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   49864:	4280           	clrl %d0                                    
   49866:	4282           	clrl %d2                                    
                                                                      
  for (i = 0; i < rtems_device_table_size; i++) {                     
    if (!device_name_table[i].device_name)                            
      continue;                                                       
                                                                      
    if (strncmp(pathname, device_name_table[i].device_name, pathnamelen) != 0)
   49868:	4bf9 0004 d354 	lea 4d354 <strncmp>,%a5                     
  device_name_table = (rtems_device_name_t *)pathloc->node_access;    
  if (!device_name_table)                                             
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  for (i = 0; i < rtems_device_table_size; i++) {                     
    if (!device_name_table[i].device_name)                            
   4986e:	2200           	movel %d0,%d1                               
  /* get the device name table */                                     
  device_name_table = (rtems_device_name_t *)pathloc->node_access;    
  if (!device_name_table)                                             
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  for (i = 0; i < rtems_device_table_size; i++) {                     
   49870:	5282           	addql #1,%d2                                
    if (!device_name_table[i].device_name)                            
   49872:	e989           	lsll #4,%d1                                 
   49874:	2041           	moveal %d1,%a0                              
   49876:	47f0 0c00      	lea %a0@(00000000,%d0:l:4),%a3              
   4987a:	47f3 4800      	lea %a3@(00000000,%d4:l),%a3                
   4987e:	2453           	moveal %a3@,%a2                             
   49880:	4a8a           	tstl %a2                                    
   49882:	6716           	beqs 4989a <devFS_evaluate_path+0x58>       
      continue;                                                       
                                                                      
    if (strncmp(pathname, device_name_table[i].device_name, pathnamelen) != 0)
   49884:	2f03           	movel %d3,%sp@-                             
   49886:	2f0a           	movel %a2,%sp@-                             
   49888:	2f06           	movel %d6,%sp@-                             
   4988a:	4e95           	jsr %a5@                                    
   4988c:	4fef 000c      	lea %sp@(12),%sp                            
   49890:	4a80           	tstl %d0                                    
   49892:	6606           	bnes 4989a <devFS_evaluate_path+0x58>       
      continue;                                                       
                                                                      
    if (device_name_table[i].device_name[pathnamelen] != '\0')        
   49894:	4a32 3800      	tstb %a2@(00000000,%d3:l)                   
   49898:	671e           	beqs 498b8 <devFS_evaluate_path+0x76>       
  /* get the device name table */                                     
  device_name_table = (rtems_device_name_t *)pathloc->node_access;    
  if (!device_name_table)                                             
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  for (i = 0; i < rtems_device_table_size; i++) {                     
   4989a:	2002           	movel %d2,%d0                               
   4989c:	b485           	cmpl %d5,%d2                                
   4989e:	65ce           	bcss 4986e <devFS_evaluate_path+0x2c>       
    pathloc->mt_entry = rtems_filesystem_root.mt_entry;               
    return 0;                                                         
  }                                                                   
                                                                      
  /* no such file or directory */                                     
  rtems_set_errno_and_return_minus_one( ENOENT );                     
   498a0:	4eb9 0004 c04c 	jsr 4c04c <__errno>                         
   498a6:	7202           	moveq #2,%d1                                
   498a8:	2040           	moveal %d0,%a0                              
   498aa:	70ff           	moveq #-1,%d0                               
}                                                                     
   498ac:	4cee 3c7c ffdc 	moveml %fp@(-36),%d2-%d6/%a2-%a5            
    pathloc->mt_entry = rtems_filesystem_root.mt_entry;               
    return 0;                                                         
  }                                                                   
                                                                      
  /* no such file or directory */                                     
  rtems_set_errno_and_return_minus_one( ENOENT );                     
   498b2:	2081           	movel %d1,%a0@                              
}                                                                     
   498b4:	4e5e           	unlk %fp                                    
   498b6:	4e75           	rts                                         
                                                                      
    /* find the device, set proper values */                          
    pathloc->node_access = (void *)&device_name_table[i];             
    pathloc->handlers = &devFS_file_handlers;                         
    pathloc->ops = &devFS_ops;                                        
    pathloc->mt_entry = rtems_filesystem_root.mt_entry;               
   498b8:	2079 0005 ae70 	moveal 5ae70 <rtems_current_user_env>,%a0   
   498be:	2968 0028 0010 	movel %a0@(40),%a4@(16)                     
    if (device_name_table[i].device_name[pathnamelen] != '\0')        
      continue;                                                       
                                                                      
    /* find the device, set proper values */                          
    pathloc->node_access = (void *)&device_name_table[i];             
    pathloc->handlers = &devFS_file_handlers;                         
   498c4:	223c 0005 ae24 	movel #372260,%d1                           
    pathloc->ops = &devFS_ops;                                        
   498ca:	41f9 0005 addc 	lea 5addc <devFS_ops>,%a0                   
    if (device_name_table[i].device_name[pathnamelen] != '\0')        
      continue;                                                       
                                                                      
    /* find the device, set proper values */                          
    pathloc->node_access = (void *)&device_name_table[i];             
    pathloc->handlers = &devFS_file_handlers;                         
   498d0:	2941 0008      	movel %d1,%a4@(8)                           
    pathloc->ops = &devFS_ops;                                        
   498d4:	2948 000c      	movel %a0,%a4@(12)                          
                                                                      
    if (device_name_table[i].device_name[pathnamelen] != '\0')        
      continue;                                                       
                                                                      
    /* find the device, set proper values */                          
    pathloc->node_access = (void *)&device_name_table[i];             
   498d8:	288b           	movel %a3,%a4@                              
    return 0;                                                         
  }                                                                   
                                                                      
  /* no such file or directory */                                     
  rtems_set_errno_and_return_minus_one( ENOENT );                     
}                                                                     
   498da:	4cee 3c7c ffdc 	moveml %fp@(-36),%d2-%d6/%a2-%a5            
   498e0:	4e5e           	unlk %fp                                    
   498e2:	4e75           	rts                                         
  }                                                                   
                                                                      
  /* get the device name table */                                     
  device_name_table = (rtems_device_name_t *)pathloc->node_access;    
  if (!device_name_table)                                             
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   498e4:	4eb9 0004 c04c 	jsr 4c04c <__errno>                         <== NOT EXECUTED
   498ea:	740e           	moveq #14,%d2                               <== NOT EXECUTED
   498ec:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   498ee:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   498f0:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
    return 0;                                                         
  }                                                                   
                                                                      
  /* no such file or directory */                                     
  rtems_set_errno_and_return_minus_one( ENOENT );                     
}                                                                     
   498f2:	4cee 3c7c ffdc 	moveml %fp@(-36),%d2-%d6/%a2-%a5            <== NOT EXECUTED
   498f8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00042028 <devFS_initialize>:                                          
                                                                      
                                                                      
int devFS_initialize(                                                 
  rtems_filesystem_mount_table_entry_t *temp_mt_entry                 
)                                                                     
{                                                                     
   42028:	4e56 0000      	linkw %fp,#0                                
  rtems_device_name_t  *device_name_table;                            
                                                                      
  /* allocate device only filesystem name table */                    
  device_name_table = (rtems_device_name_t *)_Workspace_Allocate(     
   4202c:	2039 0005 acf8 	movel 5acf8 <rtems_device_table_size>,%d0   
   42032:	2200           	movel %d0,%d1                               
                                                                      
                                                                      
int devFS_initialize(                                                 
  rtems_filesystem_mount_table_entry_t *temp_mt_entry                 
)                                                                     
{                                                                     
   42034:	2f0a           	movel %a2,%sp@-                             
   42036:	246e 0008      	moveal %fp@(8),%a2                          
  rtems_device_name_t  *device_name_table;                            
                                                                      
  /* allocate device only filesystem name table */                    
  device_name_table = (rtems_device_name_t *)_Workspace_Allocate(     
   4203a:	e989           	lsll #4,%d1                                 
                                                                      
                                                                      
int devFS_initialize(                                                 
  rtems_filesystem_mount_table_entry_t *temp_mt_entry                 
)                                                                     
{                                                                     
   4203c:	2f02           	movel %d2,%sp@-                             
  rtems_device_name_t  *device_name_table;                            
                                                                      
  /* allocate device only filesystem name table */                    
  device_name_table = (rtems_device_name_t *)_Workspace_Allocate(     
   4203e:	2041           	moveal %d1,%a0                              
   42040:	4870 0c00      	pea %a0@(00000000,%d0:l:4)                  
   42044:	4eb9 0004 95a8 	jsr 495a8 <_Workspace_Allocate>             
        sizeof( rtems_device_name_t ) * ( rtems_device_table_size )   
        );                                                            
                                                                      
  /* no memory for device filesystem */                               
  if (!device_name_table)                                             
   4204a:	588f           	addql #4,%sp                                
)                                                                     
{                                                                     
  rtems_device_name_t  *device_name_table;                            
                                                                      
  /* allocate device only filesystem name table */                    
  device_name_table = (rtems_device_name_t *)_Workspace_Allocate(     
   4204c:	2400           	movel %d0,%d2                               
        sizeof( rtems_device_name_t ) * ( rtems_device_table_size )   
        );                                                            
                                                                      
  /* no memory for device filesystem */                               
  if (!device_name_table)                                             
   4204e:	6744           	beqs 42094 <devFS_initialize+0x6c>          
      rtems_set_errno_and_return_minus_one( ENOMEM );                 
                                                                      
  memset(                                                             
   42050:	2039 0005 acf8 	movel 5acf8 <rtems_device_table_size>,%d0   
   42056:	2200           	movel %d0,%d1                               
   42058:	e989           	lsll #4,%d1                                 
   4205a:	2041           	moveal %d1,%a0                              
   4205c:	4870 0c00      	pea %a0@(00000000,%d0:l:4)                  
   42060:	42a7           	clrl %sp@-                                  
   42062:	2f02           	movel %d2,%sp@-                             
   42064:	4eb9 0004 c89c 	jsr 4c89c <memset>                          
  temp_mt_entry->mt_fs_root.ops          = &devFS_ops;                
                                                                      
  /* Set the node_access to device name table */                      
  temp_mt_entry->mt_fs_root.node_access = (void *)device_name_table;  
                                                                      
  return 0;                                                           
   4206a:	4fef 000c      	lea %sp@(12),%sp                            
    device_name_table, 0,                                             
    sizeof( rtems_device_name_t ) * ( rtems_device_table_size )       
    );                                                                
                                                                      
  /* set file handlers */                                             
  temp_mt_entry->mt_fs_root.handlers     = &devFS_file_handlers;      
   4206e:	203c 0005 ae24 	movel #372260,%d0                           
  temp_mt_entry->mt_fs_root.ops          = &devFS_ops;                
   42074:	41f9 0005 addc 	lea 5addc <devFS_ops>,%a0                   
    device_name_table, 0,                                             
    sizeof( rtems_device_name_t ) * ( rtems_device_table_size )       
    );                                                                
                                                                      
  /* set file handlers */                                             
  temp_mt_entry->mt_fs_root.handlers     = &devFS_file_handlers;      
   4207a:	2540 0024      	movel %d0,%a2@(36)                          
  temp_mt_entry->mt_fs_root.ops          = &devFS_ops;                
                                                                      
  /* Set the node_access to device name table */                      
  temp_mt_entry->mt_fs_root.node_access = (void *)device_name_table;  
   4207e:	4280           	clrl %d0                                    
   42080:	2542 001c      	movel %d2,%a2@(28)                          
                                                                      
  return 0;                                                           
}                                                                     
   42084:	242e fff8      	movel %fp@(-8),%d2                          
    sizeof( rtems_device_name_t ) * ( rtems_device_table_size )       
    );                                                                
                                                                      
  /* set file handlers */                                             
  temp_mt_entry->mt_fs_root.handlers     = &devFS_file_handlers;      
  temp_mt_entry->mt_fs_root.ops          = &devFS_ops;                
   42088:	2548 0028      	movel %a0,%a2@(40)                          
                                                                      
  /* Set the node_access to device name table */                      
  temp_mt_entry->mt_fs_root.node_access = (void *)device_name_table;  
                                                                      
  return 0;                                                           
}                                                                     
   4208c:	246e fffc      	moveal %fp@(-4),%a2                         
   42090:	4e5e           	unlk %fp                                    
   42092:	4e75           	rts                                         
        sizeof( rtems_device_name_t ) * ( rtems_device_table_size )   
        );                                                            
                                                                      
  /* no memory for device filesystem */                               
  if (!device_name_table)                                             
      rtems_set_errno_and_return_minus_one( ENOMEM );                 
   42094:	4eb9 0004 c04c 	jsr 4c04c <__errno>                         <== NOT EXECUTED
                                                                      
  /* Set the node_access to device name table */                      
  temp_mt_entry->mt_fs_root.node_access = (void *)device_name_table;  
                                                                      
  return 0;                                                           
}                                                                     
   4209a:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
        sizeof( rtems_device_name_t ) * ( rtems_device_table_size )   
        );                                                            
                                                                      
  /* no memory for device filesystem */                               
  if (!device_name_table)                                             
      rtems_set_errno_and_return_minus_one( ENOMEM );                 
   4209e:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   420a0:	720c           	moveq #12,%d1                               <== NOT EXECUTED
   420a2:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  /* Set the node_access to device name table */                      
  temp_mt_entry->mt_fs_root.node_access = (void *)device_name_table;  
                                                                      
  return 0;                                                           
}                                                                     
   420a4:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   420a8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
        sizeof( rtems_device_name_t ) * ( rtems_device_table_size )   
        );                                                            
                                                                      
  /* no memory for device filesystem */                               
  if (!device_name_table)                                             
      rtems_set_errno_and_return_minus_one( ENOMEM );                 
   420aa:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
                                                                      
  /* Set the node_access to device name table */                      
  temp_mt_entry->mt_fs_root.node_access = (void *)device_name_table;  
                                                                      
  return 0;                                                           
}                                                                     
	...                                                                  
                                                                      
00042224 <devFS_ioctl>:                                               
int devFS_ioctl(                                                      
  rtems_libio_t *iop,                                                 
  uint32_t       command,                                             
  void          *buffer                                               
)                                                                     
{                                                                     
   42224:	4e56 fff0      	linkw %fp,#-16                              
   42228:	206e 0008      	moveal %fp@(8),%a0                          
                                                                      
  args.iop     = iop;                                                 
  args.command = command;                                             
  args.buffer  = buffer;                                              
                                                                      
  status = rtems_io_control(                                          
   4222c:	486e fff0      	pea %fp@(-16)                               
{                                                                     
  rtems_libio_ioctl_args_t  args;                                     
  rtems_status_code         status;                                   
  rtems_device_name_t      *np;                                       
                                                                      
  np           = (rtems_device_name_t *)iop->file_info;               
   42230:	2268 0038      	moveal %a0@(56),%a1                         
                                                                      
  args.iop     = iop;                                                 
  args.command = command;                                             
   42234:	2d6e 000c fff4 	movel %fp@(12),%fp@(-12)                    
  args.buffer  = buffer;                                              
                                                                      
  status = rtems_io_control(                                          
   4223a:	2f29 000c      	movel %a1@(12),%sp@-                        
   4223e:	2f29 0008      	movel %a1@(8),%sp@-                         
                                                                      
  np           = (rtems_device_name_t *)iop->file_info;               
                                                                      
  args.iop     = iop;                                                 
  args.command = command;                                             
  args.buffer  = buffer;                                              
   42242:	2d6e 0010 fff8 	movel %fp@(16),%fp@(-8)                     
  rtems_status_code         status;                                   
  rtems_device_name_t      *np;                                       
                                                                      
  np           = (rtems_device_name_t *)iop->file_info;               
                                                                      
  args.iop     = iop;                                                 
   42248:	2d48 fff0      	movel %a0,%fp@(-16)                         
  args.command = command;                                             
  args.buffer  = buffer;                                              
                                                                      
  status = rtems_io_control(                                          
   4224c:	4eb9 0004 6730 	jsr 46730 <rtems_io_control>                
    np->major,                                                        
    np->minor,                                                        
    (void *) &args                                                    
  );                                                                  
                                                                      
  if ( status )                                                       
   42252:	4fef 000c      	lea %sp@(12),%sp                            
   42256:	4a80           	tstl %d0                                    
   42258:	6608           	bnes 42262 <devFS_ioctl+0x3e>               
    return rtems_deviceio_errno(status);                              
                                                                      
  return args.ioctl_return;                                           
   4225a:	202e fffc      	movel %fp@(-4),%d0                          
}                                                                     
   4225e:	4e5e           	unlk %fp                                    
   42260:	4e75           	rts                                         
    np->minor,                                                        
    (void *) &args                                                    
  );                                                                  
                                                                      
  if ( status )                                                       
    return rtems_deviceio_errno(status);                              
   42262:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   42264:	4eb9 0004 98fc 	jsr 498fc <rtems_deviceio_errno>            <== NOT EXECUTED
   4226a:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  return args.ioctl_return;                                           
}                                                                     
   4226c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000420b0 <devFS_mknod>:                                               
   * condition and do not create the '/dev' and the 'path'            
   * actually passed in is 'dev', not '/dev'. Just return 0 to        
   * indicate we are OK.                                              
   */                                                                 
                                                                      
  if ((path[0] == 'd') && (path[1] == 'e') &&                         
   420b0:	7264           	moveq #100,%d1                              
  const char                        *path,                            
  mode_t                             mode,                            
  dev_t                              dev,                             
  rtems_filesystem_location_info_t  *pathloc                          
)                                                                     
{                                                                     
   420b2:	4e56 ffdc      	linkw %fp,#-36                              
   420b6:	48d7 1cfc      	moveml %d2-%d7/%a2-%a4,%sp@                 
   420ba:	266e 0008      	moveal %fp@(8),%a3                          
   * condition and do not create the '/dev' and the 'path'            
   * actually passed in is 'dev', not '/dev'. Just return 0 to        
   * indicate we are OK.                                              
   */                                                                 
                                                                      
  if ((path[0] == 'd') && (path[1] == 'e') &&                         
   420be:	1013           	moveb %a3@,%d0                              
  const char                        *path,                            
  mode_t                             mode,                            
  dev_t                              dev,                             
  rtems_filesystem_location_info_t  *pathloc                          
)                                                                     
{                                                                     
   420c0:	2a2e 000c      	movel %fp@(12),%d5                          
   * condition and do not create the '/dev' and the 'path'            
   * actually passed in is 'dev', not '/dev'. Just return 0 to        
   * indicate we are OK.                                              
   */                                                                 
                                                                      
  if ((path[0] == 'd') && (path[1] == 'e') &&                         
   420c4:	49c0           	extbl %d0                                   
  const char                        *path,                            
  mode_t                             mode,                            
  dev_t                              dev,                             
  rtems_filesystem_location_info_t  *pathloc                          
)                                                                     
{                                                                     
   420c6:	2e2e 0010      	movel %fp@(16),%d7                          
   420ca:	2c2e 0014      	movel %fp@(20),%d6                          
   * condition and do not create the '/dev' and the 'path'            
   * actually passed in is 'dev', not '/dev'. Just return 0 to        
   * indicate we are OK.                                              
   */                                                                 
                                                                      
  if ((path[0] == 'd') && (path[1] == 'e') &&                         
   420ce:	b280           	cmpl %d0,%d1                                
   420d0:	6700 00d0      	beqw 421a2 <devFS_mknod+0xf2>               
      (path[2] == 'v') && (path[3] == '\0'))                          
      return 0;                                                       
                                                                      
  /* must be a character device or a block device */                  
  if (!S_ISBLK(mode) && !S_ISCHR(mode))                               
   420d4:	2005           	movel %d5,%d0                               
   420d6:	0280 0000 f000 	andil #61440,%d0                            
   420dc:	0c80 0000 6000 	cmpil #24576,%d0                            
   420e2:	670a           	beqs 420ee <devFS_mknod+0x3e>               
   420e4:	0c80 0000 2000 	cmpil #8192,%d0                             
   420ea:	6600 00e2      	bnew 421ce <devFS_mknod+0x11e>              
    rtems_set_errno_and_return_minus_one( EINVAL );                   
  else                                                                
    rtems_filesystem_split_dev_t(dev, major, minor);                  
                                                                      
  /* Find an empty slot in device name table */                       
  device_name_table = (rtems_device_name_t *)pathloc->node_access;    
   420ee:	206e 0018      	moveal %fp@(24),%a0                         
   420f2:	2450           	moveal %a0@,%a2                             
  if (!device_name_table)                                             
   420f4:	4a8a           	tstl %a2                                    
   420f6:	6700 0106      	beqw 421fe <devFS_mknod+0x14e>              
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  for (slot = -1, i = 0; i < rtems_device_table_size; i++){           
   420fa:	2639 0005 acf8 	movel 5acf8 <rtems_device_table_size>,%d3   
   42100:	6700 00e4      	beqw 421e6 <devFS_mknod+0x136>              
    rtems_filesystem_split_dev_t(dev, major, minor);                  
                                                                      
  /* Find an empty slot in device name table */                       
  device_name_table = (rtems_device_name_t *)pathloc->node_access;    
  if (!device_name_table)                                             
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   42104:	4280           	clrl %d0                                    
   42106:	78ff           	moveq #-1,%d4                               
   42108:	4282           	clrl %d2                                    
                                                                      
  for (slot = -1, i = 0; i < rtems_device_table_size; i++){           
      if (device_name_table[i].device_name == NULL)                   
          slot = i;                                                   
      else                                                            
          if (strcmp(path, device_name_table[i].device_name) == 0)    
   4210a:	49f9 0004 ce78 	lea 4ce78 <strcmp>,%a4                      
  device_name_table = (rtems_device_name_t *)pathloc->node_access;    
  if (!device_name_table)                                             
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  for (slot = -1, i = 0; i < rtems_device_table_size; i++){           
      if (device_name_table[i].device_name == NULL)                   
   42110:	2200           	movel %d0,%d1                               
   42112:	e989           	lsll #4,%d1                                 
   42114:	2241           	moveal %d1,%a1                              
   42116:	41f1 0c00      	lea %a1@(00000000,%d0:l:4),%a0              
   4211a:	2030 a800      	movel %a0@(00000000,%a2:l),%d0              
   4211e:	675e           	beqs 4217e <devFS_mknod+0xce>               
          slot = i;                                                   
      else                                                            
          if (strcmp(path, device_name_table[i].device_name) == 0)    
   42120:	2f00           	movel %d0,%sp@-                             
   42122:	2f0b           	movel %a3,%sp@-                             
   42124:	4e94           	jsr %a4@                                    
   42126:	508f           	addql #8,%sp                                
   42128:	4a80           	tstl %d0                                    
   4212a:	675e           	beqs 4218a <devFS_mknod+0xda>               
  /* Find an empty slot in device name table */                       
  device_name_table = (rtems_device_name_t *)pathloc->node_access;    
  if (!device_name_table)                                             
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  for (slot = -1, i = 0; i < rtems_device_table_size; i++){           
   4212c:	5282           	addql #1,%d2                                
   4212e:	2002           	movel %d2,%d0                               
   42130:	b682           	cmpl %d2,%d3                                
   42132:	62dc           	bhis 42110 <devFS_mknod+0x60>               
      else                                                            
          if (strcmp(path, device_name_table[i].device_name) == 0)    
              rtems_set_errno_and_return_minus_one( EEXIST );         
  }                                                                   
                                                                      
  if (slot == -1)                                                     
   42134:	70ff           	moveq #-1,%d0                               
   42136:	b084           	cmpl %d4,%d0                                
   42138:	6700 00ac      	beqw 421e6 <devFS_mknod+0x136>              
      rtems_set_errno_and_return_minus_one( ENOMEM );                 
                                                                      
  _ISR_Disable(level);                                                
   4213c:	203c 0000 0700 	movel #1792,%d0                             
   42142:	40c2           	movew %sr,%d2                               
   42144:	8082           	orl %d2,%d0                                 
   42146:	46c0           	movew %d0,%sr                               
  device_name_table[slot].device_name  = (char *)path;                
   42148:	2004           	movel %d4,%d0                               
   4214a:	e988           	lsll #4,%d0                                 
   4214c:	2240           	moveal %d0,%a1                              
   4214e:	41f1 4c00      	lea %a1@(00000000,%d4:l:4),%a0              
   42152:	d5c8           	addal %a0,%a2                               
   42154:	248b           	movel %a3,%a2@                              
  device_name_table[slot].device_name_length = strlen(path);          
   42156:	2f0b           	movel %a3,%sp@-                             
   42158:	4eb9 0004 d33c 	jsr 4d33c <strlen>                          
   4215e:	588f           	addql #4,%sp                                
  device_name_table[slot].major = major;                              
  device_name_table[slot].minor = minor;                              
  device_name_table[slot].mode  = mode;                               
   42160:	2545 0010      	movel %d5,%a2@(16)                          
  if (slot == -1)                                                     
      rtems_set_errno_and_return_minus_one( ENOMEM );                 
                                                                      
  _ISR_Disable(level);                                                
  device_name_table[slot].device_name  = (char *)path;                
  device_name_table[slot].device_name_length = strlen(path);          
   42164:	2540 0004      	movel %d0,%a2@(4)                           
  device_name_table[slot].major = major;                              
   42168:	2547 0008      	movel %d7,%a2@(8)                           
  device_name_table[slot].minor = minor;                              
   4216c:	2546 000c      	movel %d6,%a2@(12)                          
  device_name_table[slot].mode  = mode;                               
  _ISR_Enable(level);                                                 
   42170:	46c2           	movew %d2,%sr                               
   42172:	4280           	clrl %d0                                    
                                                                      
  return 0;                                                           
}                                                                     
   42174:	4cee 1cfc ffdc 	moveml %fp@(-36),%d2-%d7/%a2-%a4            
   4217a:	4e5e           	unlk %fp                                    
   4217c:	4e75           	rts                                         
  for (slot = -1, i = 0; i < rtems_device_table_size; i++){           
      if (device_name_table[i].device_name == NULL)                   
          slot = i;                                                   
      else                                                            
          if (strcmp(path, device_name_table[i].device_name) == 0)    
              rtems_set_errno_and_return_minus_one( EEXIST );         
   4217e:	2802           	movel %d2,%d4                               
  /* Find an empty slot in device name table */                       
  device_name_table = (rtems_device_name_t *)pathloc->node_access;    
  if (!device_name_table)                                             
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  for (slot = -1, i = 0; i < rtems_device_table_size; i++){           
   42180:	5282           	addql #1,%d2                                
   42182:	2002           	movel %d2,%d0                               
   42184:	b682           	cmpl %d2,%d3                                
   42186:	6288           	bhis 42110 <devFS_mknod+0x60>               
   42188:	60aa           	bras 42134 <devFS_mknod+0x84>               
      if (device_name_table[i].device_name == NULL)                   
          slot = i;                                                   
      else                                                            
          if (strcmp(path, device_name_table[i].device_name) == 0)    
              rtems_set_errno_and_return_minus_one( EEXIST );         
   4218a:	4eb9 0004 c04c 	jsr 4c04c <__errno>                         <== NOT EXECUTED
   42190:	7411           	moveq #17,%d2                               <== NOT EXECUTED
   42192:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   42194:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   42196:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
  device_name_table[slot].minor = minor;                              
  device_name_table[slot].mode  = mode;                               
  _ISR_Enable(level);                                                 
                                                                      
  return 0;                                                           
}                                                                     
   42198:	4cee 1cfc ffdc 	moveml %fp@(-36),%d2-%d7/%a2-%a4            <== NOT EXECUTED
   4219e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   421a0:	4e75           	rts                                         <== NOT EXECUTED
   * condition and do not create the '/dev' and the 'path'            
   * actually passed in is 'dev', not '/dev'. Just return 0 to        
   * indicate we are OK.                                              
   */                                                                 
                                                                      
  if ((path[0] == 'd') && (path[1] == 'e') &&                         
   421a2:	123c 0065      	moveb #101,%d1                              
   421a6:	102b 0001      	moveb %a3@(1),%d0                           
   421aa:	49c0           	extbl %d0                                   
   421ac:	b280           	cmpl %d0,%d1                                
   421ae:	6600 ff24      	bnew 420d4 <devFS_mknod+0x24>               
      (path[2] == 'v') && (path[3] == '\0'))                          
   421b2:	123c 0076      	moveb #118,%d1                              
   421b6:	102b 0002      	moveb %a3@(2),%d0                           
   421ba:	49c0           	extbl %d0                                   
   421bc:	b280           	cmpl %d0,%d1                                
   421be:	6600 ff14      	bnew 420d4 <devFS_mknod+0x24>               
   421c2:	4a2b 0003      	tstb %a3@(3)                                
   421c6:	6600 ff0c      	bnew 420d4 <devFS_mknod+0x24>               
  device_name_table[slot].device_name  = (char *)path;                
  device_name_table[slot].device_name_length = strlen(path);          
  device_name_table[slot].major = major;                              
  device_name_table[slot].minor = minor;                              
  device_name_table[slot].mode  = mode;                               
  _ISR_Enable(level);                                                 
   421ca:	4280           	clrl %d0                                    
   421cc:	60a6           	bras 42174 <devFS_mknod+0xc4>               
      (path[2] == 'v') && (path[3] == '\0'))                          
      return 0;                                                       
                                                                      
  /* must be a character device or a block device */                  
  if (!S_ISBLK(mode) && !S_ISCHR(mode))                               
    rtems_set_errno_and_return_minus_one( EINVAL );                   
   421ce:	4eb9 0004 c04c 	jsr 4c04c <__errno>                         <== NOT EXECUTED
   421d4:	7816           	moveq #22,%d4                               <== NOT EXECUTED
   421d6:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   421d8:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   421da:	2084           	movel %d4,%a0@                              <== NOT EXECUTED
  device_name_table[slot].minor = minor;                              
  device_name_table[slot].mode  = mode;                               
  _ISR_Enable(level);                                                 
                                                                      
  return 0;                                                           
}                                                                     
   421dc:	4cee 1cfc ffdc 	moveml %fp@(-36),%d2-%d7/%a2-%a4            <== NOT EXECUTED
   421e2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   421e4:	4e75           	rts                                         <== NOT EXECUTED
          if (strcmp(path, device_name_table[i].device_name) == 0)    
              rtems_set_errno_and_return_minus_one( EEXIST );         
  }                                                                   
                                                                      
  if (slot == -1)                                                     
      rtems_set_errno_and_return_minus_one( ENOMEM );                 
   421e6:	4eb9 0004 c04c 	jsr 4c04c <__errno>                         <== NOT EXECUTED
   421ec:	720c           	moveq #12,%d1                               <== NOT EXECUTED
   421ee:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   421f0:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
  device_name_table[slot].minor = minor;                              
  device_name_table[slot].mode  = mode;                               
  _ISR_Enable(level);                                                 
                                                                      
  return 0;                                                           
}                                                                     
   421f2:	4cee 1cfc ffdc 	moveml %fp@(-36),%d2-%d7/%a2-%a4            <== NOT EXECUTED
          if (strcmp(path, device_name_table[i].device_name) == 0)    
              rtems_set_errno_and_return_minus_one( EEXIST );         
  }                                                                   
                                                                      
  if (slot == -1)                                                     
      rtems_set_errno_and_return_minus_one( ENOMEM );                 
   421f8:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
  device_name_table[slot].minor = minor;                              
  device_name_table[slot].mode  = mode;                               
  _ISR_Enable(level);                                                 
                                                                      
  return 0;                                                           
}                                                                     
   421fa:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   421fc:	4e75           	rts                                         <== NOT EXECUTED
    rtems_filesystem_split_dev_t(dev, major, minor);                  
                                                                      
  /* Find an empty slot in device name table */                       
  device_name_table = (rtems_device_name_t *)pathloc->node_access;    
  if (!device_name_table)                                             
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   421fe:	4eb9 0004 c04c 	jsr 4c04c <__errno>                         <== NOT EXECUTED
   42204:	760e           	moveq #14,%d3                               <== NOT EXECUTED
   42206:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   42208:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   4220a:	2083           	movel %d3,%a0@                              <== NOT EXECUTED
  device_name_table[slot].minor = minor;                              
  device_name_table[slot].mode  = mode;                               
  _ISR_Enable(level);                                                 
                                                                      
  return 0;                                                           
}                                                                     
   4220c:	4cee 1cfc ffdc 	moveml %fp@(-36),%d2-%d7/%a2-%a4            <== NOT EXECUTED
   42212:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
00042270 <devFS_open>:                                                
  rtems_libio_t *iop,                                                 
  const char    *pathname,                                            
  uint32_t       flag,                                                
  uint32_t       mode                                                 
)                                                                     
{                                                                     
   42270:	4e56 fff4      	linkw %fp,#-12                              
   42274:	206e 0008      	moveal %fp@(8),%a0                          
                                                                      
  args.iop   = iop;                                                   
  args.flags = iop->flags;                                            
  args.mode  = mode;                                                  
                                                                      
  status = rtems_io_open(                                             
   42278:	486e fff4      	pea %fp@(-12)                               
  rtems_device_name_t           *np;                                  
                                                                      
  np         = (rtems_device_name_t *)iop->file_info;                 
                                                                      
  args.iop   = iop;                                                   
  args.flags = iop->flags;                                            
   4227c:	2d68 0014 fff8 	movel %a0@(20),%fp@(-8)                     
{                                                                     
  rtems_libio_open_close_args_t  args;                                
  rtems_status_code              status;                              
  rtems_device_name_t           *np;                                  
                                                                      
  np         = (rtems_device_name_t *)iop->file_info;                 
   42282:	2268 0038      	moveal %a0@(56),%a1                         
                                                                      
  args.iop   = iop;                                                   
  args.flags = iop->flags;                                            
  args.mode  = mode;                                                  
   42286:	2d6e 0014 fffc 	movel %fp@(20),%fp@(-4)                     
                                                                      
  status = rtems_io_open(                                             
   4228c:	2f29 000c      	movel %a1@(12),%sp@-                        
   42290:	2f29 0008      	movel %a1@(8),%sp@-                         
  rtems_status_code              status;                              
  rtems_device_name_t           *np;                                  
                                                                      
  np         = (rtems_device_name_t *)iop->file_info;                 
                                                                      
  args.iop   = iop;                                                   
   42294:	2d48 fff4      	movel %a0,%fp@(-12)                         
  args.flags = iop->flags;                                            
  args.mode  = mode;                                                  
                                                                      
  status = rtems_io_open(                                             
   42298:	4eb9 0004 687c 	jsr 4687c <rtems_io_open>                   
    np->major,                                                        
    np->minor,                                                        
    (void *) &args                                                    
  );                                                                  
  if ( status )                                                       
   4229e:	4fef 000c      	lea %sp@(12),%sp                            
   422a2:	4a80           	tstl %d0                                    
   422a4:	6604           	bnes 422aa <devFS_open+0x3a>                
    return rtems_deviceio_errno(status);                              
                                                                      
  return 0;                                                           
}                                                                     
   422a6:	4e5e           	unlk %fp                                    
   422a8:	4e75           	rts                                         
    np->major,                                                        
    np->minor,                                                        
    (void *) &args                                                    
  );                                                                  
  if ( status )                                                       
    return rtems_deviceio_errno(status);                              
   422aa:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   422ac:	4eb9 0004 98fc 	jsr 498fc <rtems_deviceio_errno>            <== NOT EXECUTED
   422b2:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  return 0;                                                           
}                                                                     
   422b4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000422b8 <devFS_read>:                                                
ssize_t devFS_read(                                                   
  rtems_libio_t *iop,                                                 
  void          *buffer,                                              
  size_t         count                                                
)                                                                     
{                                                                     
   422b8:	4e56 ffe4      	linkw %fp,#-28                              <== NOT EXECUTED
   422bc:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
  args.buffer      = buffer;                                          
  args.count       = count;                                           
  args.flags       = iop->flags;                                      
  args.bytes_moved = 0;                                               
                                                                      
  status = rtems_io_read(                                             
   422c0:	486e ffe4      	pea %fp@(-28)                               <== NOT EXECUTED
                                                                      
  args.iop         = iop;                                             
  args.offset      = iop->offset;                                     
  args.buffer      = buffer;                                          
  args.count       = count;                                           
  args.flags       = iop->flags;                                      
   422c4:	2d68 0014 fff8 	movel %a0@(20),%fp@(-8)                     <== NOT EXECUTED
{                                                                     
  rtems_libio_rw_args_t   args;                                       
  rtems_status_code       status;                                     
  rtems_device_name_t     *np;                                        
                                                                      
  np               = (rtems_device_name_t *)iop->file_info;           
   422ca:	2268 0038      	moveal %a0@(56),%a1                         <== NOT EXECUTED
                                                                      
  args.iop         = iop;                                             
  args.offset      = iop->offset;                                     
  args.buffer      = buffer;                                          
  args.count       = count;                                           
   422ce:	2d6e 0010 fff4 	movel %fp@(16),%fp@(-12)                    <== NOT EXECUTED
  args.flags       = iop->flags;                                      
  args.bytes_moved = 0;                                               
   422d4:	42ae fffc      	clrl %fp@(-4)                               <== NOT EXECUTED
                                                                      
  status = rtems_io_read(                                             
   422d8:	2f29 000c      	movel %a1@(12),%sp@-                        <== NOT EXECUTED
   422dc:	2f29 0008      	movel %a1@(8),%sp@-                         <== NOT EXECUTED
                                                                      
  np               = (rtems_device_name_t *)iop->file_info;           
                                                                      
  args.iop         = iop;                                             
  args.offset      = iop->offset;                                     
  args.buffer      = buffer;                                          
   422e0:	2d6e 000c fff0 	movel %fp@(12),%fp@(-16)                    <== NOT EXECUTED
  rtems_device_name_t     *np;                                        
                                                                      
  np               = (rtems_device_name_t *)iop->file_info;           
                                                                      
  args.iop         = iop;                                             
  args.offset      = iop->offset;                                     
   422e6:	2028 000c      	movel %a0@(12),%d0                          <== NOT EXECUTED
   422ea:	2228 0010      	movel %a0@(16),%d1                          <== NOT EXECUTED
  rtems_status_code       status;                                     
  rtems_device_name_t     *np;                                        
                                                                      
  np               = (rtems_device_name_t *)iop->file_info;           
                                                                      
  args.iop         = iop;                                             
   422ee:	2d48 ffe4      	movel %a0,%fp@(-28)                         <== NOT EXECUTED
  args.offset      = iop->offset;                                     
   422f2:	2d40 ffe8      	movel %d0,%fp@(-24)                         <== NOT EXECUTED
   422f6:	2d41 ffec      	movel %d1,%fp@(-20)                         <== NOT EXECUTED
  args.buffer      = buffer;                                          
  args.count       = count;                                           
  args.flags       = iop->flags;                                      
  args.bytes_moved = 0;                                               
                                                                      
  status = rtems_io_read(                                             
   422fa:	4eb9 0004 68d8 	jsr 468d8 <rtems_io_read>                   <== NOT EXECUTED
    np->major,                                                        
    np->minor,                                                        
    (void *) &args                                                    
  );                                                                  
                                                                      
  if ( status )                                                       
   42300:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   42304:	4a80           	tstl %d0                                    <== NOT EXECUTED
   42306:	6608           	bnes 42310 <devFS_read+0x58>                <== NOT EXECUTED
    return rtems_deviceio_errno(status);                              
                                                                      
  return (ssize_t) args.bytes_moved;                                  
   42308:	202e fffc      	movel %fp@(-4),%d0                          <== NOT EXECUTED
}                                                                     
   4230c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4230e:	4e75           	rts                                         <== NOT EXECUTED
    np->minor,                                                        
    (void *) &args                                                    
  );                                                                  
                                                                      
  if ( status )                                                       
    return rtems_deviceio_errno(status);                              
   42310:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   42312:	4eb9 0004 98fc 	jsr 498fc <rtems_deviceio_errno>            <== NOT EXECUTED
   42318:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  return (ssize_t) args.bytes_moved;                                  
}                                                                     
   4231a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
00042320 <devFS_stat>:                                                
                                                                      
int devFS_stat(                                                       
  rtems_filesystem_location_info_t *loc,                              
  struct stat                      *buf                               
)                                                                     
{                                                                     
   42320:	4e56 0000      	linkw %fp,#0                                
   42324:	206e 0008      	moveal %fp@(8),%a0                          
   42328:	226e 000c      	moveal %fp@(12),%a1                         
  rtems_device_name_t *the_dev;                                       
                                                                      
  the_dev = (rtems_device_name_t *)loc->node_access;                  
   4232c:	2050           	moveal %a0@,%a0                             
  if (!the_dev)                                                       
   4232e:	4a88           	tstl %a0                                    
   42330:	671a           	beqs 4234c <devFS_stat+0x2c>                
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  buf->st_rdev  = rtems_filesystem_make_dev_t( the_dev->major, the_dev->minor );
   42332:	2228 000c      	movel %a0@(12),%d1                          
                                                                      
  buf->st_mode = the_dev->mode;                                       
   42336:	4280           	clrl %d0                                    
                                                                      
  return 0;                                                           
}                                                                     
   42338:	4e5e           	unlk %fp                                    
                                                                      
  the_dev = (rtems_device_name_t *)loc->node_access;                  
  if (!the_dev)                                                       
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  buf->st_rdev  = rtems_filesystem_make_dev_t( the_dev->major, the_dev->minor );
   4233a:	2368 0008 0016 	movel %a0@(8),%a1@(22)                      
                                                                      
  buf->st_mode = the_dev->mode;                                       
   42340:	2368 0010 000c 	movel %a0@(16),%a1@(12)                     
                                                                      
  the_dev = (rtems_device_name_t *)loc->node_access;                  
  if (!the_dev)                                                       
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  buf->st_rdev  = rtems_filesystem_make_dev_t( the_dev->major, the_dev->minor );
   42346:	2341 001a      	movel %d1,%a1@(26)                          
                                                                      
  buf->st_mode = the_dev->mode;                                       
                                                                      
  return 0;                                                           
}                                                                     
   4234a:	4e75           	rts                                         
{                                                                     
  rtems_device_name_t *the_dev;                                       
                                                                      
  the_dev = (rtems_device_name_t *)loc->node_access;                  
  if (!the_dev)                                                       
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   4234c:	4eb9 0004 c04c 	jsr 4c04c <__errno>                         <== NOT EXECUTED
   42352:	720e           	moveq #14,%d1                               <== NOT EXECUTED
   42354:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   42356:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
  buf->st_rdev  = rtems_filesystem_make_dev_t( the_dev->major, the_dev->minor );
                                                                      
  buf->st_mode = the_dev->mode;                                       
                                                                      
  return 0;                                                           
}                                                                     
   42358:	4e5e           	unlk %fp                                    <== NOT EXECUTED
{                                                                     
  rtems_device_name_t *the_dev;                                       
                                                                      
  the_dev = (rtems_device_name_t *)loc->node_access;                  
  if (!the_dev)                                                       
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   4235a:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
  buf->st_rdev  = rtems_filesystem_make_dev_t( the_dev->major, the_dev->minor );
                                                                      
  buf->st_mode = the_dev->mode;                                       
                                                                      
  return 0;                                                           
}                                                                     
	...                                                                  
                                                                      
00042360 <devFS_write>:                                               
ssize_t devFS_write(                                                  
  rtems_libio_t *iop,                                                 
  const void    *buffer,                                              
  size_t         count                                                
)                                                                     
{                                                                     
   42360:	4e56 ffe4      	linkw %fp,#-28                              
   42364:	206e 0008      	moveal %fp@(8),%a0                          
  args.buffer      = (void *) buffer;                                 
  args.count       = count;                                           
  args.flags       = iop->flags;                                      
  args.bytes_moved = 0;                                               
                                                                      
  status = rtems_io_write(                                            
   42368:	486e ffe4      	pea %fp@(-28)                               
                                                                      
  args.iop         = iop;                                             
  args.offset      = iop->offset;                                     
  args.buffer      = (void *) buffer;                                 
  args.count       = count;                                           
  args.flags       = iop->flags;                                      
   4236c:	2d68 0014 fff8 	movel %a0@(20),%fp@(-8)                     
{                                                                     
  rtems_libio_rw_args_t   args;                                       
  rtems_status_code       status;                                     
  rtems_device_name_t    *np;                                         
                                                                      
  np           = (rtems_device_name_t *)iop->file_info;               
   42372:	2268 0038      	moveal %a0@(56),%a1                         
                                                                      
  args.iop         = iop;                                             
  args.offset      = iop->offset;                                     
  args.buffer      = (void *) buffer;                                 
  args.count       = count;                                           
   42376:	2d6e 0010 fff4 	movel %fp@(16),%fp@(-12)                    
  args.flags       = iop->flags;                                      
  args.bytes_moved = 0;                                               
   4237c:	42ae fffc      	clrl %fp@(-4)                               
                                                                      
  status = rtems_io_write(                                            
   42380:	2f29 000c      	movel %a1@(12),%sp@-                        
   42384:	2f29 0008      	movel %a1@(8),%sp@-                         
                                                                      
  np           = (rtems_device_name_t *)iop->file_info;               
                                                                      
  args.iop         = iop;                                             
  args.offset      = iop->offset;                                     
  args.buffer      = (void *) buffer;                                 
   42388:	2d6e 000c fff0 	movel %fp@(12),%fp@(-16)                    
  rtems_device_name_t    *np;                                         
                                                                      
  np           = (rtems_device_name_t *)iop->file_info;               
                                                                      
  args.iop         = iop;                                             
  args.offset      = iop->offset;                                     
   4238e:	2028 000c      	movel %a0@(12),%d0                          
   42392:	2228 0010      	movel %a0@(16),%d1                          
  rtems_status_code       status;                                     
  rtems_device_name_t    *np;                                         
                                                                      
  np           = (rtems_device_name_t *)iop->file_info;               
                                                                      
  args.iop         = iop;                                             
   42396:	2d48 ffe4      	movel %a0,%fp@(-28)                         
  args.offset      = iop->offset;                                     
   4239a:	2d40 ffe8      	movel %d0,%fp@(-24)                         
   4239e:	2d41 ffec      	movel %d1,%fp@(-20)                         
  args.buffer      = (void *) buffer;                                 
  args.count       = count;                                           
  args.flags       = iop->flags;                                      
  args.bytes_moved = 0;                                               
                                                                      
  status = rtems_io_write(                                            
   423a2:	4eb9 0004 6934 	jsr 46934 <rtems_io_write>                  
    np->major,                                                        
    np->minor,                                                        
    (void *) &args                                                    
  );                                                                  
                                                                      
  if ( status )                                                       
   423a8:	4fef 000c      	lea %sp@(12),%sp                            
   423ac:	4a80           	tstl %d0                                    
   423ae:	6608           	bnes 423b8 <devFS_write+0x58>               
    return rtems_deviceio_errno(status);                              
                                                                      
  return (ssize_t) args.bytes_moved;                                  
   423b0:	202e fffc      	movel %fp@(-4),%d0                          
}                                                                     
   423b4:	4e5e           	unlk %fp                                    
   423b6:	4e75           	rts                                         
    np->minor,                                                        
    (void *) &args                                                    
  );                                                                  
                                                                      
  if ( status )                                                       
    return rtems_deviceio_errno(status);                              
   423b8:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   423ba:	4eb9 0004 98fc 	jsr 498fc <rtems_deviceio_errno>            <== NOT EXECUTED
   423c0:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  return (ssize_t) args.bytes_moved;                                  
}                                                                     
   423c2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
0004c676 <device_close>:                                              
 */                                                                   
                                                                      
int device_close(                                                     
  rtems_libio_t *iop                                                  
)                                                                     
{                                                                     
   4c676:	4e56 fff4      	linkw %fp,#-12                              
   4c67a:	226e 0008      	moveal %fp@(8),%a1                          
                                                                      
  args.iop   = iop;                                                   
  args.flags = 0;                                                     
  args.mode  = 0;                                                     
                                                                      
  status = rtems_io_close(                                            
   4c67e:	486e fff4      	pea %fp@(-12)                               
{                                                                     
  rtems_libio_open_close_args_t  args;                                
  rtems_status_code              status;                              
  IMFS_jnode_t                  *the_jnode;                           
                                                                      
  the_jnode = iop->file_info;                                         
   4c682:	2069 0038      	moveal %a1@(56),%a0                         
                                                                      
  args.iop   = iop;                                                   
   4c686:	2d49 fff4      	movel %a1,%fp@(-12)                         
  args.flags = 0;                                                     
   4c68a:	42ae fff8      	clrl %fp@(-8)                               
  args.mode  = 0;                                                     
   4c68e:	42ae fffc      	clrl %fp@(-4)                               
                                                                      
  status = rtems_io_close(                                            
   4c692:	2f28 0050      	movel %a0@(80),%sp@-                        
   4c696:	2f28 004c      	movel %a0@(76),%sp@-                        
   4c69a:	4eb9 0004 dce0 	jsr 4dce0 <rtems_io_close>                  
    the_jnode->info.device.major,                                     
    the_jnode->info.device.minor,                                     
    (void *) &args                                                    
  );                                                                  
  if ( status ) {                                                     
   4c6a0:	4fef 000c      	lea %sp@(12),%sp                            
   4c6a4:	4a80           	tstl %d0                                    
   4c6a6:	6604           	bnes 4c6ac <device_close+0x36>              
    return rtems_deviceio_errno(status);                              
  }                                                                   
  return 0;                                                           
}                                                                     
   4c6a8:	4e5e           	unlk %fp                                    
   4c6aa:	4e75           	rts                                         
    the_jnode->info.device.major,                                     
    the_jnode->info.device.minor,                                     
    (void *) &args                                                    
  );                                                                  
  if ( status ) {                                                     
    return rtems_deviceio_errno(status);                              
   4c6ac:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4c6ae:	4eb9 0004 e348 	jsr 4e348 <rtems_deviceio_errno>            <== NOT EXECUTED
   4c6b4:	588f           	addql #4,%sp                                <== NOT EXECUTED
  }                                                                   
  return 0;                                                           
}                                                                     
   4c6b6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004c55e <device_ioctl>:                                              
int device_ioctl(                                                     
  rtems_libio_t *iop,                                                 
  uint32_t       command,                                             
  void          *buffer                                               
)                                                                     
{                                                                     
   4c55e:	4e56 fff0      	linkw %fp,#-16                              
   4c562:	226e 0008      	moveal %fp@(8),%a1                          
  args.command = command;                                             
  args.buffer  = buffer;                                              
                                                                      
  the_jnode = iop->file_info;                                         
                                                                      
  status = rtems_io_control(                                          
   4c566:	486e fff0      	pea %fp@(-16)                               
  rtems_status_code         status;                                   
  IMFS_jnode_t             *the_jnode;                                
                                                                      
  args.iop     = iop;                                                 
  args.command = command;                                             
  args.buffer  = buffer;                                              
   4c56a:	2d6e 0010 fff8 	movel %fp@(16),%fp@(-8)                     
  rtems_libio_ioctl_args_t  args;                                     
  rtems_status_code         status;                                   
  IMFS_jnode_t             *the_jnode;                                
                                                                      
  args.iop     = iop;                                                 
  args.command = command;                                             
   4c570:	2d6e 000c fff4 	movel %fp@(12),%fp@(-12)                    
  args.buffer  = buffer;                                              
                                                                      
  the_jnode = iop->file_info;                                         
   4c576:	2069 0038      	moveal %a1@(56),%a0                         
{                                                                     
  rtems_libio_ioctl_args_t  args;                                     
  rtems_status_code         status;                                   
  IMFS_jnode_t             *the_jnode;                                
                                                                      
  args.iop     = iop;                                                 
   4c57a:	2d49 fff0      	movel %a1,%fp@(-16)                         
  args.command = command;                                             
  args.buffer  = buffer;                                              
                                                                      
  the_jnode = iop->file_info;                                         
                                                                      
  status = rtems_io_control(                                          
   4c57e:	2f28 0050      	movel %a0@(80),%sp@-                        
   4c582:	2f28 004c      	movel %a0@(76),%sp@-                        
   4c586:	4eb9 0004 dd3c 	jsr 4dd3c <rtems_io_control>                
    the_jnode->info.device.major,                                     
    the_jnode->info.device.minor,                                     
    (void *) &args                                                    
  );                                                                  
                                                                      
  if ( status )                                                       
   4c58c:	4fef 000c      	lea %sp@(12),%sp                            
   4c590:	4a80           	tstl %d0                                    
   4c592:	6608           	bnes 4c59c <device_ioctl+0x3e>              
    return rtems_deviceio_errno(status);                              
                                                                      
  return args.ioctl_return;                                           
   4c594:	202e fffc      	movel %fp@(-4),%d0                          
}                                                                     
   4c598:	4e5e           	unlk %fp                                    
   4c59a:	4e75           	rts                                         
    the_jnode->info.device.minor,                                     
    (void *) &args                                                    
  );                                                                  
                                                                      
  if ( status )                                                       
    return rtems_deviceio_errno(status);                              
   4c59c:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4c59e:	4eb9 0004 e348 	jsr 4e348 <rtems_deviceio_errno>            <== NOT EXECUTED
   4c5a4:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  return args.ioctl_return;                                           
}                                                                     
   4c5a6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004c6ba <device_open>:                                               
  rtems_libio_t *iop,                                                 
  const char    *pathname,                                            
  uint32_t       flag,                                                
  uint32_t       mode                                                 
)                                                                     
{                                                                     
   4c6ba:	4e56 fff4      	linkw %fp,#-12                              
   4c6be:	206e 0008      	moveal %fp@(8),%a0                          
                                                                      
  args.iop   = iop;                                                   
  args.flags = iop->flags;                                            
  args.mode  = mode;                                                  
                                                                      
  status = rtems_io_open(                                             
   4c6c2:	486e fff4      	pea %fp@(-12)                               
  IMFS_jnode_t                  *the_jnode;                           
                                                                      
  the_jnode  = iop->file_info;                                        
                                                                      
  args.iop   = iop;                                                   
  args.flags = iop->flags;                                            
   4c6c6:	2d68 0014 fff8 	movel %a0@(20),%fp@(-8)                     
{                                                                     
  rtems_libio_open_close_args_t  args;                                
  rtems_status_code              status;                              
  IMFS_jnode_t                  *the_jnode;                           
                                                                      
  the_jnode  = iop->file_info;                                        
   4c6cc:	2268 0038      	moveal %a0@(56),%a1                         
                                                                      
  args.iop   = iop;                                                   
  args.flags = iop->flags;                                            
  args.mode  = mode;                                                  
   4c6d0:	2d6e 0014 fffc 	movel %fp@(20),%fp@(-4)                     
  rtems_status_code              status;                              
  IMFS_jnode_t                  *the_jnode;                           
                                                                      
  the_jnode  = iop->file_info;                                        
                                                                      
  args.iop   = iop;                                                   
   4c6d6:	2d48 fff4      	movel %a0,%fp@(-12)                         
  args.flags = iop->flags;                                            
  args.mode  = mode;                                                  
                                                                      
  status = rtems_io_open(                                             
   4c6da:	2f29 0050      	movel %a1@(80),%sp@-                        
   4c6de:	2f29 004c      	movel %a1@(76),%sp@-                        
   4c6e2:	4eb9 0004 dd98 	jsr 4dd98 <rtems_io_open>                   
    the_jnode->info.device.major,                                     
    the_jnode->info.device.minor,                                     
    (void *) &args                                                    
  );                                                                  
  if ( status )                                                       
   4c6e8:	4fef 000c      	lea %sp@(12),%sp                            
   4c6ec:	4a80           	tstl %d0                                    
   4c6ee:	6604           	bnes 4c6f4 <device_open+0x3a>               
    return rtems_deviceio_errno(status);                              
                                                                      
  return 0;                                                           
}                                                                     
   4c6f0:	4e5e           	unlk %fp                                    
   4c6f2:	4e75           	rts                                         
    the_jnode->info.device.major,                                     
    the_jnode->info.device.minor,                                     
    (void *) &args                                                    
  );                                                                  
  if ( status )                                                       
    return rtems_deviceio_errno(status);                              
   4c6f4:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4c6f6:	4eb9 0004 e348 	jsr 4e348 <rtems_deviceio_errno>            <== NOT EXECUTED
   4c6fc:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  return 0;                                                           
}                                                                     
   4c6fe:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
0004c610 <device_read>:                                               
ssize_t device_read(                                                  
  rtems_libio_t *iop,                                                 
  void          *buffer,                                              
  size_t         count                                                
)                                                                     
{                                                                     
   4c610:	4e56 ffe4      	linkw %fp,#-28                              <== NOT EXECUTED
   4c614:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
  args.buffer      = buffer;                                          
  args.count       = count;                                           
  args.flags       = iop->flags;                                      
  args.bytes_moved = 0;                                               
                                                                      
  status = rtems_io_read(                                             
   4c618:	486e ffe4      	pea %fp@(-28)                               <== NOT EXECUTED
                                                                      
  args.iop         = iop;                                             
  args.offset      = iop->offset;                                     
  args.buffer      = buffer;                                          
  args.count       = count;                                           
  args.flags       = iop->flags;                                      
   4c61c:	2d68 0014 fff8 	movel %a0@(20),%fp@(-8)                     <== NOT EXECUTED
                                                                      
  the_jnode = iop->file_info;                                         
                                                                      
  args.iop         = iop;                                             
  args.offset      = iop->offset;                                     
  args.buffer      = buffer;                                          
   4c622:	2d6e 000c fff0 	movel %fp@(12),%fp@(-16)                    <== NOT EXECUTED
  args.count       = count;                                           
   4c628:	2d6e 0010 fff4 	movel %fp@(16),%fp@(-12)                    <== NOT EXECUTED
{                                                                     
  rtems_libio_rw_args_t   args;                                       
  rtems_status_code       status;                                     
  IMFS_jnode_t           *the_jnode;                                  
                                                                      
  the_jnode = iop->file_info;                                         
   4c62e:	2268 0038      	moveal %a0@(56),%a1                         <== NOT EXECUTED
                                                                      
  args.iop         = iop;                                             
  args.offset      = iop->offset;                                     
   4c632:	2028 000c      	movel %a0@(12),%d0                          <== NOT EXECUTED
   4c636:	2228 0010      	movel %a0@(16),%d1                          <== NOT EXECUTED
  rtems_status_code       status;                                     
  IMFS_jnode_t           *the_jnode;                                  
                                                                      
  the_jnode = iop->file_info;                                         
                                                                      
  args.iop         = iop;                                             
   4c63a:	2d48 ffe4      	movel %a0,%fp@(-28)                         <== NOT EXECUTED
  args.offset      = iop->offset;                                     
   4c63e:	2d40 ffe8      	movel %d0,%fp@(-24)                         <== NOT EXECUTED
   4c642:	2d41 ffec      	movel %d1,%fp@(-20)                         <== NOT EXECUTED
  args.buffer      = buffer;                                          
  args.count       = count;                                           
  args.flags       = iop->flags;                                      
  args.bytes_moved = 0;                                               
   4c646:	42ae fffc      	clrl %fp@(-4)                               <== NOT EXECUTED
                                                                      
  status = rtems_io_read(                                             
   4c64a:	2f29 0050      	movel %a1@(80),%sp@-                        <== NOT EXECUTED
   4c64e:	2f29 004c      	movel %a1@(76),%sp@-                        <== NOT EXECUTED
   4c652:	4eb9 0004 ddf4 	jsr 4ddf4 <rtems_io_read>                   <== NOT EXECUTED
    the_jnode->info.device.major,                                     
    the_jnode->info.device.minor,                                     
    (void *) &args                                                    
  );                                                                  
                                                                      
  if ( status )                                                       
   4c658:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4c65c:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4c65e:	6608           	bnes 4c668 <device_read+0x58>               <== NOT EXECUTED
    return rtems_deviceio_errno(status);                              
                                                                      
  return (ssize_t) args.bytes_moved;                                  
   4c660:	202e fffc      	movel %fp@(-4),%d0                          <== NOT EXECUTED
}                                                                     
   4c664:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4c666:	4e75           	rts                                         <== NOT EXECUTED
    the_jnode->info.device.minor,                                     
    (void *) &args                                                    
  );                                                                  
                                                                      
  if ( status )                                                       
    return rtems_deviceio_errno(status);                              
   4c668:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4c66a:	4eb9 0004 e348 	jsr 4e348 <rtems_deviceio_errno>            <== NOT EXECUTED
   4c670:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  return (ssize_t) args.bytes_moved;                                  
}                                                                     
   4c672:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004c5aa <device_write>:                                              
ssize_t device_write(                                                 
  rtems_libio_t *iop,                                                 
  const void    *buffer,                                              
  size_t         count                                                
)                                                                     
{                                                                     
   4c5aa:	4e56 ffe4      	linkw %fp,#-28                              
   4c5ae:	206e 0008      	moveal %fp@(8),%a0                          
  args.buffer      = (void *) buffer;                                 
  args.count       = count;                                           
  args.flags       = iop->flags;                                      
  args.bytes_moved = 0;                                               
                                                                      
  status = rtems_io_write(                                            
   4c5b2:	486e ffe4      	pea %fp@(-28)                               
                                                                      
  args.iop         = iop;                                             
  args.offset      = iop->offset;                                     
  args.buffer      = (void *) buffer;                                 
  args.count       = count;                                           
  args.flags       = iop->flags;                                      
   4c5b6:	2d68 0014 fff8 	movel %a0@(20),%fp@(-8)                     
                                                                      
  the_jnode = iop->file_info;                                         
                                                                      
  args.iop         = iop;                                             
  args.offset      = iop->offset;                                     
  args.buffer      = (void *) buffer;                                 
   4c5bc:	2d6e 000c fff0 	movel %fp@(12),%fp@(-16)                    
  args.count       = count;                                           
   4c5c2:	2d6e 0010 fff4 	movel %fp@(16),%fp@(-12)                    
{                                                                     
  rtems_libio_rw_args_t   args;                                       
  rtems_status_code       status;                                     
  IMFS_jnode_t           *the_jnode;                                  
                                                                      
  the_jnode = iop->file_info;                                         
   4c5c8:	2268 0038      	moveal %a0@(56),%a1                         
                                                                      
  args.iop         = iop;                                             
  args.offset      = iop->offset;                                     
   4c5cc:	2028 000c      	movel %a0@(12),%d0                          
   4c5d0:	2228 0010      	movel %a0@(16),%d1                          
  rtems_status_code       status;                                     
  IMFS_jnode_t           *the_jnode;                                  
                                                                      
  the_jnode = iop->file_info;                                         
                                                                      
  args.iop         = iop;                                             
   4c5d4:	2d48 ffe4      	movel %a0,%fp@(-28)                         
  args.offset      = iop->offset;                                     
   4c5d8:	2d40 ffe8      	movel %d0,%fp@(-24)                         
   4c5dc:	2d41 ffec      	movel %d1,%fp@(-20)                         
  args.buffer      = (void *) buffer;                                 
  args.count       = count;                                           
  args.flags       = iop->flags;                                      
  args.bytes_moved = 0;                                               
   4c5e0:	42ae fffc      	clrl %fp@(-4)                               
                                                                      
  status = rtems_io_write(                                            
   4c5e4:	2f29 0050      	movel %a1@(80),%sp@-                        
   4c5e8:	2f29 004c      	movel %a1@(76),%sp@-                        
   4c5ec:	4eb9 0004 de50 	jsr 4de50 <rtems_io_write>                  
    the_jnode->info.device.major,                                     
    the_jnode->info.device.minor,                                     
    (void *) &args                                                    
  );                                                                  
                                                                      
  if ( status )                                                       
   4c5f2:	4fef 000c      	lea %sp@(12),%sp                            
   4c5f6:	4a80           	tstl %d0                                    
   4c5f8:	6608           	bnes 4c602 <device_write+0x58>              
    return rtems_deviceio_errno(status);                              
                                                                      
  return (ssize_t) args.bytes_moved;                                  
   4c5fa:	202e fffc      	movel %fp@(-4),%d0                          
}                                                                     
   4c5fe:	4e5e           	unlk %fp                                    
   4c600:	4e75           	rts                                         
    the_jnode->info.device.minor,                                     
    (void *) &args                                                    
  );                                                                  
                                                                      
  if ( status )                                                       
    return rtems_deviceio_errno(status);                              
   4c602:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4c604:	4eb9 0004 e348 	jsr 4e348 <rtems_deviceio_errno>            <== NOT EXECUTED
   4c60a:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  return (ssize_t) args.bytes_moved;                                  
}                                                                     
   4c60c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000443aa <drainOutput>:                                               
/*                                                                    
 * Drain output queue                                                 
 */                                                                   
static void                                                           
drainOutput (struct rtems_termios_tty *tty)                           
{                                                                     
   443aa:	4e56 fff4      	linkw %fp,#-12                              
   443ae:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     
   443b2:	246e 0008      	moveal %fp@(8),%a2                          
	rtems_interrupt_level level;                                         
	rtems_status_code sc;                                                
                                                                      
	if (tty->device.outputUsesInterrupts != TERMIOS_POLLED) {            
   443b6:	4aaa 00b4      	tstl %a2@(180)                              
   443ba:	6750           	beqs 4440c <drainOutput+0x62>               
		rtems_interrupt_disable (level);                                    
   443bc:	243c 0000 0700 	movel #1792,%d2                             
   443c2:	2002           	movel %d2,%d0                               
   443c4:	40c1           	movew %sr,%d1                               
   443c6:	8081           	orl %d1,%d0                                 
   443c8:	46c0           	movew %d0,%sr                               
		while (tty->rawOutBuf.Tail != tty->rawOutBuf.Head) {                
   443ca:	206a 0084      	moveal %a2@(132),%a0                        
   443ce:	202a 0080      	movel %a2@(128),%d0                         
   443d2:	b088           	cmpl %a0,%d0                                
   443d4:	6734           	beqs 4440a <drainOutput+0x60>               
   443d6:	47f9 0004 5d2c 	lea 45d2c <rtems_semaphore_obtain>,%a3      
			tty->rawOutBufState = rob_wait;                                    
   443dc:	7002           	moveq #2,%d0                                
   443de:	2540 0094      	movel %d0,%a2@(148)                         
			rtems_interrupt_enable (level);                                    
   443e2:	46c1           	movew %d1,%sr                               
			sc = rtems_semaphore_obtain (tty->rawOutBuf.Semaphore,             
   443e4:	42a7           	clrl %sp@-                                  
   443e6:	42a7           	clrl %sp@-                                  
   443e8:	2f2a 008c      	movel %a2@(140),%sp@-                       
   443ec:	4e93           	jsr %a3@                                    
							RTEMS_WAIT,                                                    
							RTEMS_NO_TIMEOUT);                                             
			if (sc != RTEMS_SUCCESSFUL)                                        
   443ee:	4fef 000c      	lea %sp@(12),%sp                            
   443f2:	4a80           	tstl %d0                                    
   443f4:	6620           	bnes 44416 <drainOutput+0x6c>               
				rtems_fatal_error_occurred (sc);                                  
			rtems_interrupt_disable (level);                                   
   443f6:	2002           	movel %d2,%d0                               
   443f8:	40c1           	movew %sr,%d1                               
   443fa:	8081           	orl %d1,%d0                                 
   443fc:	46c0           	movew %d0,%sr                               
	rtems_interrupt_level level;                                         
	rtems_status_code sc;                                                
                                                                      
	if (tty->device.outputUsesInterrupts != TERMIOS_POLLED) {            
		rtems_interrupt_disable (level);                                    
		while (tty->rawOutBuf.Tail != tty->rawOutBuf.Head) {                
   443fe:	206a 0084      	moveal %a2@(132),%a0                        
   44402:	202a 0080      	movel %a2@(128),%d0                         
   44406:	b088           	cmpl %a0,%d0                                
   44408:	66d2           	bnes 443dc <drainOutput+0x32>               
							RTEMS_NO_TIMEOUT);                                             
			if (sc != RTEMS_SUCCESSFUL)                                        
				rtems_fatal_error_occurred (sc);                                  
			rtems_interrupt_disable (level);                                   
		}                                                                   
		rtems_interrupt_enable (level);                                     
   4440a:	46c1           	movew %d1,%sr                               
	}                                                                    
}                                                                     
   4440c:	4cee 0c04 fff4 	moveml %fp@(-12),%d2/%a2-%a3                
   44412:	4e5e           	unlk %fp                                    
   44414:	4e75           	rts                                         
			rtems_interrupt_enable (level);                                    
			sc = rtems_semaphore_obtain (tty->rawOutBuf.Semaphore,             
							RTEMS_WAIT,                                                    
							RTEMS_NO_TIMEOUT);                                             
			if (sc != RTEMS_SUCCESSFUL)                                        
				rtems_fatal_error_occurred (sc);                                  
   44416:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   44418:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
                                                                      
00043394 <dup2>:                                                      
                                                                      
int dup2(                                                             
  int fildes,                                                         
  int fildes2                                                         
)                                                                     
{                                                                     
   43394:	4e56 ffac      	linkw %fp,#-84                              
   43398:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
                                                                      
  /*                                                                  
   *  If fildes is not valid, then fildes2 should not be closed.      
   */                                                                 
                                                                      
  status = fstat( fildes, &buf );                                     
   4339c:	240e           	movel %fp,%d2                               
   4339e:	0682 ffff ffba 	addil #-70,%d2                              
   433a4:	45f9 0004 3d70 	lea 43d70 <fstat>,%a2                       
   433aa:	2f02           	movel %d2,%sp@-                             
                                                                      
int dup2(                                                             
  int fildes,                                                         
  int fildes2                                                         
)                                                                     
{                                                                     
   433ac:	262e 0008      	movel %fp@(8),%d3                           
                                                                      
  /*                                                                  
   *  If fildes is not valid, then fildes2 should not be closed.      
   */                                                                 
                                                                      
  status = fstat( fildes, &buf );                                     
   433b0:	2f03           	movel %d3,%sp@-                             
   433b2:	4e92           	jsr %a2@                                    
  if ( status == -1 )                                                 
   433b4:	508f           	addql #8,%sp                                
   433b6:	72ff           	moveq #-1,%d1                               
   433b8:	b280           	cmpl %d0,%d1                                
   433ba:	660c           	bnes 433c8 <dup2+0x34>                      
                                                                      
  /*                                                                  
   *  This fcntl handles everything else.                             
   */                                                                 
                                                                      
  return fcntl( fildes, F_DUPFD, fildes2 );                           
   433bc:	70ff           	moveq #-1,%d0                               
}                                                                     
   433be:	4cee 040c ffac 	moveml %fp@(-84),%d2-%d3/%a2                
   433c4:	4e5e           	unlk %fp                                    
   433c6:	4e75           	rts                                         
                                                                      
  /*                                                                  
   *  If fildes2 is not valid, then we should not do anything either. 
   */                                                                 
                                                                      
  status = fstat( fildes2, &buf );                                    
   433c8:	2f02           	movel %d2,%sp@-                             
   433ca:	2f2e 000c      	movel %fp@(12),%sp@-                        
   433ce:	4e92           	jsr %a2@                                    
  if ( status == -1 )                                                 
   433d0:	508f           	addql #8,%sp                                
   433d2:	72ff           	moveq #-1,%d1                               
   433d4:	b280           	cmpl %d0,%d1                                
   433d6:	67e4           	beqs 433bc <dup2+0x28>                      
                                                                      
  /*                                                                  
   *  This fcntl handles everything else.                             
   */                                                                 
                                                                      
  return fcntl( fildes, F_DUPFD, fildes2 );                           
   433d8:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   433dc:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   433de:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   433e0:	4eb9 0004 3908 	jsr 43908 <fcntl>                           <== NOT EXECUTED
   433e6:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
}                                                                     
   433ea:	4cee 040c ffac 	moveml %fp@(-84),%d2-%d3/%a2                <== NOT EXECUTED
   433f0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00043dcc <echo>:                                                      
/*                                                                    
 * Echo a typed character                                             
 */                                                                   
static void                                                           
echo (unsigned char c, struct rtems_termios_tty *tty)                 
{                                                                     
   43dcc:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   43dd0:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   43dd2:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
   43dd6:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
	if ((tty->termios.c_lflag & ECHOCTL) && iscntrl(c) && (c != '\t') && (c != '\n')) {
   43dd8:	242a 003c      	movel %a2@(60),%d2                          <== NOT EXECUTED
/*                                                                    
 * Echo a typed character                                             
 */                                                                   
static void                                                           
echo (unsigned char c, struct rtems_termios_tty *tty)                 
{                                                                     
   43ddc:	222e 0008      	movel %fp@(8),%d1                           <== NOT EXECUTED
	if ((tty->termios.c_lflag & ECHOCTL) && iscntrl(c) && (c != '\t') && (c != '\n')) {
   43de0:	0282 0000 0200 	andil #512,%d2                              <== NOT EXECUTED
/*                                                                    
 * Echo a typed character                                             
 */                                                                   
static void                                                           
echo (unsigned char c, struct rtems_termios_tty *tty)                 
{                                                                     
   43de6:	1001           	moveb %d1,%d0                               <== NOT EXECUTED
	if ((tty->termios.c_lflag & ECHOCTL) && iscntrl(c) && (c != '\t') && (c != '\n')) {
   43de8:	4a82           	tstl %d2                                    <== NOT EXECUTED
   43dea:	673e           	beqs 43e2a <echo+0x5e>                      <== NOT EXECUTED
   43dec:	1001           	moveb %d1,%d0                               <== NOT EXECUTED
   43dee:	2079 0005 d8ec 	moveal 5d8ec <__ctype_ptr__>,%a0            <== NOT EXECUTED
   43df4:	0280 0000 00ff 	andil #255,%d0                              <== NOT EXECUTED
   43dfa:	1430 0801      	moveb %a0@(00000001,%d0:l),%d2              <== NOT EXECUTED
   43dfe:	49c2           	extbl %d2                                   <== NOT EXECUTED
   43e00:	0802 0005      	btst #5,%d2                                 <== NOT EXECUTED
   43e04:	670e           	beqs 43e14 <echo+0x48>                      <== NOT EXECUTED
   43e06:	7409           	moveq #9,%d2                                <== NOT EXECUTED
   43e08:	b480           	cmpl %d0,%d2                                <== NOT EXECUTED
   43e0a:	6708           	beqs 43e14 <echo+0x48>                      <== NOT EXECUTED
   43e0c:	143c 000a      	moveb #10,%d2                               <== NOT EXECUTED
   43e10:	b480           	cmpl %d0,%d2                                <== NOT EXECUTED
   43e12:	662a           	bnes 43e3e <echo+0x72>                      <== NOT EXECUTED
		echobuf[1] = c ^ 0x40;                                              
		rtems_termios_puts (echobuf, 2, tty);                               
		tty->column += 2;                                                   
	}                                                                    
	else {                                                               
		oproc (c, tty);                                                     
   43e14:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   43e16:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   43e18:	4eba fdd2      	jsr %pc@(43bec <oproc>)                     <== NOT EXECUTED
   43e1c:	508f           	addql #8,%sp                                <== NOT EXECUTED
	}                                                                    
}                                                                     
   43e1e:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   43e22:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   43e26:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   43e28:	4e75           	rts                                         <== NOT EXECUTED
   43e2a:	1001           	moveb %d1,%d0                               <== NOT EXECUTED
		echobuf[1] = c ^ 0x40;                                              
		rtems_termios_puts (echobuf, 2, tty);                               
		tty->column += 2;                                                   
	}                                                                    
	else {                                                               
		oproc (c, tty);                                                     
   43e2c:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   43e2e:	0280 0000 00ff 	andil #255,%d0                              <== NOT EXECUTED
   43e34:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   43e36:	4eba fdb4      	jsr %pc@(43bec <oproc>)                     <== NOT EXECUTED
   43e3a:	508f           	addql #8,%sp                                <== NOT EXECUTED
   43e3c:	60e0           	bras 43e1e <echo+0x52>                      <== NOT EXECUTED
	if ((tty->termios.c_lflag & ECHOCTL) && iscntrl(c) && (c != '\t') && (c != '\n')) {
		char echobuf[2];                                                    
                                                                      
		echobuf[0] = '^';                                                   
		echobuf[1] = c ^ 0x40;                                              
		rtems_termios_puts (echobuf, 2, tty);                               
   43e3e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   43e40:	4878 0002      	pea 2 <DOUBLE_FLOAT>                        <== NOT EXECUTED
{                                                                     
	if ((tty->termios.c_lflag & ECHOCTL) && iscntrl(c) && (c != '\t') && (c != '\n')) {
		char echobuf[2];                                                    
                                                                      
		echobuf[0] = '^';                                                   
		echobuf[1] = c ^ 0x40;                                              
   43e44:	7040           	moveq #64,%d0                               <== NOT EXECUTED
		rtems_termios_puts (echobuf, 2, tty);                               
   43e46:	486e fffe      	pea %fp@(-2)                                <== NOT EXECUTED
{                                                                     
	if ((tty->termios.c_lflag & ECHOCTL) && iscntrl(c) && (c != '\t') && (c != '\n')) {
		char echobuf[2];                                                    
                                                                      
		echobuf[0] = '^';                                                   
		echobuf[1] = c ^ 0x40;                                              
   43e4a:	b181           	eorl %d0,%d1                                <== NOT EXECUTED
echo (unsigned char c, struct rtems_termios_tty *tty)                 
{                                                                     
	if ((tty->termios.c_lflag & ECHOCTL) && iscntrl(c) && (c != '\t') && (c != '\n')) {
		char echobuf[2];                                                    
                                                                      
		echobuf[0] = '^';                                                   
   43e4c:	745e           	moveq #94,%d2                               <== NOT EXECUTED
		echobuf[1] = c ^ 0x40;                                              
   43e4e:	1d41 ffff      	moveb %d1,%fp@(-1)                          <== NOT EXECUTED
echo (unsigned char c, struct rtems_termios_tty *tty)                 
{                                                                     
	if ((tty->termios.c_lflag & ECHOCTL) && iscntrl(c) && (c != '\t') && (c != '\n')) {
		char echobuf[2];                                                    
                                                                      
		echobuf[0] = '^';                                                   
   43e52:	1d42 fffe      	moveb %d2,%fp@(-2)                          <== NOT EXECUTED
		echobuf[1] = c ^ 0x40;                                              
		rtems_termios_puts (echobuf, 2, tty);                               
   43e56:	4eb9 0004 3ac4 	jsr 43ac4 <rtems_termios_puts>              <== NOT EXECUTED
		tty->column += 2;                                                   
	}                                                                    
	else {                                                               
		oproc (c, tty);                                                     
	}                                                                    
}                                                                     
   43e5c:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
		char echobuf[2];                                                    
                                                                      
		echobuf[0] = '^';                                                   
		echobuf[1] = c ^ 0x40;                                              
		rtems_termios_puts (echobuf, 2, tty);                               
		tty->column += 2;                                                   
   43e60:	54aa 0028      	addql #2,%a2@(40)                           <== NOT EXECUTED
 * Echo a typed character                                             
 */                                                                   
static void                                                           
echo (unsigned char c, struct rtems_termios_tty *tty)                 
{                                                                     
	if ((tty->termios.c_lflag & ECHOCTL) && iscntrl(c) && (c != '\t') && (c != '\n')) {
   43e64:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
		tty->column += 2;                                                   
	}                                                                    
	else {                                                               
		oproc (c, tty);                                                     
	}                                                                    
}                                                                     
   43e68:	246e fff8      	moveal %fp@(-8),%a2                         <== NOT EXECUTED
   43e6c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00067328 <endgrent>:                                                  
    fclose(group_fp);                                                 
  group_fp = fopen("/etc/group", "r");                                
}                                                                     
                                                                      
void endgrent(void)                                                   
{                                                                     
   67328:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  if (group_fp != NULL)                                               
   6732c:	2039 000a 60b2 	movel a60b2 <group_fp>,%d0                  <== NOT EXECUTED
   67332:	670a           	beqs 6733e <endgrent+0x16>                  <== NOT EXECUTED
    fclose(group_fp);                                                 
   67334:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   67336:	4eb9 0008 0f7a 	jsr 80f7a <fclose>                          <== NOT EXECUTED
   6733c:	588f           	addql #4,%sp                                <== NOT EXECUTED
}                                                                     
   6733e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00067342 <endpwent>:                                                  
    fclose(passwd_fp);                                                
  passwd_fp = fopen("/etc/passwd", "r");                              
}                                                                     
                                                                      
void endpwent(void)                                                   
{                                                                     
   67342:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  if (passwd_fp != NULL)                                              
   67346:	2039 000a 5fca 	movel a5fca <passwd_fp>,%d0                 <== NOT EXECUTED
   6734c:	670a           	beqs 67358 <endpwent+0x16>                  <== NOT EXECUTED
    fclose(passwd_fp);                                                
   6734e:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   67350:	4eb9 0008 0f7a 	jsr 80f7a <fclose>                          <== NOT EXECUTED
   67356:	588f           	addql #4,%sp                                <== NOT EXECUTED
}                                                                     
   67358:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00043e70 <erase>:                                                     
 * FIXME: Needs support for WERASE and ECHOPRT.                       
 * FIXME: Some of the tests should check for IEXTEN, too.             
 */                                                                   
static void                                                           
erase (struct rtems_termios_tty *tty, int lineFlag)                   
{                                                                     
   43e70:	4e56 ffe4      	linkw %fp,#-28                              <== NOT EXECUTED
   43e74:	48d7 1c3c      	moveml %d2-%d5/%a2-%a4,%sp@                 <== NOT EXECUTED
   43e78:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   43e7c:	282e 000c      	movel %fp@(12),%d4                          <== NOT EXECUTED
	if (tty->ccount == 0)                                                
   43e80:	222a 0020      	movel %a2@(32),%d1                          <== NOT EXECUTED
   43e84:	6732           	beqs 43eb8 <erase+0x48>                     <== NOT EXECUTED
		return;                                                             
	if (lineFlag) {                                                      
   43e86:	4a84           	tstl %d4                                    <== NOT EXECUTED
   43e88:	6738           	beqs 43ec2 <erase+0x52>                     <== NOT EXECUTED
		if (!(tty->termios.c_lflag & ECHO)) {                               
   43e8a:	262a 003c      	movel %a2@(60),%d3                          <== NOT EXECUTED
   43e8e:	44c3           	movew %d3,%ccr                              <== NOT EXECUTED
   43e90:	6a00 01ae      	bplw 44040 <erase+0x1d0>                    <== NOT EXECUTED
			tty->ccount = 0;                                                   
			return;                                                            
		}                                                                   
		if (!(tty->termios.c_lflag & ECHOE)) {                              
   43e94:	0803 0004      	btst #4,%d3                                 <== NOT EXECUTED
   43e98:	662c           	bnes 43ec6 <erase+0x56>                     <== NOT EXECUTED
			tty->ccount = 0;                                                   
			echo (tty->termios.c_cc[VKILL], tty);                              
   43e9a:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   43e9c:	4280           	clrl %d0                                    <== NOT EXECUTED
   43e9e:	102a 0044      	moveb %a2@(68),%d0                          <== NOT EXECUTED
		if (!(tty->termios.c_lflag & ECHO)) {                               
			tty->ccount = 0;                                                   
			return;                                                            
		}                                                                   
		if (!(tty->termios.c_lflag & ECHOE)) {                              
			tty->ccount = 0;                                                   
   43ea2:	42aa 0020      	clrl %a2@(32)                               <== NOT EXECUTED
			echo (tty->termios.c_cc[VKILL], tty);                              
   43ea6:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   43ea8:	4eba ff22      	jsr %pc@(43dcc <echo>)                      <== NOT EXECUTED
			if (tty->termios.c_lflag & ECHOK)                                  
   43eac:	508f           	addql #8,%sp                                <== NOT EXECUTED
   43eae:	7020           	moveq #32,%d0                               <== NOT EXECUTED
   43eb0:	c0aa 003c      	andl %a2@(60),%d0                           <== NOT EXECUTED
   43eb4:	6600 0198      	bnew 4404e <erase+0x1de>                    <== NOT EXECUTED
			}                                                                  
		}                                                                   
		if (!lineFlag)                                                      
			break;                                                             
	}                                                                    
}                                                                     
   43eb8:	4cee 1c3c ffe4 	moveml %fp@(-28),%d2-%d5/%a2-%a4            <== NOT EXECUTED
   43ebe:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   43ec0:	4e75           	rts                                         <== NOT EXECUTED
   43ec2:	262a 003c      	movel %a2@(60),%d3                          <== NOT EXECUTED
   43ec6:	47f9 0004 3ac4 	lea 43ac4 <rtems_termios_puts>,%a3          <== NOT EXECUTED
				echo ('\n', tty);                                                 
			return;                                                            
		}                                                                   
	}                                                                    
	while (tty->ccount) {                                                
		unsigned char c = tty->cbuf[--tty->ccount];                         
   43ecc:	5381           	subql #1,%d1                                <== NOT EXECUTED
   43ece:	226a 001c      	moveal %a2@(28),%a1                         <== NOT EXECUTED
   43ed2:	2541 0020      	movel %d1,%a2@(32)                          <== NOT EXECUTED
   43ed6:	1031 1800      	moveb %a1@(00000000,%d1:l),%d0              <== NOT EXECUTED
                                                                      
		if (tty->termios.c_lflag & ECHO) {                                  
   43eda:	44c3           	movew %d3,%ccr                              <== NOT EXECUTED
   43edc:	6a36           	bpls 43f14 <erase+0xa4>                     <== NOT EXECUTED
			if (!lineFlag && !(tty->termios.c_lflag & ECHOE)) {                
   43ede:	4a84           	tstl %d4                                    <== NOT EXECUTED
   43ee0:	6608           	bnes 43eea <erase+0x7a>                     <== NOT EXECUTED
   43ee2:	0803 0004      	btst #4,%d3                                 <== NOT EXECUTED
   43ee6:	6700 013e      	beqw 44026 <erase+0x1b6>                    <== NOT EXECUTED
				echo (tty->termios.c_cc[VERASE], tty);                            
			}                                                                  
			else if (c == '\t') {                                              
   43eea:	7409           	moveq #9,%d2                                <== NOT EXECUTED
   43eec:	0280 0000 00ff 	andil #255,%d0                              <== NOT EXECUTED
   43ef2:	b480           	cmpl %d0,%d2                                <== NOT EXECUTED
   43ef4:	6700 008e      	beqw 43f84 <erase+0x114>                    <== NOT EXECUTED
					rtems_termios_puts ("\b", 1, tty);                               
					tty->column--;                                                   
				}                                                                 
			}                                                                  
			else {                                                             
				if (iscntrl (c) && (tty->termios.c_lflag & ECHOCTL)) {            
   43ef8:	2400           	movel %d0,%d2                               <== NOT EXECUTED
   43efa:	5282           	addql #1,%d2                                <== NOT EXECUTED
   43efc:	2079 0005 d8ec 	moveal 5d8ec <__ctype_ptr__>,%a0            <== NOT EXECUTED
   43f02:	1030 2800      	moveb %a0@(00000000,%d2:l),%d0              <== NOT EXECUTED
   43f06:	49c0           	extbl %d0                                   <== NOT EXECUTED
   43f08:	0800 0005      	btst #5,%d0                                 <== NOT EXECUTED
   43f0c:	6752           	beqs 43f60 <erase+0xf0>                     <== NOT EXECUTED
   43f0e:	0803 0009      	btst #9,%d3                                 <== NOT EXECUTED
   43f12:	6610           	bnes 43f24 <erase+0xb4>                     <== NOT EXECUTED
					if (tty->column)                                                 
						tty->column--;                                                  
				}                                                                 
			}                                                                  
		}                                                                   
		if (!lineFlag)                                                      
   43f14:	4a84           	tstl %d4                                    <== NOT EXECUTED
   43f16:	67a0           	beqs 43eb8 <erase+0x48>                     <== NOT EXECUTED
			if (tty->termios.c_lflag & ECHOK)                                  
				echo ('\n', tty);                                                 
			return;                                                            
		}                                                                   
	}                                                                    
	while (tty->ccount) {                                                
   43f18:	222a 0020      	movel %a2@(32),%d1                          <== NOT EXECUTED
   43f1c:	679a           	beqs 43eb8 <erase+0x48>                     <== NOT EXECUTED
   43f1e:	262a 003c      	movel %a2@(60),%d3                          <== NOT EXECUTED
   43f22:	60a8           	bras 43ecc <erase+0x5c>                     <== NOT EXECUTED
					tty->column--;                                                   
				}                                                                 
			}                                                                  
			else {                                                             
				if (iscntrl (c) && (tty->termios.c_lflag & ECHOCTL)) {            
					rtems_termios_puts ("\b \b", 3, tty);                            
   43f24:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   43f26:	4878 0003      	pea 3 <DIVIDE>                              <== NOT EXECUTED
   43f2a:	4879 0005 c67b 	pea 5c67b <rtems_status_assoc+0x175>        <== NOT EXECUTED
   43f30:	4e93           	jsr %a3@                                    <== NOT EXECUTED
					if (tty->column)                                                 
   43f32:	202a 0028      	movel %a2@(40),%d0                          <== NOT EXECUTED
   43f36:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   43f3a:	6706           	beqs 43f42 <erase+0xd2>                     <== NOT EXECUTED
						tty->column--;                                                  
   43f3c:	5380           	subql #1,%d0                                <== NOT EXECUTED
   43f3e:	2540 0028      	movel %d0,%a2@(40)                          <== NOT EXECUTED
				}                                                                 
				if (!iscntrl (c) || (tty->termios.c_lflag & ECHOCTL)) {           
   43f42:	2079 0005 d8ec 	moveal 5d8ec <__ctype_ptr__>,%a0            <== NOT EXECUTED
   43f48:	1030 2800      	moveb %a0@(00000000,%d2:l),%d0              <== NOT EXECUTED
   43f4c:	49c0           	extbl %d0                                   <== NOT EXECUTED
   43f4e:	0800 0005      	btst #5,%d0                                 <== NOT EXECUTED
   43f52:	670c           	beqs 43f60 <erase+0xf0>                     <== NOT EXECUTED
   43f54:	202a 003c      	movel %a2@(60),%d0                          <== NOT EXECUTED
   43f58:	0280 0000 0200 	andil #512,%d0                              <== NOT EXECUTED
   43f5e:	67b4           	beqs 43f14 <erase+0xa4>                     <== NOT EXECUTED
					rtems_termios_puts ("\b \b", 3, tty);                            
   43f60:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   43f62:	4878 0003      	pea 3 <DIVIDE>                              <== NOT EXECUTED
   43f66:	4879 0005 c67b 	pea 5c67b <rtems_status_assoc+0x175>        <== NOT EXECUTED
   43f6c:	4eb9 0004 3ac4 	jsr 43ac4 <rtems_termios_puts>              <== NOT EXECUTED
					if (tty->column)                                                 
   43f72:	202a 0028      	movel %a2@(40),%d0                          <== NOT EXECUTED
   43f76:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   43f7a:	6798           	beqs 43f14 <erase+0xa4>                     <== NOT EXECUTED
						tty->column--;                                                  
   43f7c:	5380           	subql #1,%d0                                <== NOT EXECUTED
   43f7e:	2540 0028      	movel %d0,%a2@(40)                          <== NOT EXECUTED
   43f82:	6090           	bras 43f14 <erase+0xa4>                     <== NOT EXECUTED
		if (tty->termios.c_lflag & ECHO) {                                  
			if (!lineFlag && !(tty->termios.c_lflag & ECHOE)) {                
				echo (tty->termios.c_cc[VERASE], tty);                            
			}                                                                  
			else if (c == '\t') {                                              
				int col = tty->read_start_column;                                 
   43f84:	242a 002c      	movel %a2@(44),%d2                          <== NOT EXECUTED
				int i = 0;                                                        
                                                                      
				/*                                                                
				 * Find the character before the tab                              
				 */                                                               
				while (i != tty->ccount) {                                        
   43f88:	4a81           	tstl %d1                                    <== NOT EXECUTED
   43f8a:	6734           	beqs 43fc0 <erase+0x150>                    <== NOT EXECUTED
					c = tty->cbuf[i++];                                              
					if (c == '\t') {                                                 
						col = (col | 7) + 1;                                            
					}                                                                
					else if (iscntrl (c)) {                                          
   43f8c:	2879 0005 d8ec 	moveal 5d8ec <__ctype_ptr__>,%a4            <== NOT EXECUTED
   43f92:	4280           	clrl %d0                                    <== NOT EXECUTED
						if (tty->termios.c_lflag & ECHOCTL)                             
   43f94:	0283 0000 0200 	andil #512,%d3                              <== NOT EXECUTED
                                                                      
				/*                                                                
				 * Find the character before the tab                              
				 */                                                               
				while (i != tty->ccount) {                                        
					c = tty->cbuf[i++];                                              
   43f9a:	4285           	clrl %d5                                    <== NOT EXECUTED
   43f9c:	1a31 0800      	moveb %a1@(00000000,%d0:l),%d5              <== NOT EXECUTED
   43fa0:	5280           	addql #1,%d0                                <== NOT EXECUTED
   43fa2:	2045           	moveal %d5,%a0                              <== NOT EXECUTED
					if (c == '\t') {                                                 
   43fa4:	7a09           	moveq #9,%d5                                <== NOT EXECUTED
   43fa6:	ba88           	cmpl %a0,%d5                                <== NOT EXECUTED
   43fa8:	676c           	beqs 44016 <erase+0x1a6>                    <== NOT EXECUTED
						col = (col | 7) + 1;                                            
					}                                                                
					else if (iscntrl (c)) {                                          
   43faa:	1a34 8801      	moveb %a4@(00000001,%a0:l),%d5              <== NOT EXECUTED
   43fae:	49c5           	extbl %d5                                   <== NOT EXECUTED
   43fb0:	0805 0005      	btst #5,%d5                                 <== NOT EXECUTED
   43fb4:	6758           	beqs 4400e <erase+0x19e>                    <== NOT EXECUTED
						if (tty->termios.c_lflag & ECHOCTL)                             
   43fb6:	4a83           	tstl %d3                                    <== NOT EXECUTED
   43fb8:	6702           	beqs 43fbc <erase+0x14c>                    <== NOT EXECUTED
							col += 2;                                                      
   43fba:	5482           	addql #2,%d2                                <== NOT EXECUTED
				int i = 0;                                                        
                                                                      
				/*                                                                
				 * Find the character before the tab                              
				 */                                                               
				while (i != tty->ccount) {                                        
   43fbc:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   43fbe:	66da           	bnes 43f9a <erase+0x12a>                    <== NOT EXECUTED
				}                                                                 
                                                                      
				/*                                                                
				 * Back up over the tab                                           
				 */                                                               
				while (tty->column > col) {                                       
   43fc0:	b4aa 0028      	cmpl %a2@(40),%d2                           <== NOT EXECUTED
   43fc4:	6c00 ff4e      	bgew 43f14 <erase+0xa4>                     <== NOT EXECUTED
					rtems_termios_puts ("\b", 1, tty);                               
   43fc8:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   43fca:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   43fce:	4879 0005 c67d 	pea 5c67d <rtems_status_assoc+0x177>        <== NOT EXECUTED
   43fd4:	4e93           	jsr %a3@                                    <== NOT EXECUTED
					tty->column--;                                                   
   43fd6:	202a 0028      	movel %a2@(40),%d0                          <== NOT EXECUTED
   43fda:	5380           	subql #1,%d0                                <== NOT EXECUTED
				}                                                                 
                                                                      
				/*                                                                
				 * Back up over the tab                                           
				 */                                                               
				while (tty->column > col) {                                       
   43fdc:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
					rtems_termios_puts ("\b", 1, tty);                               
					tty->column--;                                                   
   43fe0:	2540 0028      	movel %d0,%a2@(40)                          <== NOT EXECUTED
				}                                                                 
                                                                      
				/*                                                                
				 * Back up over the tab                                           
				 */                                                               
				while (tty->column > col) {                                       
   43fe4:	b082           	cmpl %d2,%d0                                <== NOT EXECUTED
   43fe6:	6f00 ff2c      	blew 43f14 <erase+0xa4>                     <== NOT EXECUTED
					rtems_termios_puts ("\b", 1, tty);                               
   43fea:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   43fec:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   43ff0:	4879 0005 c67d 	pea 5c67d <rtems_status_assoc+0x177>        <== NOT EXECUTED
   43ff6:	4e93           	jsr %a3@                                    <== NOT EXECUTED
					tty->column--;                                                   
   43ff8:	202a 0028      	movel %a2@(40),%d0                          <== NOT EXECUTED
   43ffc:	5380           	subql #1,%d0                                <== NOT EXECUTED
				}                                                                 
                                                                      
				/*                                                                
				 * Back up over the tab                                           
				 */                                                               
				while (tty->column > col) {                                       
   43ffe:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
					rtems_termios_puts ("\b", 1, tty);                               
					tty->column--;                                                   
   44002:	2540 0028      	movel %d0,%a2@(40)                          <== NOT EXECUTED
				}                                                                 
                                                                      
				/*                                                                
				 * Back up over the tab                                           
				 */                                                               
				while (tty->column > col) {                                       
   44006:	b082           	cmpl %d2,%d0                                <== NOT EXECUTED
   44008:	6ebe           	bgts 43fc8 <erase+0x158>                    <== NOT EXECUTED
   4400a:	6000 ff08      	braw 43f14 <erase+0xa4>                     <== NOT EXECUTED
					else if (iscntrl (c)) {                                          
						if (tty->termios.c_lflag & ECHOCTL)                             
							col += 2;                                                      
					}                                                                
					else {                                                           
						col++;                                                          
   4400e:	5282           	addql #1,%d2                                <== NOT EXECUTED
				int i = 0;                                                        
                                                                      
				/*                                                                
				 * Find the character before the tab                              
				 */                                                               
				while (i != tty->ccount) {                                        
   44010:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   44012:	6686           	bnes 43f9a <erase+0x12a>                    <== NOT EXECUTED
   44014:	60aa           	bras 43fc0 <erase+0x150>                    <== NOT EXECUTED
					c = tty->cbuf[i++];                                              
					if (c == '\t') {                                                 
						col = (col | 7) + 1;                                            
   44016:	1a3c 0007      	moveb #7,%d5                                <== NOT EXECUTED
   4401a:	8485           	orl %d5,%d2                                 <== NOT EXECUTED
   4401c:	5282           	addql #1,%d2                                <== NOT EXECUTED
				int i = 0;                                                        
                                                                      
				/*                                                                
				 * Find the character before the tab                              
				 */                                                               
				while (i != tty->ccount) {                                        
   4401e:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   44020:	6600 ff78      	bnew 43f9a <erase+0x12a>                    <== NOT EXECUTED
   44024:	609a           	bras 43fc0 <erase+0x150>                    <== NOT EXECUTED
	while (tty->ccount) {                                                
		unsigned char c = tty->cbuf[--tty->ccount];                         
                                                                      
		if (tty->termios.c_lflag & ECHO) {                                  
			if (!lineFlag && !(tty->termios.c_lflag & ECHOE)) {                
				echo (tty->termios.c_cc[VERASE], tty);                            
   44026:	2d4a 000c      	movel %a2,%fp@(12)                          <== NOT EXECUTED
   4402a:	4280           	clrl %d0                                    <== NOT EXECUTED
   4402c:	102a 0043      	moveb %a2@(67),%d0                          <== NOT EXECUTED
			}                                                                  
		}                                                                   
		if (!lineFlag)                                                      
			break;                                                             
	}                                                                    
}                                                                     
   44030:	4cee 1c3c ffe4 	moveml %fp@(-28),%d2-%d5/%a2-%a4            <== NOT EXECUTED
	while (tty->ccount) {                                                
		unsigned char c = tty->cbuf[--tty->ccount];                         
                                                                      
		if (tty->termios.c_lflag & ECHO) {                                  
			if (!lineFlag && !(tty->termios.c_lflag & ECHOE)) {                
				echo (tty->termios.c_cc[VERASE], tty);                            
   44036:	2d40 0008      	movel %d0,%fp@(8)                           <== NOT EXECUTED
			}                                                                  
		}                                                                   
		if (!lineFlag)                                                      
			break;                                                             
	}                                                                    
}                                                                     
   4403a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	while (tty->ccount) {                                                
		unsigned char c = tty->cbuf[--tty->ccount];                         
                                                                      
		if (tty->termios.c_lflag & ECHO) {                                  
			if (!lineFlag && !(tty->termios.c_lflag & ECHOE)) {                
				echo (tty->termios.c_cc[VERASE], tty);                            
   4403c:	6000 fd8e      	braw 43dcc <echo>                           <== NOT EXECUTED
{                                                                     
	if (tty->ccount == 0)                                                
		return;                                                             
	if (lineFlag) {                                                      
		if (!(tty->termios.c_lflag & ECHO)) {                               
			tty->ccount = 0;                                                   
   44040:	42aa 0020      	clrl %a2@(32)                               <== NOT EXECUTED
			}                                                                  
		}                                                                   
		if (!lineFlag)                                                      
			break;                                                             
	}                                                                    
}                                                                     
   44044:	4cee 1c3c ffe4 	moveml %fp@(-28),%d2-%d5/%a2-%a4            <== NOT EXECUTED
   4404a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4404c:	4e75           	rts                                         <== NOT EXECUTED
		}                                                                   
		if (!(tty->termios.c_lflag & ECHOE)) {                              
			tty->ccount = 0;                                                   
			echo (tty->termios.c_cc[VKILL], tty);                              
			if (tty->termios.c_lflag & ECHOK)                                  
				echo ('\n', tty);                                                 
   4404e:	700a           	moveq #10,%d0                               <== NOT EXECUTED
   44050:	2d4a 000c      	movel %a2,%fp@(12)                          <== NOT EXECUTED
			}                                                                  
		}                                                                   
		if (!lineFlag)                                                      
			break;                                                             
	}                                                                    
}                                                                     
   44054:	4cee 1c3c ffe4 	moveml %fp@(-28),%d2-%d5/%a2-%a4            <== NOT EXECUTED
		}                                                                   
		if (!(tty->termios.c_lflag & ECHOE)) {                              
			tty->ccount = 0;                                                   
			echo (tty->termios.c_cc[VKILL], tty);                              
			if (tty->termios.c_lflag & ECHOK)                                  
				echo ('\n', tty);                                                 
   4405a:	2d40 0008      	movel %d0,%fp@(8)                           <== NOT EXECUTED
			}                                                                  
		}                                                                   
		if (!lineFlag)                                                      
			break;                                                             
	}                                                                    
}                                                                     
   4405e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
		}                                                                   
		if (!(tty->termios.c_lflag & ECHOE)) {                              
			tty->ccount = 0;                                                   
			echo (tty->termios.c_cc[VKILL], tty);                              
			if (tty->termios.c_lflag & ECHOK)                                  
				echo ('\n', tty);                                                 
   44060:	6000 fd6a      	braw 43dcc <echo>                           <== NOT EXECUTED
                                                                      
0007a5cc <fchdir>:                                                    
#include <rtems/seterr.h>                                             
                                                                      
int fchdir(                                                           
  int       fd                                                        
)                                                                     
{                                                                     
   7a5cc:	4e56 ffb4      	linkw %fp,#-76                              <== NOT EXECUTED
   7a5d0:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   7a5d4:	48d7 3c7c      	moveml %d2-%d6/%a2-%a5,%sp@                 <== NOT EXECUTED
  rtems_libio_t *iop;                                                 
  rtems_filesystem_location_info_t loc, saved;                        
                                                                      
  rtems_libio_check_fd( fd );                                         
   7a5d8:	b0b9 000a 1c74 	cmpl a1c74 <rtems_libio_number_iops>,%d0    <== NOT EXECUTED
   7a5de:	6400 0116      	bccw 7a6f6 <fchdir+0x12a>                   <== NOT EXECUTED
  iop = rtems_libio_iop( fd );                                        
   7a5e2:	2479 000a 6920 	moveal a6920 <rtems_libio_iops>,%a2         <== NOT EXECUTED
   7a5e8:	ed88           	lsll #6,%d0                                 <== NOT EXECUTED
   7a5ea:	d5c0           	addal %d0,%a2                               <== NOT EXECUTED
  rtems_libio_check_is_open(iop);                                     
   7a5ec:	202a 0014      	movel %a2@(20),%d0                          <== NOT EXECUTED
   7a5f0:	0800 0008      	btst #8,%d0                                 <== NOT EXECUTED
   7a5f4:	6700 0100      	beqw 7a6f6 <fchdir+0x12a>                   <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Now process the fchmod().                                       
   */                                                                 
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_READ );             
   7a5f8:	0800 0001      	btst #1,%d0                                 <== NOT EXECUTED
   7a5fc:	6700 0138      	beqw 7a736 <fchdir+0x16a>                   <== NOT EXECUTED
                                                                      
  /*                                                                  
   * Verify you can change directory into this node.                  
   */                                                                 
                                                                      
  if ( !iop->pathinfo.ops ) {                                         
   7a600:	206a 0024      	moveal %a2@(36),%a0                         <== NOT EXECUTED
   7a604:	4a88           	tstl %a0                                    <== NOT EXECUTED
   7a606:	6700 0146      	beqw 7a74e <fchdir+0x182>                   <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if ( !iop->pathinfo.ops->node_type_h ) {                            
   7a60a:	2068 0010      	moveal %a0@(16),%a0                         <== NOT EXECUTED
   7a60e:	4a88           	tstl %a0                                    <== NOT EXECUTED
   7a610:	6700 013c      	beqw 7a74e <fchdir+0x182>                   <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if (  (*iop->pathinfo.ops->node_type_h)( &iop->pathinfo ) !=        
   7a614:	47ea 0018      	lea %a2@(24),%a3                            <== NOT EXECUTED
   7a618:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   7a61a:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   7a61c:	588f           	addql #4,%sp                                <== NOT EXECUTED
   7a61e:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   7a620:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   7a622:	6600 00ba      	bnew 7a6de <fchdir+0x112>                   <== NOT EXECUTED
   *         but note the race condition. Threads who                 
   *         share their rtems_filesystem_current better              
   *         be synchronized!                                         
   */                                                                 
                                                                      
  saved                    = rtems_filesystem_current;                
   7a626:	2279 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a1   <== NOT EXECUTED
   7a62c:	2c0e           	movel %fp,%d6                               <== NOT EXECUTED
   7a62e:	41e9 0004      	lea %a1@(4),%a0                             <== NOT EXECUTED
   7a632:	0686 ffff ffd8 	addil #-40,%d6                              <== NOT EXECUTED
  rtems_filesystem_current = iop->pathinfo;                           
   7a638:	2248           	moveal %a0,%a1                              <== NOT EXECUTED
   *         but note the race condition. Threads who                 
   *         share their rtems_filesystem_current better              
   *         be synchronized!                                         
   */                                                                 
                                                                      
  saved                    = rtems_filesystem_current;                
   7a63a:	2a46           	moveal %d6,%a5                              <== NOT EXECUTED
   7a63c:	2a0e           	movel %fp,%d5                               <== NOT EXECUTED
   7a63e:	0685 ffff ffdc 	addil #-36,%d5                              <== NOT EXECUTED
   7a644:	280e           	movel %fp,%d4                               <== NOT EXECUTED
   7a646:	0684 ffff ffe0 	addil #-32,%d4                              <== NOT EXECUTED
   7a64c:	260e           	movel %fp,%d3                               <== NOT EXECUTED
   7a64e:	0683 ffff ffe4 	addil #-28,%d3                              <== NOT EXECUTED
   7a654:	240e           	movel %fp,%d2                               <== NOT EXECUTED
   7a656:	0682 ffff ffe8 	addil #-24,%d2                              <== NOT EXECUTED
  rtems_filesystem_current = iop->pathinfo;                           
                                                                      
  /* clone the current node */                                        
  if (rtems_filesystem_evaluate_path(".", 1, 0, &loc, 0)) {           
   7a65c:	49ee ffec      	lea %fp@(-20),%a4                           <== NOT EXECUTED
   *         but note the race condition. Threads who                 
   *         share their rtems_filesystem_current better              
   *         be synchronized!                                         
   */                                                                 
                                                                      
  saved                    = rtems_filesystem_current;                
   7a660:	2a98           	movel %a0@+,%a5@                            <== NOT EXECUTED
   7a662:	2a45           	moveal %d5,%a5                              <== NOT EXECUTED
   7a664:	2a98           	movel %a0@+,%a5@                            <== NOT EXECUTED
   7a666:	2a44           	moveal %d4,%a5                              <== NOT EXECUTED
   7a668:	2a98           	movel %a0@+,%a5@                            <== NOT EXECUTED
   7a66a:	2a43           	moveal %d3,%a5                              <== NOT EXECUTED
   7a66c:	2a98           	movel %a0@+,%a5@                            <== NOT EXECUTED
   7a66e:	2a42           	moveal %d2,%a5                              <== NOT EXECUTED
   7a670:	2a90           	movel %a0@,%a5@                             <== NOT EXECUTED
  rtems_filesystem_current = iop->pathinfo;                           
   7a672:	22d3           	movel %a3@,%a1@+                            <== NOT EXECUTED
   7a674:	22ea 001c      	movel %a2@(28),%a1@+                        <== NOT EXECUTED
   7a678:	22ea 0020      	movel %a2@(32),%a1@+                        <== NOT EXECUTED
   7a67c:	22aa 0024      	movel %a2@(36),%a1@                         <== NOT EXECUTED
   7a680:	20aa 0028      	movel %a2@(40),%a0@                         <== NOT EXECUTED
                                                                      
  /* clone the current node */                                        
  if (rtems_filesystem_evaluate_path(".", 1, 0, &loc, 0)) {           
   7a684:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   7a686:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   7a688:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   7a68a:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   7a68e:	4879 0009 acab 	pea 9acab <rtems_bdpart_shell_usage+0xf1f>  <== NOT EXECUTED
   7a694:	4eb9 0004 66cc 	jsr 466cc <rtems_filesystem_evaluate_path>  <== NOT EXECUTED
   7a69a:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   7a69e:	4a80           	tstl %d0                                    <== NOT EXECUTED
   7a6a0:	666c           	bnes 7a70e <fchdir+0x142>                   <== NOT EXECUTED
    /* cloning failed; restore original and bail out */               
    rtems_filesystem_current = saved;                                 
	return -1;                                                           
  }                                                                   
  /* release the old one */                                           
  rtems_filesystem_freenode( &saved );                                
   7a6a2:	206e ffe4      	moveal %fp@(-28),%a0                        <== NOT EXECUTED
   7a6a6:	4a88           	tstl %a0                                    <== NOT EXECUTED
   7a6a8:	670e           	beqs 7a6b8 <fchdir+0xec>                    <== NOT EXECUTED
   7a6aa:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   7a6ae:	4a88           	tstl %a0                                    <== NOT EXECUTED
   7a6b0:	6706           	beqs 7a6b8 <fchdir+0xec>                    <== NOT EXECUTED
   7a6b2:	2f06           	movel %d6,%sp@-                             <== NOT EXECUTED
   7a6b4:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   7a6b6:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  rtems_filesystem_current = loc;                                     
   7a6b8:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   <== NOT EXECUTED
   7a6be:	5888           	addql #4,%a0                                <== NOT EXECUTED
   7a6c0:	4280           	clrl %d0                                    <== NOT EXECUTED
   7a6c2:	20d4           	movel %a4@,%a0@+                            <== NOT EXECUTED
   7a6c4:	20ee fff0      	movel %fp@(-16),%a0@+                       <== NOT EXECUTED
   7a6c8:	20ee fff4      	movel %fp@(-12),%a0@+                       <== NOT EXECUTED
   7a6cc:	20ee fff8      	movel %fp@(-8),%a0@+                        <== NOT EXECUTED
   7a6d0:	20ae fffc      	movel %fp@(-4),%a0@                         <== NOT EXECUTED
                                                                      
  return 0;                                                           
}                                                                     
   7a6d4:	4cee 3c7c ffb4 	moveml %fp@(-76),%d2-%d6/%a2-%a5            <== NOT EXECUTED
   7a6da:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   7a6dc:	4e75           	rts                                         <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if (  (*iop->pathinfo.ops->node_type_h)( &iop->pathinfo ) !=        
                                          RTEMS_FILESYSTEM_DIRECTORY ) {
    rtems_set_errno_and_return_minus_one( ENOTDIR );                  
   7a6de:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   7a6e4:	7214           	moveq #20,%d1                               <== NOT EXECUTED
   7a6e6:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   7a6e8:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
  rtems_filesystem_freenode( &saved );                                
                                                                      
  rtems_filesystem_current = loc;                                     
                                                                      
  return 0;                                                           
}                                                                     
   7a6ea:	4cee 3c7c ffb4 	moveml %fp@(-76),%d2-%d6/%a2-%a5            <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if (  (*iop->pathinfo.ops->node_type_h)( &iop->pathinfo ) !=        
                                          RTEMS_FILESYSTEM_DIRECTORY ) {
    rtems_set_errno_and_return_minus_one( ENOTDIR );                  
   7a6f0:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
  rtems_filesystem_freenode( &saved );                                
                                                                      
  rtems_filesystem_current = loc;                                     
                                                                      
  return 0;                                                           
}                                                                     
   7a6f2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   7a6f4:	4e75           	rts                                         <== NOT EXECUTED
  rtems_libio_t *iop;                                                 
  rtems_filesystem_location_info_t loc, saved;                        
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
   7a6f6:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   7a6fc:	7609           	moveq #9,%d3                                <== NOT EXECUTED
   7a6fe:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   7a700:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   7a702:	2083           	movel %d3,%a0@                              <== NOT EXECUTED
  rtems_filesystem_freenode( &saved );                                
                                                                      
  rtems_filesystem_current = loc;                                     
                                                                      
  return 0;                                                           
}                                                                     
   7a704:	4cee 3c7c ffb4 	moveml %fp@(-76),%d2-%d6/%a2-%a5            <== NOT EXECUTED
   7a70a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   7a70c:	4e75           	rts                                         <== NOT EXECUTED
  rtems_filesystem_current = iop->pathinfo;                           
                                                                      
  /* clone the current node */                                        
  if (rtems_filesystem_evaluate_path(".", 1, 0, &loc, 0)) {           
    /* cloning failed; restore original and bail out */               
    rtems_filesystem_current = saved;                                 
   7a70e:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   <== NOT EXECUTED
   7a714:	2246           	moveal %d6,%a1                              <== NOT EXECUTED
   7a716:	5888           	addql #4,%a0                                <== NOT EXECUTED
   7a718:	2a45           	moveal %d5,%a5                              <== NOT EXECUTED
   7a71a:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   7a71c:	20d1           	movel %a1@,%a0@+                            <== NOT EXECUTED
   7a71e:	2244           	moveal %d4,%a1                              <== NOT EXECUTED
   7a720:	20d5           	movel %a5@,%a0@+                            <== NOT EXECUTED
   7a722:	2a43           	moveal %d3,%a5                              <== NOT EXECUTED
   7a724:	20d1           	movel %a1@,%a0@+                            <== NOT EXECUTED
   7a726:	2242           	moveal %d2,%a1                              <== NOT EXECUTED
   7a728:	20d5           	movel %a5@,%a0@+                            <== NOT EXECUTED
   7a72a:	2091           	movel %a1@,%a0@                             <== NOT EXECUTED
  rtems_filesystem_freenode( &saved );                                
                                                                      
  rtems_filesystem_current = loc;                                     
                                                                      
  return 0;                                                           
}                                                                     
   7a72c:	4cee 3c7c ffb4 	moveml %fp@(-76),%d2-%d6/%a2-%a5            <== NOT EXECUTED
   7a732:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   7a734:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Now process the fchmod().                                       
   */                                                                 
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_READ );             
   7a736:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   7a73c:	7416           	moveq #22,%d2                               <== NOT EXECUTED
   7a73e:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   7a740:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   7a742:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
  rtems_filesystem_freenode( &saved );                                
                                                                      
  rtems_filesystem_current = loc;                                     
                                                                      
  return 0;                                                           
}                                                                     
   7a744:	4cee 3c7c ffb4 	moveml %fp@(-76),%d2-%d6/%a2-%a5            <== NOT EXECUTED
   7a74a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   7a74c:	4e75           	rts                                         <== NOT EXECUTED
  if ( !iop->pathinfo.ops ) {                                         
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if ( !iop->pathinfo.ops->node_type_h ) {                            
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   7a74e:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   7a754:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   7a756:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
  rtems_filesystem_freenode( &saved );                                
                                                                      
  rtems_filesystem_current = loc;                                     
                                                                      
  return 0;                                                           
}                                                                     
   7a758:	4cee 3c7c ffb4 	moveml %fp@(-76),%d2-%d6/%a2-%a5            <== NOT EXECUTED
  if ( !iop->pathinfo.ops ) {                                         
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if ( !iop->pathinfo.ops->node_type_h ) {                            
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   7a75e:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  rtems_filesystem_freenode( &saved );                                
                                                                      
  rtems_filesystem_current = loc;                                     
                                                                      
  return 0;                                                           
}                                                                     
   7a764:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00066f58 <fchmod>:                                                    
                                                                      
int fchmod(                                                           
  int       fd,                                                       
  mode_t    mode                                                      
)                                                                     
{                                                                     
   66f58:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   66f5c:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   66f60:	222e 000c      	movel %fp@(12),%d1                          <== NOT EXECUTED
  rtems_libio_t *iop;                                                 
                                                                      
  rtems_libio_check_fd( fd );                                         
   66f64:	b0b9 000a 1c74 	cmpl a1c74 <rtems_libio_number_iops>,%d0    <== NOT EXECUTED
   66f6a:	643a           	bccs 66fa6 <fchmod+0x4e>                    <== NOT EXECUTED
  iop = rtems_libio_iop( fd );                                        
   66f6c:	2079 000a 6920 	moveal a6920 <rtems_libio_iops>,%a0         <== NOT EXECUTED
   66f72:	ed88           	lsll #6,%d0                                 <== NOT EXECUTED
   66f74:	d1c0           	addal %d0,%a0                               <== NOT EXECUTED
  rtems_libio_check_is_open(iop);                                     
   66f76:	2028 0014      	movel %a0@(20),%d0                          <== NOT EXECUTED
   66f7a:	0800 0008      	btst #8,%d0                                 <== NOT EXECUTED
   66f7e:	6726           	beqs 66fa6 <fchmod+0x4e>                    <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Now process the fchmod().                                       
   */                                                                 
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   66f80:	44c0           	movew %d0,%ccr                              <== NOT EXECUTED
   66f82:	6634           	bnes 66fb8 <fchmod+0x60>                    <== NOT EXECUTED
                                                                      
  if ( !iop->handlers->fchmod_h )                                     
   66f84:	2268 003c      	moveal %a0@(60),%a1                         <== NOT EXECUTED
   66f88:	4aa9 001c      	tstl %a1@(28)                               <== NOT EXECUTED
   66f8c:	673c           	beqs 66fca <fchmod+0x72>                    <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->pathinfo.handlers->fchmod_h)( &iop->pathinfo, mode ); 
   66f8e:	2268 0020      	moveal %a0@(32),%a1                         <== NOT EXECUTED
   66f92:	41e8 0018      	lea %a0@(24),%a0                            <== NOT EXECUTED
   66f96:	2d41 000c      	movel %d1,%fp@(12)                          <== NOT EXECUTED
   66f9a:	2269 001c      	moveal %a1@(28),%a1                         <== NOT EXECUTED
   66f9e:	2d48 0008      	movel %a0,%fp@(8)                           <== NOT EXECUTED
}                                                                     
   66fa2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
                                                                      
  if ( !iop->handlers->fchmod_h )                                     
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->pathinfo.handlers->fchmod_h)( &iop->pathinfo, mode ); 
   66fa4:	4ed1           	jmp %a1@                                    <== NOT EXECUTED
{                                                                     
  rtems_libio_t *iop;                                                 
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
   66fa6:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   66fac:	7209           	moveq #9,%d1                                <== NOT EXECUTED
   66fae:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
                                                                      
  if ( !iop->handlers->fchmod_h )                                     
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->pathinfo.handlers->fchmod_h)( &iop->pathinfo, mode ); 
}                                                                     
   66fb0:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   66fb2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
{                                                                     
  rtems_libio_t *iop;                                                 
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
   66fb4:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
                                                                      
  if ( !iop->handlers->fchmod_h )                                     
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->pathinfo.handlers->fchmod_h)( &iop->pathinfo, mode ); 
}                                                                     
   66fb6:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Now process the fchmod().                                       
   */                                                                 
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   66fb8:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
                                                                      
  if ( !iop->handlers->fchmod_h )                                     
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->pathinfo.handlers->fchmod_h)( &iop->pathinfo, mode ); 
}                                                                     
   66fbe:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Now process the fchmod().                                       
   */                                                                 
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   66fc0:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   66fc2:	7016           	moveq #22,%d0                               <== NOT EXECUTED
   66fc4:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
                                                                      
  if ( !iop->handlers->fchmod_h )                                     
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->pathinfo.handlers->fchmod_h)( &iop->pathinfo, mode ); 
}                                                                     
   66fc6:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   66fc8:	4e75           	rts                                         <== NOT EXECUTED
   */                                                                 
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
                                                                      
  if ( !iop->handlers->fchmod_h )                                     
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   66fca:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
                                                                      
  return (*iop->pathinfo.handlers->fchmod_h)( &iop->pathinfo, mode ); 
}                                                                     
   66fd0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   */                                                                 
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
                                                                      
  if ( !iop->handlers->fchmod_h )                                     
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   66fd2:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
                                                                      
  return (*iop->pathinfo.handlers->fchmod_h)( &iop->pathinfo, mode ); 
}                                                                     
   66fd4:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   */                                                                 
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
                                                                      
  if ( !iop->handlers->fchmod_h )                                     
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   66fd6:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
                                                                      
  return (*iop->pathinfo.handlers->fchmod_h)( &iop->pathinfo, mode ); 
}                                                                     
	...                                                                  
                                                                      
00066fe0 <fchown>:                                                    
int fchown(                                                           
  int   fd,                                                           
  uid_t owner,                                                        
  gid_t group                                                         
)                                                                     
{                                                                     
   66fe0:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   66fe4:	302e 000e      	movew %fp@(14),%d0                          <== NOT EXECUTED
   66fe8:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   66fea:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
   66fee:	322e 0012      	movew %fp@(18),%d1                          <== NOT EXECUTED
  rtems_libio_t *iop;                                                 
                                                                      
  rtems_libio_check_fd( fd );                                         
   66ff2:	b4b9 000a 1c74 	cmpl a1c74 <rtems_libio_number_iops>,%d2    <== NOT EXECUTED
   66ff8:	6448           	bccs 67042 <fchown+0x62>                    <== NOT EXECUTED
  iop = rtems_libio_iop( fd );                                        
   66ffa:	2079 000a 6920 	moveal a6920 <rtems_libio_iops>,%a0         <== NOT EXECUTED
   67000:	ed8a           	lsll #6,%d2                                 <== NOT EXECUTED
   67002:	d1c2           	addal %d2,%a0                               <== NOT EXECUTED
  rtems_libio_check_is_open(iop);                                     
   67004:	2428 0014      	movel %a0@(20),%d2                          <== NOT EXECUTED
   67008:	0802 0008      	btst #8,%d2                                 <== NOT EXECUTED
   6700c:	6734           	beqs 67042 <fchown+0x62>                    <== NOT EXECUTED
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   6700e:	44c2           	movew %d2,%ccr                              <== NOT EXECUTED
   67010:	6646           	bnes 67058 <fchown+0x78>                    <== NOT EXECUTED
                                                                      
  if ( !iop->pathinfo.ops->chown_h )                                  
   67012:	2268 0024      	moveal %a0@(36),%a1                         <== NOT EXECUTED
   67016:	2269 0018      	moveal %a1@(24),%a1                         <== NOT EXECUTED
   6701a:	4a89           	tstl %a1                                    <== NOT EXECUTED
   6701c:	6750           	beqs 6706e <fchown+0x8e>                    <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->pathinfo.ops->chown_h)( &iop->pathinfo, owner, group );
   6701e:	41e8 0018      	lea %a0@(24),%a0                            <== NOT EXECUTED
   67022:	0281 0000 ffff 	andil #65535,%d1                            <== NOT EXECUTED
   67028:	0280 0000 ffff 	andil #65535,%d0                            <== NOT EXECUTED
}                                                                     
   6702e:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
                                                                      
  if ( !iop->pathinfo.ops->chown_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->pathinfo.ops->chown_h)( &iop->pathinfo, owner, group );
   67032:	2d48 0008      	movel %a0,%fp@(8)                           <== NOT EXECUTED
   67036:	2d41 0010      	movel %d1,%fp@(16)                          <== NOT EXECUTED
   6703a:	2d40 000c      	movel %d0,%fp@(12)                          <== NOT EXECUTED
}                                                                     
   6703e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
                                                                      
  if ( !iop->pathinfo.ops->chown_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->pathinfo.ops->chown_h)( &iop->pathinfo, owner, group );
   67040:	4ed1           	jmp %a1@                                    <== NOT EXECUTED
{                                                                     
  rtems_libio_t *iop;                                                 
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
   67042:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
                                                                      
  if ( !iop->pathinfo.ops->chown_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->pathinfo.ops->chown_h)( &iop->pathinfo, owner, group );
}                                                                     
   67048:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
{                                                                     
  rtems_libio_t *iop;                                                 
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
   6704c:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   6704e:	7209           	moveq #9,%d1                                <== NOT EXECUTED
                                                                      
  if ( !iop->pathinfo.ops->chown_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->pathinfo.ops->chown_h)( &iop->pathinfo, owner, group );
}                                                                     
   67050:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   67052:	4e5e           	unlk %fp                                    <== NOT EXECUTED
{                                                                     
  rtems_libio_t *iop;                                                 
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
   67054:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
                                                                      
  if ( !iop->pathinfo.ops->chown_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->pathinfo.ops->chown_h)( &iop->pathinfo, owner, group );
}                                                                     
   67056:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   67058:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
                                                                      
  if ( !iop->pathinfo.ops->chown_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->pathinfo.ops->chown_h)( &iop->pathinfo, owner, group );
}                                                                     
   6705e:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   67062:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   67064:	7016           	moveq #22,%d0                               <== NOT EXECUTED
                                                                      
  if ( !iop->pathinfo.ops->chown_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->pathinfo.ops->chown_h)( &iop->pathinfo, owner, group );
}                                                                     
   67066:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   67068:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
                                                                      
  if ( !iop->pathinfo.ops->chown_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->pathinfo.ops->chown_h)( &iop->pathinfo, owner, group );
}                                                                     
   6706a:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   6706c:	4e75           	rts                                         <== NOT EXECUTED
  rtems_libio_check_is_open(iop);                                     
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
                                                                      
  if ( !iop->pathinfo.ops->chown_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   6706e:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
                                                                      
  return (*iop->pathinfo.ops->chown_h)( &iop->pathinfo, owner, group );
}                                                                     
   67074:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
  rtems_libio_check_is_open(iop);                                     
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
                                                                      
  if ( !iop->pathinfo.ops->chown_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   67078:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
                                                                      
  return (*iop->pathinfo.ops->chown_h)( &iop->pathinfo, owner, group );
}                                                                     
   6707a:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   6707c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  rtems_libio_check_is_open(iop);                                     
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
                                                                      
  if ( !iop->pathinfo.ops->chown_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   6707e:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
                                                                      
  return (*iop->pathinfo.ops->chown_h)( &iop->pathinfo, owner, group );
}                                                                     
	...                                                                  
                                                                      
0007a768 <fcntl>:                                                     
int fcntl(                                                            
  int fd,                                                             
  int cmd,                                                            
  ...                                                                 
)                                                                     
{                                                                     
   7a768:	4e56 fff4      	linkw %fp,#-12                              
   7a76c:	202e 0008      	movel %fp@(8),%d0                           
#include <sys/types.h>                                                
#include <sys/stat.h>		/* sigh. for the mode bits for open/creat */   
                                                                      
extern int open _PARAMS ((const char *, int, ...));                   
extern int creat _PARAMS ((const char *, mode_t));                    
extern int fcntl _PARAMS ((int, int, ...));                           
   7a770:	41ee 0010      	lea %fp@(16),%a0                            
   7a774:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
   7a778:	242e 000c      	movel %fp@(12),%d2                          
  int            fd2;                                                 
  int            flags;                                               
  int            mask;                                                
  int            ret = 0;                                             
                                                                      
  rtems_libio_check_fd( fd );                                         
   7a77c:	2239 000a 1c74 	movel a1c74 <rtems_libio_number_iops>,%d1   
   7a782:	b280           	cmpl %d0,%d1                                
   7a784:	6300 0192      	blsw 7a918 <fcntl+0x1b0>                    
  iop = rtems_libio_iop( fd );                                        
   7a788:	2279 000a 6920 	moveal a6920 <rtems_libio_iops>,%a1         
   7a78e:	ed88           	lsll #6,%d0                                 
   7a790:	45f1 0800      	lea %a1@(00000000,%d0:l),%a2                
  rtems_libio_check_is_open(iop);                                     
   7a794:	202a 0014      	movel %a2@(20),%d0                          
   7a798:	0800 0008      	btst #8,%d0                                 
   7a79c:	6700 017a      	beqw 7a918 <fcntl+0x1b0>                    
                                                                      
  /*                                                                  
   *  This switch should contain all the cases from POSIX.            
   */                                                                 
                                                                      
  switch ( cmd ) {                                                    
   7a7a0:	7609           	moveq #9,%d3                                
   7a7a2:	b682           	cmpl %d2,%d3                                
   7a7a4:	641a           	bccs 7a7c0 <fcntl+0x58>                     
      errno = ENOTSUP;                                                
      ret = -1;                                                       
      break;                                                          
                                                                      
    default:                                                          
      errno = EINVAL;                                                 
   7a7a6:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         
   7a7ac:	76ff           	moveq #-1,%d3                               
   7a7ae:	2040           	moveal %d0,%a0                              
   7a7b0:	7016           	moveq #22,%d0                               
   7a7b2:	2080           	movel %d0,%a0@                              
  va_list        ap;                                                  
  va_start( ap, cmd );                                                
  ret = vfcntl(fd,cmd,ap);                                            
  va_end(ap);                                                         
  return ret;                                                         
}                                                                     
   7a7b4:	2003           	movel %d3,%d0                               
   7a7b6:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   7a7bc:	4e5e           	unlk %fp                                    
   7a7be:	4e75           	rts                                         
                                                                      
  /*                                                                  
   *  This switch should contain all the cases from POSIX.            
   */                                                                 
                                                                      
  switch ( cmd ) {                                                    
   7a7c0:	363b 2a08      	movew %pc@(7a7ca <fcntl+0x62>,%d2:l:2),%d3  
   7a7c4:	48c3           	extl %d3                                    
   7a7c6:	4efb 3802      	jmp %pc@(7a7ca <fcntl+0x62>,%d3:l)          
   7a7ca:	00b8 00ac 009c 	oril #11272348,%d0                          <== NOT EXECUTED
   7a7d0:	0082 0030 0014 	oril #3145748,%d2                           <== NOT EXECUTED
   7a7d6:	0014           	024                                         <== NOT EXECUTED
   7a7d8:	0014           	024                                         <== NOT EXECUTED
   7a7da:	0014           	024                                         <== NOT EXECUTED
   7a7dc:	0014           	024                                         <== NOT EXECUTED
      errno = ENOTSUP;                                                
      ret = -1;                                                       
      break;                                                          
                                                                      
    case F_GETOWN:       /*  for sockets. */                          
      errno = ENOTSUP;                                                
   7a7de:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         
   7a7e4:	76ff           	moveq #-1,%d3                               
   7a7e6:	2040           	moveal %d0,%a0                              
  va_list        ap;                                                  
  va_start( ap, cmd );                                                
  ret = vfcntl(fd,cmd,ap);                                            
  va_end(ap);                                                         
  return ret;                                                         
}                                                                     
   7a7e8:	2003           	movel %d3,%d0                               
   7a7ea:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
      errno = ENOTSUP;                                                
      ret = -1;                                                       
      break;                                                          
                                                                      
    case F_GETOWN:       /*  for sockets. */                          
      errno = ENOTSUP;                                                
   7a7f0:	20bc 0000 0086 	movel #134,%a0@                             
  va_list        ap;                                                  
  va_start( ap, cmd );                                                
  ret = vfcntl(fd,cmd,ap);                                            
  va_end(ap);                                                         
  return ret;                                                         
}                                                                     
   7a7f6:	4e5e           	unlk %fp                                    
   7a7f8:	4e75           	rts                                         
    case F_GETFL:        /* more flags (cloexec) */                   
      ret = rtems_libio_to_fcntl_flags( iop->flags );                 
      break;                                                          
                                                                      
    case F_SETFL:                                                     
      flags = rtems_libio_fcntl_flags( va_arg( ap, int ) );           
   7a7fa:	2f10           	movel %a0@,%sp@-                            
                                                                      
      /*                                                              
       *  XXX If we are turning on append, should we seek to the end? 
       */                                                             
                                                                      
      iop->flags = (iop->flags & ~mask) | (flags & mask);             
   7a7fc:	4283           	clrl %d3                                    
    case F_GETFL:        /* more flags (cloexec) */                   
      ret = rtems_libio_to_fcntl_flags( iop->flags );                 
      break;                                                          
                                                                      
    case F_SETFL:                                                     
      flags = rtems_libio_fcntl_flags( va_arg( ap, int ) );           
   7a7fe:	4eb9 0004 6c34 	jsr 46c34 <rtems_libio_fcntl_flags>         
                                                                      
      /*                                                              
       *  XXX If we are turning on append, should we seek to the end? 
       */                                                             
                                                                      
      iop->flags = (iop->flags & ~mask) | (flags & mask);             
   7a804:	222a 0014      	movel %a2@(20),%d1                          
   7a808:	588f           	addql #4,%sp                                
   7a80a:	0280 0000 0201 	andil #513,%d0                              
   7a810:	0281 ffff fdfe 	andil #-514,%d1                             
   7a816:	8081           	orl %d1,%d0                                 
   7a818:	2540 0014      	movel %d0,%a2@(20)                          
   *  If we got this far successfully, then we give the optional      
   *  filesystem specific handler a chance to process this.           
   */                                                                 
                                                                      
  if (ret >= 0) {                                                     
    if (iop->handlers->fcntl_h) {                                     
   7a81c:	206a 003c      	moveal %a2@(60),%a0                         
   7a820:	2068 0030      	moveal %a0@(48),%a0                         
   7a824:	4a88           	tstl %a0                                    
   7a826:	678c           	beqs 7a7b4 <fcntl+0x4c>                     
      int err = (*iop->handlers->fcntl_h)( cmd, iop );                
   7a828:	2f0a           	movel %a2,%sp@-                             
   7a82a:	2f02           	movel %d2,%sp@-                             
   7a82c:	4e90           	jsr %a0@                                    
      if (err) {                                                      
   7a82e:	508f           	addql #8,%sp                                
   *  filesystem specific handler a chance to process this.           
   */                                                                 
                                                                      
  if (ret >= 0) {                                                     
    if (iop->handlers->fcntl_h) {                                     
      int err = (*iop->handlers->fcntl_h)( cmd, iop );                
   7a830:	2400           	movel %d0,%d2                               
      if (err) {                                                      
   7a832:	6780           	beqs 7a7b4 <fcntl+0x4c>                     
        errno = err;                                                  
   7a834:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   7a83a:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
   7a83c:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  va_list        ap;                                                  
  va_start( ap, cmd );                                                
  ret = vfcntl(fd,cmd,ap);                                            
  va_end(ap);                                                         
  return ret;                                                         
}                                                                     
   7a83e:	2003           	movel %d3,%d0                               <== NOT EXECUTED
                                                                      
  if (ret >= 0) {                                                     
    if (iop->handlers->fcntl_h) {                                     
      int err = (*iop->handlers->fcntl_h)( cmd, iop );                
      if (err) {                                                      
        errno = err;                                                  
   7a840:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
  va_list        ap;                                                  
  va_start( ap, cmd );                                                
  ret = vfcntl(fd,cmd,ap);                                            
  va_end(ap);                                                         
  return ret;                                                         
}                                                                     
   7a842:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   7a848:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   7a84a:	4e75           	rts                                         <== NOT EXECUTED
      else                                                            
        iop->flags &= ~LIBIO_FLAGS_CLOSE_ON_EXEC;                     
      break;                                                          
                                                                      
    case F_GETFL:        /* more flags (cloexec) */                   
      ret = rtems_libio_to_fcntl_flags( iop->flags );                 
   7a84c:	2f00           	movel %d0,%sp@-                             
   7a84e:	4eb9 0004 69a4 	jsr 469a4 <rtems_libio_to_fcntl_flags>      
   7a854:	588f           	addql #4,%sp                                
   7a856:	2600           	movel %d0,%d3                               
  /*                                                                  
   *  If we got this far successfully, then we give the optional      
   *  filesystem specific handler a chance to process this.           
   */                                                                 
                                                                      
  if (ret >= 0) {                                                     
   7a858:	6cc2           	bges 7a81c <fcntl+0xb4>                     
  va_list        ap;                                                  
  va_start( ap, cmd );                                                
  ret = vfcntl(fd,cmd,ap);                                            
  va_end(ap);                                                         
  return ret;                                                         
}                                                                     
   7a85a:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   7a85c:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   7a862:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   7a864:	4e75           	rts                                         <== NOT EXECUTED
       *  if a new process is exec()'ed.  Since RTEMS does not support
       *  processes, then we can ignore this one except to make       
       *  F_GETFD work.                                               
       */                                                             
                                                                      
      if ( va_arg( ap, int ) )                                        
   7a866:	4a90           	tstl %a0@                                   
   7a868:	6766           	beqs 7a8d0 <fcntl+0x168>                    
        iop->flags |= LIBIO_FLAGS_CLOSE_ON_EXEC;                      
   7a86a:	4283           	clrl %d3                                    
   7a86c:	08c0 000b      	bset #11,%d0                                
   7a870:	2540 0014      	movel %d0,%a2@(20)                          
   7a874:	60a6           	bras 7a81c <fcntl+0xb4>                     
      diop->pathinfo   = iop->pathinfo;                               
      ret = (int) (diop - rtems_libio_iops);                          
      break;                                                          
                                                                      
    case F_GETFD:        /* get f_flags */                            
      ret = ((iop->flags & LIBIO_FLAGS_CLOSE_ON_EXEC) != 0);          
   7a876:	2600           	movel %d0,%d3                               
   7a878:	720b           	moveq #11,%d1                               
   7a87a:	e2ab           	lsrl %d1,%d3                                
   7a87c:	7001           	moveq #1,%d0                                
   7a87e:	c680           	andl %d0,%d3                                
   7a880:	609a           	bras 7a81c <fcntl+0xb4>                     
   *  This switch should contain all the cases from POSIX.            
   */                                                                 
                                                                      
  switch ( cmd ) {                                                    
    case F_DUPFD:        /* dup */                                    
      fd2 = va_arg( ap, int );                                        
   7a882:	2010           	movel %a0@,%d0                              
      if ( fd2 )                                                      
   7a884:	6700 00ac      	beqw 7a932 <fcntl+0x1ca>                    
        diop = rtems_libio_iop( fd2 );                                
   7a888:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   7a88a:	6452           	bccs 7a8de <fcntl+0x176>                    <== NOT EXECUTED
   7a88c:	ed88           	lsll #6,%d0                                 <== NOT EXECUTED
   7a88e:	41f1 0800      	lea %a1@(00000000,%d0:l),%a0                <== NOT EXECUTED
   7a892:	2608           	movel %a0,%d3                               <== NOT EXECUTED
                                                                      
      diop->handlers   = iop->handlers;                               
      diop->file_info  = iop->file_info;                              
      diop->flags      = iop->flags;                                  
      diop->pathinfo   = iop->pathinfo;                               
      ret = (int) (diop - rtems_libio_iops);                          
   7a894:	9689           	subl %a1,%d3                                <== NOT EXECUTED
   7a896:	ec83           	asrl #6,%d3                                 <== NOT EXECUTED
      }                                                               
                                                                      
      diop->handlers   = iop->handlers;                               
      diop->file_info  = iop->file_info;                              
      diop->flags      = iop->flags;                                  
      diop->pathinfo   = iop->pathinfo;                               
   7a898:	216a 0018 0018 	movel %a2@(24),%a0@(24)                     <== NOT EXECUTED
   7a89e:	216a 001c 001c 	movel %a2@(28),%a0@(28)                     <== NOT EXECUTED
   7a8a4:	216a 0020 0020 	movel %a2@(32),%a0@(32)                     <== NOT EXECUTED
   7a8aa:	216a 0024 0024 	movel %a2@(36),%a0@(36)                     <== NOT EXECUTED
          ret = -1;                                                   
          break;                                                      
        }                                                             
      }                                                               
                                                                      
      diop->handlers   = iop->handlers;                               
   7a8b0:	216a 003c 003c 	movel %a2@(60),%a0@(60)                     <== NOT EXECUTED
      diop->file_info  = iop->file_info;                              
      diop->flags      = iop->flags;                                  
      diop->pathinfo   = iop->pathinfo;                               
   7a8b6:	216a 0028 0028 	movel %a2@(40),%a0@(40)                     <== NOT EXECUTED
          break;                                                      
        }                                                             
      }                                                               
                                                                      
      diop->handlers   = iop->handlers;                               
      diop->file_info  = iop->file_info;                              
   7a8bc:	216a 0038 0038 	movel %a2@(56),%a0@(56)                     <== NOT EXECUTED
      diop->flags      = iop->flags;                                  
   7a8c2:	216a 0014 0014 	movel %a2@(20),%a0@(20)                     <== NOT EXECUTED
  /*                                                                  
   *  If we got this far successfully, then we give the optional      
   *  filesystem specific handler a chance to process this.           
   */                                                                 
                                                                      
  if (ret >= 0) {                                                     
   7a8c8:	4a83           	tstl %d3                                    
   7a8ca:	6c00 ff50      	bgew 7a81c <fcntl+0xb4>                     
   7a8ce:	608a           	bras 7a85a <fcntl+0xf2>                     <== NOT EXECUTED
       */                                                             
                                                                      
      if ( va_arg( ap, int ) )                                        
        iop->flags |= LIBIO_FLAGS_CLOSE_ON_EXEC;                      
      else                                                            
        iop->flags &= ~LIBIO_FLAGS_CLOSE_ON_EXEC;                     
   7a8d0:	4283           	clrl %d3                                    <== NOT EXECUTED
   7a8d2:	0880 000b      	bclr #11,%d0                                <== NOT EXECUTED
   7a8d6:	2540 0014      	movel %d0,%a2@(20)                          <== NOT EXECUTED
   7a8da:	6000 ff40      	braw 7a81c <fcntl+0xb4>                     <== NOT EXECUTED
                                                                      
  switch ( cmd ) {                                                    
    case F_DUPFD:        /* dup */                                    
      fd2 = va_arg( ap, int );                                        
      if ( fd2 )                                                      
        diop = rtems_libio_iop( fd2 );                                
   7a8de:	91c8           	subal %a0,%a0                               <== NOT EXECUTED
   7a8e0:	4283           	clrl %d3                                    <== NOT EXECUTED
                                                                      
      diop->handlers   = iop->handlers;                               
      diop->file_info  = iop->file_info;                              
      diop->flags      = iop->flags;                                  
      diop->pathinfo   = iop->pathinfo;                               
      ret = (int) (diop - rtems_libio_iops);                          
   7a8e2:	9689           	subl %a1,%d3                                <== NOT EXECUTED
   7a8e4:	ec83           	asrl #6,%d3                                 <== NOT EXECUTED
      }                                                               
                                                                      
      diop->handlers   = iop->handlers;                               
      diop->file_info  = iop->file_info;                              
      diop->flags      = iop->flags;                                  
      diop->pathinfo   = iop->pathinfo;                               
   7a8e6:	216a 0018 0018 	movel %a2@(24),%a0@(24)                     <== NOT EXECUTED
   7a8ec:	216a 001c 001c 	movel %a2@(28),%a0@(28)                     <== NOT EXECUTED
   7a8f2:	216a 0020 0020 	movel %a2@(32),%a0@(32)                     <== NOT EXECUTED
   7a8f8:	216a 0024 0024 	movel %a2@(36),%a0@(36)                     <== NOT EXECUTED
          ret = -1;                                                   
          break;                                                      
        }                                                             
      }                                                               
                                                                      
      diop->handlers   = iop->handlers;                               
   7a8fe:	216a 003c 003c 	movel %a2@(60),%a0@(60)                     <== NOT EXECUTED
      diop->file_info  = iop->file_info;                              
      diop->flags      = iop->flags;                                  
      diop->pathinfo   = iop->pathinfo;                               
   7a904:	216a 0028 0028 	movel %a2@(40),%a0@(40)                     <== NOT EXECUTED
          break;                                                      
        }                                                             
      }                                                               
                                                                      
      diop->handlers   = iop->handlers;                               
      diop->file_info  = iop->file_info;                              
   7a90a:	216a 0038 0038 	movel %a2@(56),%a0@(56)                     <== NOT EXECUTED
      diop->flags      = iop->flags;                                  
   7a910:	216a 0014 0014 	movel %a2@(20),%a0@(20)                     <== NOT EXECUTED
   7a916:	60b0           	bras 7a8c8 <fcntl+0x160>                    <== NOT EXECUTED
  int            mask;                                                
  int            ret = 0;                                             
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
   7a918:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   7a91e:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
   7a920:	7209           	moveq #9,%d1                                <== NOT EXECUTED
   7a922:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  va_list        ap;                                                  
  va_start( ap, cmd );                                                
  ret = vfcntl(fd,cmd,ap);                                            
  va_end(ap);                                                         
  return ret;                                                         
}                                                                     
   7a924:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   7a926:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
  int            mask;                                                
  int            ret = 0;                                             
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
   7a92c:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
  va_list        ap;                                                  
  va_start( ap, cmd );                                                
  ret = vfcntl(fd,cmd,ap);                                            
  va_end(ap);                                                         
  return ret;                                                         
}                                                                     
   7a92e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   7a930:	4e75           	rts                                         <== NOT EXECUTED
      fd2 = va_arg( ap, int );                                        
      if ( fd2 )                                                      
        diop = rtems_libio_iop( fd2 );                                
      else {                                                          
        /* allocate a file control block */                           
        diop = rtems_libio_allocate();                                
   7a932:	4eb9 0004 6b7c 	jsr 46b7c <rtems_libio_allocate>            
   7a938:	2040           	moveal %d0,%a0                              
        if ( diop == 0 ) {                                            
   7a93a:	4a80           	tstl %d0                                    
   7a93c:	6740           	beqs 7a97e <fcntl+0x216>                    
   7a93e:	2279 000a 6920 	moveal a6920 <rtems_libio_iops>,%a1         
   7a944:	2600           	movel %d0,%d3                               
                                                                      
      diop->handlers   = iop->handlers;                               
      diop->file_info  = iop->file_info;                              
      diop->flags      = iop->flags;                                  
      diop->pathinfo   = iop->pathinfo;                               
      ret = (int) (diop - rtems_libio_iops);                          
   7a946:	9689           	subl %a1,%d3                                
   7a948:	ec83           	asrl #6,%d3                                 
      }                                                               
                                                                      
      diop->handlers   = iop->handlers;                               
      diop->file_info  = iop->file_info;                              
      diop->flags      = iop->flags;                                  
      diop->pathinfo   = iop->pathinfo;                               
   7a94a:	216a 0018 0018 	movel %a2@(24),%a0@(24)                     
   7a950:	216a 001c 001c 	movel %a2@(28),%a0@(28)                     
   7a956:	216a 0020 0020 	movel %a2@(32),%a0@(32)                     
   7a95c:	216a 0024 0024 	movel %a2@(36),%a0@(36)                     
          ret = -1;                                                   
          break;                                                      
        }                                                             
      }                                                               
                                                                      
      diop->handlers   = iop->handlers;                               
   7a962:	216a 003c 003c 	movel %a2@(60),%a0@(60)                     
      diop->file_info  = iop->file_info;                              
      diop->flags      = iop->flags;                                  
      diop->pathinfo   = iop->pathinfo;                               
   7a968:	216a 0028 0028 	movel %a2@(40),%a0@(40)                     
          break;                                                      
        }                                                             
      }                                                               
                                                                      
      diop->handlers   = iop->handlers;                               
      diop->file_info  = iop->file_info;                              
   7a96e:	216a 0038 0038 	movel %a2@(56),%a0@(56)                     
      diop->flags      = iop->flags;                                  
   7a974:	216a 0014 0014 	movel %a2@(20),%a0@(20)                     
   7a97a:	6000 ff4c      	braw 7a8c8 <fcntl+0x160>                    
      if ( fd2 )                                                      
        diop = rtems_libio_iop( fd2 );                                
      else {                                                          
        /* allocate a file control block */                           
        diop = rtems_libio_allocate();                                
        if ( diop == 0 ) {                                            
   7a97e:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
  va_list        ap;                                                  
  va_start( ap, cmd );                                                
  ret = vfcntl(fd,cmd,ap);                                            
  va_end(ap);                                                         
  return ret;                                                         
}                                                                     
   7a980:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   7a982:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   7a988:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004cce8 <fifo_open>:                                                 
 */                                                                   
int fifo_open(                                                        
  pipe_control_t **pipep,                                             
  rtems_libio_t *iop                                                  
)                                                                     
{                                                                     
   4cce8:	4e56 ffdc      	linkw %fp,#-36                              
   4ccec:	48d7 3c1c      	moveml %d2-%d4/%a2-%a5,%sp@                 
)                                                                     
{                                                                     
  pipe_control_t *pipe;                                               
  int err = 0;                                                        
                                                                      
  if (rtems_semaphore_obtain(rtems_pipe_semaphore,                    
   4ccf0:	42a7           	clrl %sp@-                                  
 */                                                                   
int fifo_open(                                                        
  pipe_control_t **pipep,                                             
  rtems_libio_t *iop                                                  
)                                                                     
{                                                                     
   4ccf2:	286e 0008      	moveal %fp@(8),%a4                          
)                                                                     
{                                                                     
  pipe_control_t *pipe;                                               
  int err = 0;                                                        
                                                                      
  if (rtems_semaphore_obtain(rtems_pipe_semaphore,                    
   4ccf6:	47f9 0004 5d2c 	lea 45d2c <rtems_semaphore_obtain>,%a3      
   4ccfc:	42a7           	clrl %sp@-                                  
   4ccfe:	2f39 0005 e724 	movel 5e724 <rtems_pipe_semaphore>,%sp@-    
 */                                                                   
int fifo_open(                                                        
  pipe_control_t **pipep,                                             
  rtems_libio_t *iop                                                  
)                                                                     
{                                                                     
   4cd04:	262e 000c      	movel %fp@(12),%d3                          
)                                                                     
{                                                                     
  pipe_control_t *pipe;                                               
  int err = 0;                                                        
                                                                      
  if (rtems_semaphore_obtain(rtems_pipe_semaphore,                    
   4cd08:	4e93           	jsr %a3@                                    
   4cd0a:	4fef 000c      	lea %sp@(12),%sp                            
   4cd0e:	4a80           	tstl %d0                                    
   4cd10:	6710           	beqs 4cd22 <fifo_open+0x3a>                 
   4cd12:	347c fffc      	moveaw #-4,%a2                              
  return 0;                                                           
                                                                      
out_error:                                                            
  pipe_release(pipep, iop);                                           
  return err;                                                         
}                                                                     
   4cd16:	200a           	movel %a2,%d0                               
   4cd18:	4cee 3c1c ffdc 	moveml %fp@(-36),%d2-%d4/%a2-%a5            
   4cd1e:	4e5e           	unlk %fp                                    
   4cd20:	4e75           	rts                                         
                                                                      
  if (rtems_semaphore_obtain(rtems_pipe_semaphore,                    
        RTEMS_WAIT, RTEMS_NO_TIMEOUT) != RTEMS_SUCCESSFUL)            
    return -EINTR;                                                    
                                                                      
  pipe = *pipep;                                                      
   4cd22:	2414           	movel %a4@,%d2                              <== NOT EXECUTED
  if (pipe == NULL) {                                                 
   4cd24:	6700 00ea      	beqw 4ce10 <fifo_open+0x128>                <== NOT EXECUTED
    err = pipe_alloc(&pipe);                                          
    if (err)                                                          
      goto out;                                                       
  }                                                                   
                                                                      
  if (! PIPE_LOCK(pipe))                                              
   4cd28:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4cd2a:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4cd2c:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4cd2e:	2f28 0028      	movel %a0@(40),%sp@-                        <== NOT EXECUTED
   4cd32:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   4cd34:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4cd38:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4cd3a:	6758           	beqs 4cd94 <fifo_open+0xac>                 <== NOT EXECUTED
   4cd3c:	347c fffc      	moveaw #-4,%a2                              <== NOT EXECUTED
    err = -EINTR;                                                     
                                                                      
  if (*pipep == NULL) {                                               
   4cd40:	4a94           	tstl %a4@                                   <== NOT EXECUTED
   4cd42:	6700 020e      	beqw 4cf52 <fifo_open+0x26a>                <== NOT EXECUTED
    else                                                              
      *pipep = pipe;                                                  
  }                                                                   
                                                                      
out:                                                                  
  rtems_semaphore_release(rtems_pipe_semaphore);                      
   4cd46:	2f39 0005 e724 	movel 5e724 <rtems_pipe_semaphore>,%sp@-    <== NOT EXECUTED
   4cd4c:	4bf9 0004 5e68 	lea 45e68 <rtems_semaphore_release>,%a5     <== NOT EXECUTED
   4cd52:	4e95           	jsr %a5@                                    <== NOT EXECUTED
  pipe_control_t *pipe;                                               
  uint prevCounter;                                                   
  int err;                                                            
                                                                      
  err = pipe_new(pipep);                                              
  if (err)                                                            
   4cd54:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4cd56:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4cd58:	66bc           	bnes 4cd16 <fifo_open+0x2e>                 <== NOT EXECUTED
    return err;                                                       
  pipe = *pipep;                                                      
                                                                      
  switch (LIBIO_ACCMODE(iop)) {                                       
   4cd5a:	2043           	moveal %d3,%a0                              <== NOT EXECUTED
   4cd5c:	7006           	moveq #6,%d0                                <== NOT EXECUTED
   4cd5e:	7404           	moveq #4,%d2                                <== NOT EXECUTED
   4cd60:	2228 0014      	movel %a0@(20),%d1                          <== NOT EXECUTED
   4cd64:	c081           	andl %d1,%d0                                <== NOT EXECUTED
  int err;                                                            
                                                                      
  err = pipe_new(pipep);                                              
  if (err)                                                            
    return err;                                                       
  pipe = *pipep;                                                      
   4cd66:	2454           	moveal %a4@,%a2                             <== NOT EXECUTED
                                                                      
  switch (LIBIO_ACCMODE(iop)) {                                       
   4cd68:	b480           	cmpl %d0,%d2                                <== NOT EXECUTED
   4cd6a:	6700 0212      	beqw 4cf7e <fifo_open+0x296>                <== NOT EXECUTED
   4cd6e:	7206           	moveq #6,%d1                                <== NOT EXECUTED
   4cd70:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   4cd72:	6700 0232      	beqw 4cfa6 <fifo_open+0x2be>                <== NOT EXECUTED
   4cd76:	143c 0002      	moveb #2,%d2                                <== NOT EXECUTED
   4cd7a:	b480           	cmpl %d0,%d2                                <== NOT EXECUTED
   4cd7c:	6720           	beqs 4cd9e <fifo_open+0xb6>                 <== NOT EXECUTED
      if (pipe->Writers ++ == 0)                                      
        PIPE_WAKEUPREADERS(pipe);                                     
      break;                                                          
  }                                                                   
                                                                      
  PIPE_UNLOCK(pipe);                                                  
   4cd7e:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4cd82:	95ca           	subal %a2,%a2                               <== NOT EXECUTED
   4cd84:	4e95           	jsr %a5@                                    <== NOT EXECUTED
  return 0;                                                           
   4cd86:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
out_error:                                                            
  pipe_release(pipep, iop);                                           
  return err;                                                         
}                                                                     
   4cd88:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   4cd8a:	4cee 3c1c ffdc 	moveml %fp@(-36),%d2-%d4/%a2-%a5            <== NOT EXECUTED
   4cd90:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4cd92:	4e75           	rts                                         <== NOT EXECUTED
    err = pipe_alloc(&pipe);                                          
    if (err)                                                          
      goto out;                                                       
  }                                                                   
                                                                      
  if (! PIPE_LOCK(pipe))                                              
   4cd94:	95ca           	subal %a2,%a2                               <== NOT EXECUTED
    err = -EINTR;                                                     
                                                                      
  if (*pipep == NULL) {                                               
   4cd96:	4a94           	tstl %a4@                                   <== NOT EXECUTED
   4cd98:	66ac           	bnes 4cd46 <fifo_open+0x5e>                 <== NOT EXECUTED
   4cd9a:	6000 01b6      	braw 4cf52 <fifo_open+0x26a>                <== NOT EXECUTED
  pipe = *pipep;                                                      
                                                                      
  switch (LIBIO_ACCMODE(iop)) {                                       
    case LIBIO_FLAGS_READ:                                            
      pipe->readerCounter ++;                                         
      if (pipe->Readers ++ == 0)                                      
   4cd9e:	202a 0010      	movel %a2@(16),%d0                          <== NOT EXECUTED
   4cda2:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4cda4:	5288           	addql #1,%a0                                <== NOT EXECUTED
    return err;                                                       
  pipe = *pipep;                                                      
                                                                      
  switch (LIBIO_ACCMODE(iop)) {                                       
    case LIBIO_FLAGS_READ:                                            
      pipe->readerCounter ++;                                         
   4cda6:	52aa 0020      	addql #1,%a2@(32)                           <== NOT EXECUTED
      if (pipe->Readers ++ == 0)                                      
   4cdaa:	2548 0010      	movel %a0,%a2@(16)                          <== NOT EXECUTED
   4cdae:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4cdb0:	6700 02a6      	beqw 4d058 <fifo_open+0x370>                <== NOT EXECUTED
        PIPE_WAKEUPWRITERS(pipe);                                     
                                                                      
      if (pipe->Writers == 0) {                                       
   4cdb4:	4aaa 0014      	tstl %a2@(20)                               <== NOT EXECUTED
   4cdb8:	66c4           	bnes 4cd7e <fifo_open+0x96>                 <== NOT EXECUTED
        /* Not an error */                                            
        if (LIBIO_NODELAY(iop))                                       
   4cdba:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4cdbc:	2043           	moveal %d3,%a0                              <== NOT EXECUTED
   4cdbe:	c0a8 0014      	andl %a0@(20),%d0                           <== NOT EXECUTED
   4cdc2:	66ba           	bnes 4cd7e <fifo_open+0x96>                 <== NOT EXECUTED
          break;                                                      
                                                                      
        prevCounter = pipe->writerCounter;                            
   4cdc4:	282a 0024      	movel %a2@(36),%d4                          <== NOT EXECUTED
   4cdc8:	243c 0004 dafc 	movel #318204,%d2                           <== NOT EXECUTED
        err = -EINTR;                                                 
        /* Wait until a writer opens the pipe */                      
        do {                                                          
          PIPE_UNLOCK(pipe);                                          
   4cdce:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4cdd2:	4e95           	jsr %a5@                                    <== NOT EXECUTED
          if (! PIPE_READWAIT(pipe))                                  
   4cdd4:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4cdd6:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4cdd8:	2f2a 002c      	movel %a2@(44),%sp@-                        <== NOT EXECUTED
   4cddc:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4cdde:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4cde2:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4cde4:	6600 0344      	bnew 4d12a <fifo_open+0x442>                <== NOT EXECUTED
            goto out_error;                                           
          if (! PIPE_LOCK(pipe))                                      
   4cde8:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4cdea:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4cdec:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4cdf0:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   4cdf2:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4cdf6:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4cdf8:	6600 0330      	bnew 4d12a <fifo_open+0x442>                <== NOT EXECUTED
            goto out_error;                                           
        } while (prevCounter == pipe->writerCounter);                 
   4cdfc:	b8aa 0024      	cmpl %a2@(36),%d4                           <== NOT EXECUTED
   4ce00:	67cc           	beqs 4cdce <fifo_open+0xe6>                 <== NOT EXECUTED
      if (pipe->Writers ++ == 0)                                      
        PIPE_WAKEUPREADERS(pipe);                                     
      break;                                                          
  }                                                                   
                                                                      
  PIPE_UNLOCK(pipe);                                                  
   4ce02:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4ce06:	95ca           	subal %a2,%a2                               <== NOT EXECUTED
   4ce08:	4e95           	jsr %a5@                                    <== NOT EXECUTED
  return 0;                                                           
   4ce0a:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4ce0c:	6000 ff7a      	braw 4cd88 <fifo_open+0xa0>                 <== NOT EXECUTED
{                                                                     
  static char c = 'a';                                                
  pipe_control_t *pipe;                                               
  int err = -ENOMEM;                                                  
                                                                      
  pipe = malloc(sizeof(pipe_control_t));                              
   4ce10:	4878 0034      	pea 34 <OPER2+0x20>                         <== NOT EXECUTED
   4ce14:	45f9 0004 ac8c 	lea 4ac8c <malloc>,%a2                      <== NOT EXECUTED
   4ce1a:	4e92           	jsr %a2@                                    <== NOT EXECUTED
  if (pipe == NULL)                                                   
   4ce1c:	588f           	addql #4,%sp                                <== NOT EXECUTED
{                                                                     
  static char c = 'a';                                                
  pipe_control_t *pipe;                                               
  int err = -ENOMEM;                                                  
                                                                      
  pipe = malloc(sizeof(pipe_control_t));                              
   4ce1e:	2a40           	moveal %d0,%a5                              <== NOT EXECUTED
   4ce20:	2400           	movel %d0,%d2                               <== NOT EXECUTED
  if (pipe == NULL)                                                   
   4ce22:	6700 031a      	beqw 4d13e <fifo_open+0x456>                <== NOT EXECUTED
    return err;                                                       
  memset(pipe, 0, sizeof(pipe_control_t));                            
                                                                      
  pipe->Size = PIPE_BUF;                                              
  pipe->Buffer = malloc(pipe->Size);                                  
   4ce26:	4878 0200      	pea 200 <DBL_MANT_DIG+0x1cb>                <== NOT EXECUTED
  int err = -ENOMEM;                                                  
                                                                      
  pipe = malloc(sizeof(pipe_control_t));                              
  if (pipe == NULL)                                                   
    return err;                                                       
  memset(pipe, 0, sizeof(pipe_control_t));                            
   4ce2a:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
                                                                      
  pipe->Size = PIPE_BUF;                                              
   4ce2c:	203c 0000 0200 	movel #512,%d0                              <== NOT EXECUTED
  int err = -ENOMEM;                                                  
                                                                      
  pipe = malloc(sizeof(pipe_control_t));                              
  if (pipe == NULL)                                                   
    return err;                                                       
  memset(pipe, 0, sizeof(pipe_control_t));                            
   4ce32:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   4ce34:	5888           	addql #4,%a0                                <== NOT EXECUTED
   4ce36:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   4ce38:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   4ce3a:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   4ce3c:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   4ce3e:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   4ce40:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   4ce42:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   4ce44:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   4ce46:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   4ce48:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   4ce4a:	4290           	clrl %a0@                                   <== NOT EXECUTED
                                                                      
  pipe->Size = PIPE_BUF;                                              
   4ce4c:	2b40 0004      	movel %d0,%a5@(4)                           <== NOT EXECUTED
  pipe->Buffer = malloc(pipe->Size);                                  
   4ce50:	4e92           	jsr %a2@                                    <== NOT EXECUTED
  if (! pipe->Buffer)                                                 
   4ce52:	588f           	addql #4,%sp                                <== NOT EXECUTED
  if (pipe == NULL)                                                   
    return err;                                                       
  memset(pipe, 0, sizeof(pipe_control_t));                            
                                                                      
  pipe->Size = PIPE_BUF;                                              
  pipe->Buffer = malloc(pipe->Size);                                  
   4ce54:	2a80           	movel %d0,%a5@                              <== NOT EXECUTED
  if (! pipe->Buffer)                                                 
   4ce56:	6700 0304      	beqw 4d15c <fifo_open+0x474>                <== NOT EXECUTED
    goto err_buf;                                                     
                                                                      
  err = -EINTR;                                                       
  if (rtems_barrier_create(                                           
   4ce5a:	486d 002c      	pea %a5@(44)                                <== NOT EXECUTED
   4ce5e:	45f9 0004 d918 	lea 4d918 <rtems_barrier_create>,%a2        <== NOT EXECUTED
   4ce64:	1039 0005 d8b0 	moveb 5d8b0 <c.6740>,%d0                    <== NOT EXECUTED
   4ce6a:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4ce6c:	49c0           	extbl %d0                                   <== NOT EXECUTED
   4ce6e:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4ce70:	0080 5049 7200 	oril #1346990592,%d0                        <== NOT EXECUTED
   4ce76:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4ce78:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   4ce7a:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   4ce7e:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4ce80:	6600 0226      	bnew 4d0a8 <fifo_open+0x3c0>                <== NOT EXECUTED
        rtems_build_name ('P', 'I', 'r', c),                          
        RTEMS_BARRIER_MANUAL_RELEASE, 0,                              
        &pipe->readBarrier) != RTEMS_SUCCESSFUL)                      
    goto err_rbar;                                                    
  if (rtems_barrier_create(                                           
   4ce84:	486d 0030      	pea %a5@(48)                                <== NOT EXECUTED
   4ce88:	283c 0004 da14 	movel #317972,%d4                           <== NOT EXECUTED
   4ce8e:	1039 0005 d8b0 	moveb 5d8b0 <c.6740>,%d0                    <== NOT EXECUTED
   4ce94:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4ce96:	49c0           	extbl %d0                                   <== NOT EXECUTED
   4ce98:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4ce9a:	0080 5049 7700 	oril #1346991872,%d0                        <== NOT EXECUTED
   4cea0:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4cea2:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   4cea4:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   4cea8:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4ceaa:	6600 01f2      	bnew 4d09e <fifo_open+0x3b6>                <== NOT EXECUTED
        rtems_build_name ('P', 'I', 'w', c),                          
        RTEMS_BARRIER_MANUAL_RELEASE, 0,                              
        &pipe->writeBarrier) != RTEMS_SUCCESSFUL)                     
    goto err_wbar;                                                    
  if (rtems_semaphore_create(                                         
   4ceae:	486d 0028      	pea %a5@(40)                                <== NOT EXECUTED
   4ceb2:	1039 0005 d8b0 	moveb 5d8b0 <c.6740>,%d0                    <== NOT EXECUTED
   4ceb8:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4ceba:	4878 0010      	pea 10 <INVALID_OPERATION>                  <== NOT EXECUTED
   4cebe:	49c0           	extbl %d0                                   <== NOT EXECUTED
   4cec0:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   4cec4:	0080 5049 7300 	oril #1346990848,%d0                        <== NOT EXECUTED
   4ceca:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4cecc:	4eb9 0004 5a8c 	jsr 45a8c <rtems_semaphore_create>          <== NOT EXECUTED
   4ced2:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   4ced6:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4ced8:	6600 01ba      	bnew 4d094 <fifo_open+0x3ac>                <== NOT EXECUTED
RTEMS_INLINE_ROUTINE Barrier_Control *_Barrier_Get (                  
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Barrier_Control *)                                          
   4cedc:	280e           	movel %fp,%d4                               <== NOT EXECUTED
   4cede:	5184           	subql #8,%d4                                <== NOT EXECUTED
   4cee0:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4cee2:	4bf9 0004 752c 	lea 4752c <_Objects_Get>,%a5                <== NOT EXECUTED
{                                                                     
  Objects_Locations location;                                         
                                                                      
  _Barrier_Get(pipe->readBarrier, &location)->Barrier.Wait_queue.state
    |= STATES_INTERRUPTIBLE_BY_SIGNAL;                                
  _Thread_Enable_dispatch();                                          
   4cee8:	45f9 0004 7dbc 	lea 47dbc <_Thread_Enable_dispatch>,%a2     <== NOT EXECUTED
   4ceee:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4cef0:	2f28 002c      	movel %a0@(44),%sp@-                        <== NOT EXECUTED
   4cef4:	4879 0005 f80c 	pea 5f80c <_Barrier_Information>            <== NOT EXECUTED
   4cefa:	4e95           	jsr %a5@                                    <== NOT EXECUTED
/* Set barriers to be interruptible by signals. */                    
static void pipe_interruptible(pipe_control_t *pipe)                  
{                                                                     
  Objects_Locations location;                                         
                                                                      
  _Barrier_Get(pipe->readBarrier, &location)->Barrier.Wait_queue.state
   4cefc:	223c 1000 0000 	movel #268435456,%d1                        <== NOT EXECUTED
   4cf02:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4cf04:	83a8 004c      	orl %d1,%a0@(76)                            <== NOT EXECUTED
    |= STATES_INTERRUPTIBLE_BY_SIGNAL;                                
  _Thread_Enable_dispatch();                                          
   4cf08:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   4cf0a:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4cf0c:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4cf0e:	2f28 0030      	movel %a0@(48),%sp@-                        <== NOT EXECUTED
   4cf12:	4879 0005 f80c 	pea 5f80c <_Barrier_Information>            <== NOT EXECUTED
   4cf18:	4e95           	jsr %a5@                                    <== NOT EXECUTED
  _Barrier_Get(pipe->writeBarrier, &location)->Barrier.Wait_queue.state
   4cf1a:	223c 1000 0000 	movel #268435456,%d1                        <== NOT EXECUTED
   4cf20:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4cf22:	83a8 004c      	orl %d1,%a0@(76)                            <== NOT EXECUTED
    |= STATES_INTERRUPTIBLE_BY_SIGNAL;                                
  _Thread_Enable_dispatch();                                          
   4cf26:	4e92           	jsr %a2@                                    <== NOT EXECUTED
#ifdef RTEMS_POSIX_API                                                
  pipe_interruptible(pipe);                                           
#endif                                                                
                                                                      
  *pipep = pipe;                                                      
  if (c ++ == 'z')                                                    
   4cf28:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
   4cf2c:	1039 0005 d8b0 	moveb 5d8b0 <c.6740>,%d0                    <== NOT EXECUTED
   4cf32:	49c0           	extbl %d0                                   <== NOT EXECUTED
   4cf34:	2200           	movel %d0,%d1                               <== NOT EXECUTED
   4cf36:	5281           	addql #1,%d1                                <== NOT EXECUTED
   4cf38:	13c1 0005 d8b0 	moveb %d1,5d8b0 <c.6740>                    <== NOT EXECUTED
   4cf3e:	727a           	moveq #122,%d1                              <== NOT EXECUTED
   4cf40:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   4cf42:	6600 fde4      	bnew 4cd28 <fifo_open+0x40>                 <== NOT EXECUTED
    c = 'a';                                                          
   4cf46:	7061           	moveq #97,%d0                               <== NOT EXECUTED
   4cf48:	13c0 0005 d8b0 	moveb %d0,5d8b0 <c.6740>                    <== NOT EXECUTED
   4cf4e:	6000 fdd8      	braw 4cd28 <fifo_open+0x40>                 <== NOT EXECUTED
                                                                      
  if (! PIPE_LOCK(pipe))                                              
    err = -EINTR;                                                     
                                                                      
  if (*pipep == NULL) {                                               
    if (err)                                                          
   4cf52:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4cf54:	6600 0186      	bnew 4d0dc <fifo_open+0x3f4>                <== NOT EXECUTED
    else                                                              
      *pipep = pipe;                                                  
  }                                                                   
                                                                      
out:                                                                  
  rtems_semaphore_release(rtems_pipe_semaphore);                      
   4cf58:	2f39 0005 e724 	movel 5e724 <rtems_pipe_semaphore>,%sp@-    <== NOT EXECUTED
   4cf5e:	4bf9 0004 5e68 	lea 45e68 <rtems_semaphore_release>,%a5     <== NOT EXECUTED
                                                                      
  if (*pipep == NULL) {                                               
    if (err)                                                          
      pipe_free(pipe);                                                
    else                                                              
      *pipep = pipe;                                                  
   4cf64:	2882           	movel %d2,%a4@                              <== NOT EXECUTED
  err = pipe_new(pipep);                                              
  if (err)                                                            
    return err;                                                       
  pipe = *pipep;                                                      
                                                                      
  switch (LIBIO_ACCMODE(iop)) {                                       
   4cf66:	7404           	moveq #4,%d2                                <== NOT EXECUTED
    else                                                              
      *pipep = pipe;                                                  
  }                                                                   
                                                                      
out:                                                                  
  rtems_semaphore_release(rtems_pipe_semaphore);                      
   4cf68:	4e95           	jsr %a5@                                    <== NOT EXECUTED
  int err;                                                            
                                                                      
  err = pipe_new(pipep);                                              
  if (err)                                                            
    return err;                                                       
  pipe = *pipep;                                                      
   4cf6a:	2454           	moveal %a4@,%a2                             <== NOT EXECUTED
                                                                      
  switch (LIBIO_ACCMODE(iop)) {                                       
   4cf6c:	2043           	moveal %d3,%a0                              <== NOT EXECUTED
   4cf6e:	7006           	moveq #6,%d0                                <== NOT EXECUTED
    else                                                              
      *pipep = pipe;                                                  
  }                                                                   
                                                                      
out:                                                                  
  rtems_semaphore_release(rtems_pipe_semaphore);                      
   4cf70:	588f           	addql #4,%sp                                <== NOT EXECUTED
  err = pipe_new(pipep);                                              
  if (err)                                                            
    return err;                                                       
  pipe = *pipep;                                                      
                                                                      
  switch (LIBIO_ACCMODE(iop)) {                                       
   4cf72:	2228 0014      	movel %a0@(20),%d1                          <== NOT EXECUTED
   4cf76:	c081           	andl %d1,%d0                                <== NOT EXECUTED
   4cf78:	b480           	cmpl %d0,%d2                                <== NOT EXECUTED
   4cf7a:	6600 fdf2      	bnew 4cd6e <fifo_open+0x86>                 <== NOT EXECUTED
        } while (prevCounter == pipe->writerCounter);                 
      }                                                               
      break;                                                          
                                                                      
    case LIBIO_FLAGS_WRITE:                                           
      if (pipe->Readers == 0 && LIBIO_NODELAY(iop)) {                 
   4cf7e:	4aaa 0010      	tstl %a2@(16)                               <== NOT EXECUTED
   4cf82:	666c           	bnes 4cff0 <fifo_open+0x308>                <== NOT EXECUTED
   4cf84:	0801 0000      	btst #0,%d1                                 <== NOT EXECUTED
   4cf88:	6766           	beqs 4cff0 <fifo_open+0x308>                <== NOT EXECUTED
                                                                      
  PIPE_UNLOCK(pipe);                                                  
  return 0;                                                           
                                                                      
out_error:                                                            
  pipe_release(pipep, iop);                                           
   4cf8a:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
        } while (prevCounter == pipe->writerCounter);                 
      }                                                               
      break;                                                          
                                                                      
    case LIBIO_FLAGS_WRITE:                                           
      if (pipe->Readers == 0 && LIBIO_NODELAY(iop)) {                 
   4cf8c:	347c fffa      	moveaw #-6,%a2                              <== NOT EXECUTED
                                                                      
  PIPE_UNLOCK(pipe);                                                  
  return 0;                                                           
                                                                      
out_error:                                                            
  pipe_release(pipep, iop);                                           
   4cf90:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   4cf92:	4eb9 0004 cbc8 	jsr 4cbc8 <pipe_release>                    <== NOT EXECUTED
  return err;                                                         
   4cf98:	508f           	addql #8,%sp                                <== NOT EXECUTED
}                                                                     
   4cf9a:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   4cf9c:	4cee 3c1c ffdc 	moveml %fp@(-36),%d2-%d4/%a2-%a5            <== NOT EXECUTED
   4cfa2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4cfa4:	4e75           	rts                                         <== NOT EXECUTED
      }                                                               
      break;                                                          
                                                                      
    case LIBIO_FLAGS_READ_WRITE:                                      
      pipe->readerCounter ++;                                         
      if (pipe->Readers ++ == 0)                                      
   4cfa6:	202a 0010      	movel %a2@(16),%d0                          <== NOT EXECUTED
   4cfaa:	2200           	movel %d0,%d1                               <== NOT EXECUTED
   4cfac:	5281           	addql #1,%d1                                <== NOT EXECUTED
        } while (prevCounter == pipe->readerCounter);                 
      }                                                               
      break;                                                          
                                                                      
    case LIBIO_FLAGS_READ_WRITE:                                      
      pipe->readerCounter ++;                                         
   4cfae:	52aa 0020      	addql #1,%a2@(32)                           <== NOT EXECUTED
      if (pipe->Readers ++ == 0)                                      
   4cfb2:	2541 0010      	movel %d1,%a2@(16)                          <== NOT EXECUTED
   4cfb6:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4cfb8:	6700 00b2      	beqw 4d06c <fifo_open+0x384>                <== NOT EXECUTED
        PIPE_WAKEUPWRITERS(pipe);                                     
      pipe->writerCounter ++;                                         
      if (pipe->Writers ++ == 0)                                      
   4cfbc:	202a 0014      	movel %a2@(20),%d0                          <== NOT EXECUTED
   4cfc0:	2400           	movel %d0,%d2                               <== NOT EXECUTED
   4cfc2:	5282           	addql #1,%d2                                <== NOT EXECUTED
                                                                      
    case LIBIO_FLAGS_READ_WRITE:                                      
      pipe->readerCounter ++;                                         
      if (pipe->Readers ++ == 0)                                      
        PIPE_WAKEUPWRITERS(pipe);                                     
      pipe->writerCounter ++;                                         
   4cfc4:	52aa 0024      	addql #1,%a2@(36)                           <== NOT EXECUTED
      if (pipe->Writers ++ == 0)                                      
   4cfc8:	2542 0014      	movel %d2,%a2@(20)                          <== NOT EXECUTED
   4cfcc:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4cfce:	6600 fdae      	bnew 4cd7e <fifo_open+0x96>                 <== NOT EXECUTED
        PIPE_WAKEUPREADERS(pipe);                                     
   4cfd2:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4cfd6:	2f2a 002c      	movel %a2@(44),%sp@-                        <== NOT EXECUTED
   4cfda:	4eb9 0004 da84 	jsr 4da84 <rtems_barrier_release>           <== NOT EXECUTED
   4cfe0:	508f           	addql #8,%sp                                <== NOT EXECUTED
      break;                                                          
  }                                                                   
                                                                      
  PIPE_UNLOCK(pipe);                                                  
   4cfe2:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4cfe6:	95ca           	subal %a2,%a2                               <== NOT EXECUTED
   4cfe8:	4e95           	jsr %a5@                                    <== NOT EXECUTED
  return 0;                                                           
   4cfea:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4cfec:	6000 fd9a      	braw 4cd88 <fifo_open+0xa0>                 <== NOT EXECUTED
        err = -ENXIO;                                                 
        goto out_error;                                               
      }                                                               
                                                                      
      pipe->writerCounter ++;                                         
      if (pipe->Writers ++ == 0)                                      
   4cff0:	202a 0014      	movel %a2@(20),%d0                          <== NOT EXECUTED
   4cff4:	2200           	movel %d0,%d1                               <== NOT EXECUTED
   4cff6:	5281           	addql #1,%d1                                <== NOT EXECUTED
      if (pipe->Readers == 0 && LIBIO_NODELAY(iop)) {                 
        err = -ENXIO;                                                 
        goto out_error;                                               
      }                                                               
                                                                      
      pipe->writerCounter ++;                                         
   4cff8:	52aa 0024      	addql #1,%a2@(36)                           <== NOT EXECUTED
      if (pipe->Writers ++ == 0)                                      
   4cffc:	2541 0014      	movel %d1,%a2@(20)                          <== NOT EXECUTED
   4d000:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4d002:	677c           	beqs 4d080 <fifo_open+0x398>                <== NOT EXECUTED
        PIPE_WAKEUPREADERS(pipe);                                     
                                                                      
      if (pipe->Readers == 0) {                                       
   4d004:	4aaa 0010      	tstl %a2@(16)                               <== NOT EXECUTED
   4d008:	6600 fd74      	bnew 4cd7e <fifo_open+0x96>                 <== NOT EXECUTED
        prevCounter = pipe->readerCounter;                            
   4d00c:	282a 0020      	movel %a2@(32),%d4                          <== NOT EXECUTED
   4d010:	243c 0004 dafc 	movel #318204,%d2                           <== NOT EXECUTED
        err = -EINTR;                                                 
        do {                                                          
          PIPE_UNLOCK(pipe);                                          
   4d016:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4d01a:	4e95           	jsr %a5@                                    <== NOT EXECUTED
          if (! PIPE_WRITEWAIT(pipe))                                 
   4d01c:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4d01e:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4d020:	2f2a 0030      	movel %a2@(48),%sp@-                        <== NOT EXECUTED
   4d024:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4d026:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4d02a:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4d02c:	6600 00fc      	bnew 4d12a <fifo_open+0x442>                <== NOT EXECUTED
            goto out_error;                                           
          if (! PIPE_LOCK(pipe))                                      
   4d030:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4d032:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4d034:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4d038:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   4d03a:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4d03e:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4d040:	6600 00e8      	bnew 4d12a <fifo_open+0x442>                <== NOT EXECUTED
            goto out_error;                                           
        } while (prevCounter == pipe->readerCounter);                 
   4d044:	b8aa 0020      	cmpl %a2@(32),%d4                           <== NOT EXECUTED
   4d048:	67cc           	beqs 4d016 <fifo_open+0x32e>                <== NOT EXECUTED
      if (pipe->Writers ++ == 0)                                      
        PIPE_WAKEUPREADERS(pipe);                                     
      break;                                                          
  }                                                                   
                                                                      
  PIPE_UNLOCK(pipe);                                                  
   4d04a:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4d04e:	95ca           	subal %a2,%a2                               <== NOT EXECUTED
   4d050:	4e95           	jsr %a5@                                    <== NOT EXECUTED
  return 0;                                                           
   4d052:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4d054:	6000 fd32      	braw 4cd88 <fifo_open+0xa0>                 <== NOT EXECUTED
                                                                      
  switch (LIBIO_ACCMODE(iop)) {                                       
    case LIBIO_FLAGS_READ:                                            
      pipe->readerCounter ++;                                         
      if (pipe->Readers ++ == 0)                                      
        PIPE_WAKEUPWRITERS(pipe);                                     
   4d058:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4d05c:	2f2a 0030      	movel %a2@(48),%sp@-                        <== NOT EXECUTED
   4d060:	4eb9 0004 da84 	jsr 4da84 <rtems_barrier_release>           <== NOT EXECUTED
   4d066:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4d068:	6000 fd4a      	braw 4cdb4 <fifo_open+0xcc>                 <== NOT EXECUTED
      break;                                                          
                                                                      
    case LIBIO_FLAGS_READ_WRITE:                                      
      pipe->readerCounter ++;                                         
      if (pipe->Readers ++ == 0)                                      
        PIPE_WAKEUPWRITERS(pipe);                                     
   4d06c:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4d070:	2f2a 0030      	movel %a2@(48),%sp@-                        <== NOT EXECUTED
   4d074:	4eb9 0004 da84 	jsr 4da84 <rtems_barrier_release>           <== NOT EXECUTED
   4d07a:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4d07c:	6000 ff3e      	braw 4cfbc <fifo_open+0x2d4>                <== NOT EXECUTED
        goto out_error;                                               
      }                                                               
                                                                      
      pipe->writerCounter ++;                                         
      if (pipe->Writers ++ == 0)                                      
        PIPE_WAKEUPREADERS(pipe);                                     
   4d080:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4d084:	2f2a 002c      	movel %a2@(44),%sp@-                        <== NOT EXECUTED
   4d088:	4eb9 0004 da84 	jsr 4da84 <rtems_barrier_release>           <== NOT EXECUTED
   4d08e:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4d090:	6000 ff72      	braw 4d004 <fifo_open+0x31c>                <== NOT EXECUTED
  if (c ++ == 'z')                                                    
    c = 'a';                                                          
  return 0;                                                           
                                                                      
err_sem:                                                              
  rtems_barrier_delete(pipe->writeBarrier);                           
   4d094:	2f2d 0030      	movel %a5@(48),%sp@-                        <== NOT EXECUTED
   4d098:	2044           	moveal %d4,%a0                              <== NOT EXECUTED
   4d09a:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4d09c:	588f           	addql #4,%sp                                <== NOT EXECUTED
err_wbar:                                                             
  rtems_barrier_delete(pipe->readBarrier);                            
   4d09e:	2f2d 002c      	movel %a5@(44),%sp@-                        <== NOT EXECUTED
   4d0a2:	2044           	moveal %d4,%a0                              <== NOT EXECUTED
   4d0a4:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4d0a6:	588f           	addql #4,%sp                                <== NOT EXECUTED
err_rbar:                                                             
  free(pipe->Buffer);                                                 
   4d0a8:	2f15           	movel %a5@,%sp@-                            <== NOT EXECUTED
   4d0aa:	243c 0004 a6f4 	movel #304884,%d2                           <== NOT EXECUTED
   4d0b0:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4d0b2:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4d0b4:	588f           	addql #4,%sp                                <== NOT EXECUTED
err_buf:                                                              
  free(pipe);                                                         
   4d0b6:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
err_sem:                                                              
  rtems_barrier_delete(pipe->writeBarrier);                           
err_wbar:                                                             
  rtems_barrier_delete(pipe->readBarrier);                            
err_rbar:                                                             
  free(pipe->Buffer);                                                 
   4d0b8:	347c fffc      	moveaw #-4,%a2                              <== NOT EXECUTED
err_buf:                                                              
  free(pipe);                                                         
   4d0bc:	2f0d           	movel %a5,%sp@-                             <== NOT EXECUTED
   4d0be:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4d0c0:	588f           	addql #4,%sp                                <== NOT EXECUTED
    else                                                              
      *pipep = pipe;                                                  
  }                                                                   
                                                                      
out:                                                                  
  rtems_semaphore_release(rtems_pipe_semaphore);                      
   4d0c2:	2f39 0005 e724 	movel 5e724 <rtems_pipe_semaphore>,%sp@-    <== NOT EXECUTED
   4d0c8:	4bf9 0004 5e68 	lea 45e68 <rtems_semaphore_release>,%a5     <== NOT EXECUTED
   4d0ce:	4e95           	jsr %a5@                                    <== NOT EXECUTED
  pipe_control_t *pipe;                                               
  uint prevCounter;                                                   
  int err;                                                            
                                                                      
  err = pipe_new(pipep);                                              
  if (err)                                                            
   4d0d0:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4d0d2:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4d0d4:	6700 fc84      	beqw 4cd5a <fifo_open+0x72>                 <== NOT EXECUTED
   4d0d8:	6000 fc3c      	braw 4cd16 <fifo_open+0x2e>                 <== NOT EXECUTED
/* Called with rtems_pipe_semaphore held. */                          
static inline void pipe_free(                                         
  pipe_control_t *pipe                                                
)                                                                     
{                                                                     
  rtems_barrier_delete(pipe->readBarrier);                            
   4d0dc:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4d0de:	49f9 0004 da14 	lea 4da14 <rtems_barrier_delete>,%a4        <== NOT EXECUTED
  rtems_barrier_delete(pipe->writeBarrier);                           
  rtems_semaphore_delete(pipe->Semaphore);                            
  free(pipe->Buffer);                                                 
   4d0e4:	47f9 0004 a6f4 	lea 4a6f4 <free>,%a3                        <== NOT EXECUTED
/* Called with rtems_pipe_semaphore held. */                          
static inline void pipe_free(                                         
  pipe_control_t *pipe                                                
)                                                                     
{                                                                     
  rtems_barrier_delete(pipe->readBarrier);                            
   4d0ea:	2f28 002c      	movel %a0@(44),%sp@-                        <== NOT EXECUTED
   4d0ee:	4e94           	jsr %a4@                                    <== NOT EXECUTED
  rtems_barrier_delete(pipe->writeBarrier);                           
   4d0f0:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4d0f2:	2f28 0030      	movel %a0@(48),%sp@-                        <== NOT EXECUTED
   4d0f6:	4e94           	jsr %a4@                                    <== NOT EXECUTED
  rtems_semaphore_delete(pipe->Semaphore);                            
   4d0f8:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4d0fa:	2f28 0028      	movel %a0@(40),%sp@-                        <== NOT EXECUTED
   4d0fe:	4eb9 0004 5c54 	jsr 45c54 <rtems_semaphore_delete>          <== NOT EXECUTED
  free(pipe->Buffer);                                                 
   4d104:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4d106:	2f10           	movel %a0@,%sp@-                            <== NOT EXECUTED
   4d108:	4e93           	jsr %a3@                                    <== NOT EXECUTED
  free(pipe);                                                         
   4d10a:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4d10c:	4e93           	jsr %a3@                                    <== NOT EXECUTED
    else                                                              
      *pipep = pipe;                                                  
  }                                                                   
                                                                      
out:                                                                  
  rtems_semaphore_release(rtems_pipe_semaphore);                      
   4d10e:	2f39 0005 e724 	movel 5e724 <rtems_pipe_semaphore>,%sp@-    <== NOT EXECUTED
   4d114:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
   4d11a:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
  return 0;                                                           
                                                                      
out_error:                                                            
  pipe_release(pipep, iop);                                           
  return err;                                                         
}                                                                     
   4d11e:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   4d120:	4cee 3c1c ffdc 	moveml %fp@(-36),%d2-%d4/%a2-%a5            <== NOT EXECUTED
   4d126:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4d128:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  PIPE_UNLOCK(pipe);                                                  
  return 0;                                                           
                                                                      
out_error:                                                            
  pipe_release(pipep, iop);                                           
   4d12a:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
        PIPE_WAKEUPREADERS(pipe);                                     
      break;                                                          
  }                                                                   
                                                                      
  PIPE_UNLOCK(pipe);                                                  
  return 0;                                                           
   4d12c:	347c fffc      	moveaw #-4,%a2                              <== NOT EXECUTED
                                                                      
out_error:                                                            
  pipe_release(pipep, iop);                                           
   4d130:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   4d132:	4eb9 0004 cbc8 	jsr 4cbc8 <pipe_release>                    <== NOT EXECUTED
  return err;                                                         
   4d138:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4d13a:	6000 fe5e      	braw 4cf9a <fifo_open+0x2b2>                <== NOT EXECUTED
    else                                                              
      *pipep = pipe;                                                  
  }                                                                   
                                                                      
out:                                                                  
  rtems_semaphore_release(rtems_pipe_semaphore);                      
   4d13e:	2f39 0005 e724 	movel 5e724 <rtems_pipe_semaphore>,%sp@-    <== NOT EXECUTED
   4d144:	4bf9 0004 5e68 	lea 45e68 <rtems_semaphore_release>,%a5     <== NOT EXECUTED
  static char c = 'a';                                                
  pipe_control_t *pipe;                                               
  int err = -ENOMEM;                                                  
                                                                      
  pipe = malloc(sizeof(pipe_control_t));                              
  if (pipe == NULL)                                                   
   4d14a:	347c fff4      	moveaw #-12,%a2                             <== NOT EXECUTED
    else                                                              
      *pipep = pipe;                                                  
  }                                                                   
                                                                      
out:                                                                  
  rtems_semaphore_release(rtems_pipe_semaphore);                      
   4d14e:	4e95           	jsr %a5@                                    <== NOT EXECUTED
  pipe_control_t *pipe;                                               
  uint prevCounter;                                                   
  int err;                                                            
                                                                      
  err = pipe_new(pipep);                                              
  if (err)                                                            
   4d150:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4d152:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4d154:	6700 fc04      	beqw 4cd5a <fifo_open+0x72>                 <== NOT EXECUTED
   4d158:	6000 fbbc      	braw 4cd16 <fifo_open+0x2e>                 <== NOT EXECUTED
err_wbar:                                                             
  rtems_barrier_delete(pipe->readBarrier);                            
err_rbar:                                                             
  free(pipe->Buffer);                                                 
err_buf:                                                              
  free(pipe);                                                         
   4d15c:	2f0d           	movel %a5,%sp@-                             <== NOT EXECUTED
   4d15e:	243c 0004 a6f4 	movel #304884,%d2                           <== NOT EXECUTED
   4d164:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
    return err;                                                       
  memset(pipe, 0, sizeof(pipe_control_t));                            
                                                                      
  pipe->Size = PIPE_BUF;                                              
  pipe->Buffer = malloc(pipe->Size);                                  
  if (! pipe->Buffer)                                                 
   4d166:	347c fff4      	moveaw #-12,%a2                             <== NOT EXECUTED
err_wbar:                                                             
  rtems_barrier_delete(pipe->readBarrier);                            
err_rbar:                                                             
  free(pipe->Buffer);                                                 
err_buf:                                                              
  free(pipe);                                                         
   4d16a:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4d16c:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4d16e:	6000 ff52      	braw 4d0c2 <fifo_open+0x3da>                <== NOT EXECUTED
	...                                                                  
                                                                      
00068c9c <file_systems_below_this_mountpoint>:                        
bool file_systems_below_this_mountpoint(                              
  const char                            *path __attribute__((unused)),
  rtems_filesystem_location_info_t      *fs_root_loc,                 
  rtems_filesystem_mount_table_entry_t  *fs_to_unmount __attribute__((unused))
)                                                                     
{                                                                     
   68c9c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  /*                                                                  
   * Search the mount table for any mount entries referencing this    
   * mount entry.                                                     
   */                                                                 
                                                                      
  for ( the_node = rtems_filesystem_mount_table_control.first;        
   68ca0:	2079 000a 6964 	moveal a6964 <rtems_filesystem_mount_table_control>,%a0<== NOT EXECUTED
   68ca6:	b1fc 000a 6968 	cmpal #682344,%a0                           <== NOT EXECUTED
   68cac:	6724           	beqs 68cd2 <file_systems_below_this_mountpoint+0x36><== NOT EXECUTED
        !rtems_chain_is_tail( &rtems_filesystem_mount_table_control, the_node );
        the_node = the_node->next ) {                                 
     the_mount_entry = ( rtems_filesystem_mount_table_entry_t * )the_node;
     if (the_mount_entry->mt_point_node.mt_entry  == fs_root_loc->mt_entry ) {
   68cae:	226e 000c      	moveal %fp@(12),%a1                         <== NOT EXECUTED
   68cb2:	2029 0010      	movel %a1@(16),%d0                          <== NOT EXECUTED
   68cb6:	b0a8 0018      	cmpl %a0@(24),%d0                           <== NOT EXECUTED
   68cba:	6710           	beqs 68ccc <file_systems_below_this_mountpoint+0x30><== NOT EXECUTED
   * mount entry.                                                     
   */                                                                 
                                                                      
  for ( the_node = rtems_filesystem_mount_table_control.first;        
        !rtems_chain_is_tail( &rtems_filesystem_mount_table_control, the_node );
        the_node = the_node->next ) {                                 
   68cbc:	2050           	moveal %a0@,%a0                             <== NOT EXECUTED
  /*                                                                  
   * Search the mount table for any mount entries referencing this    
   * mount entry.                                                     
   */                                                                 
                                                                      
  for ( the_node = rtems_filesystem_mount_table_control.first;        
   68cbe:	b1fc 000a 6968 	cmpal #682344,%a0                           <== NOT EXECUTED
   68cc4:	670c           	beqs 68cd2 <file_systems_below_this_mountpoint+0x36><== NOT EXECUTED
        !rtems_chain_is_tail( &rtems_filesystem_mount_table_control, the_node );
        the_node = the_node->next ) {                                 
     the_mount_entry = ( rtems_filesystem_mount_table_entry_t * )the_node;
     if (the_mount_entry->mt_point_node.mt_entry  == fs_root_loc->mt_entry ) {
   68cc6:	b0a8 0018      	cmpl %a0@(24),%d0                           <== NOT EXECUTED
   68cca:	66f0           	bnes 68cbc <file_systems_below_this_mountpoint+0x20><== NOT EXECUTED
        return true;                                                  
     }                                                                
  }                                                                   
                                                                      
  return false;                                                       
}                                                                     
   68ccc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  /*                                                                  
   * Search the mount table for any mount entries referencing this    
   * mount entry.                                                     
   */                                                                 
                                                                      
  for ( the_node = rtems_filesystem_mount_table_control.first;        
   68cce:	7001           	moveq #1,%d0                                <== NOT EXECUTED
        return true;                                                  
     }                                                                
  }                                                                   
                                                                      
  return false;                                                       
}                                                                     
   68cd0:	4e75           	rts                                         <== NOT EXECUTED
   68cd2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  /*                                                                  
   * Search the mount table for any mount entries referencing this    
   * mount entry.                                                     
   */                                                                 
                                                                      
  for ( the_node = rtems_filesystem_mount_table_control.first;        
   68cd4:	4200           	clrb %d0                                    <== NOT EXECUTED
        return true;                                                  
     }                                                                
  }                                                                   
                                                                      
  return false;                                                       
}                                                                     
                                                                      
00043bc4 <fpathconf>:                                                 
                                                                      
long fpathconf(                                                       
  int   fd,                                                           
  int   name                                                          
)                                                                     
{                                                                     
   43bc4:	4e56 0000      	linkw %fp,#0                                
   43bc8:	202e 0008      	movel %fp@(8),%d0                           
   43bcc:	222e 000c      	movel %fp@(12),%d1                          
   43bd0:	2f02           	movel %d2,%sp@-                             
  long                                    return_value;               
  rtems_libio_t                          *iop;                        
  rtems_filesystem_limits_and_options_t  *the_limits;                 
                                                                      
  rtems_libio_check_fd(fd);                                           
   43bd2:	b0b9 0006 1664 	cmpl 61664 <rtems_libio_number_iops>,%d0    
   43bd8:	6400 00f0      	bccw 43cca <fpathconf+0x106>                
  iop = rtems_libio_iop(fd);                                          
   43bdc:	2079 0006 2d6c 	moveal 62d6c <rtems_libio_iops>,%a0         
   43be2:	ed88           	lsll #6,%d0                                 
   43be4:	d1c0           	addal %d0,%a0                               
  rtems_libio_check_is_open(iop);                                     
   43be6:	2428 0014      	movel %a0@(20),%d2                          
   43bea:	0802 0008      	btst #8,%d2                                 
   43bee:	6700 00da      	beqw 43cca <fpathconf+0x106>                
  rtems_libio_check_permissions(iop, LIBIO_FLAGS_READ);               
   43bf2:	0802 0001      	btst #1,%d2                                 
   43bf6:	670a           	beqs 43c02 <fpathconf+0x3e>                 
                                                                      
  /*                                                                  
   *  Now process the information request.                            
   */                                                                 
                                                                      
  the_limits = &iop->pathinfo.mt_entry->pathconf_limits_and_options;  
   43bf8:	2068 0028      	moveal %a0@(40),%a0                         
                                                                      
  switch ( name ) {                                                   
   43bfc:	700b           	moveq #11,%d0                               
   43bfe:	b081           	cmpl %d1,%d0                                
   43c00:	6416           	bccs 43c18 <fpathconf+0x54>                 
      break;                                                          
    case _PC_SYNC_IO:                                                 
      return_value = the_limits->posix_sync_io;                       
      break;                                                          
    default:                                                          
      rtems_set_errno_and_return_minus_one( EINVAL );                 
   43c02:	4eb9 0005 1618 	jsr 51618 <__errno>                         
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43c08:	242e fffc      	movel %fp@(-4),%d2                          
      break;                                                          
    case _PC_SYNC_IO:                                                 
      return_value = the_limits->posix_sync_io;                       
      break;                                                          
    default:                                                          
      rtems_set_errno_and_return_minus_one( EINVAL );                 
   43c0c:	2040           	moveal %d0,%a0                              
   43c0e:	7216           	moveq #22,%d1                               
   43c10:	70ff           	moveq #-1,%d0                               
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43c12:	4e5e           	unlk %fp                                    
      break;                                                          
    case _PC_SYNC_IO:                                                 
      return_value = the_limits->posix_sync_io;                       
      break;                                                          
    default:                                                          
      rtems_set_errno_and_return_minus_one( EINVAL );                 
   43c14:	2081           	movel %d1,%a0@                              
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43c16:	4e75           	rts                                         
   *  Now process the information request.                            
   */                                                                 
                                                                      
  the_limits = &iop->pathinfo.mt_entry->pathconf_limits_and_options;  
                                                                      
  switch ( name ) {                                                   
   43c18:	303b 1a08      	movew %pc@(43c22 <fpathconf+0x5e>,%d1:l:2),%d0
   43c1c:	48c0           	extl %d0                                    
   43c1e:	4efb 0802      	jmp %pc@(43c22 <fpathconf+0x5e>,%d0:l)      
   43c22:	0090 0084 0078 	oril #8650872,%d0                           <== NOT EXECUTED
   43c28:	006c           	0154                                        <== NOT EXECUTED
   43c2a:	0060           	0140                                        <== NOT EXECUTED
   43c2c:	0054           	0124                                        <== NOT EXECUTED
   43c2e:	0048           	0110                                        <== NOT EXECUTED
   43c30:	003c           	074                                         <== NOT EXECUTED
   43c32:	0030           	060                                         <== NOT EXECUTED
   43c34:	0024           	044                                         <== NOT EXECUTED
   43c36:	0018           	030                                         <== NOT EXECUTED
   43c38:	009c 242e fffc 	oril #607059964,%d4                         <== NOT EXECUTED
      rtems_set_errno_and_return_minus_one( EINVAL );                 
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43c3e:	4e5e           	unlk %fp                                    
      break;                                                          
    case _PC_ASYNC_IO:                                                
      return_value = the_limits->posix_async_io;                      
      break;                                                          
    case _PC_PRIO_IO:                                                 
      return_value = the_limits->posix_prio_io;                       
   43c40:	2028 005c      	movel %a0@(92),%d0                          
      rtems_set_errno_and_return_minus_one( EINVAL );                 
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43c44:	4e75           	rts                                         
   43c46:	242e fffc      	movel %fp@(-4),%d2                          
   43c4a:	4e5e           	unlk %fp                                    
      break;                                                          
    case _PC_VDISABLE:                                                
      return_value = the_limits->posix_vdisable;                      
      break;                                                          
    case _PC_ASYNC_IO:                                                
      return_value = the_limits->posix_async_io;                      
   43c4c:	2028 0050      	movel %a0@(80),%d0                          
      rtems_set_errno_and_return_minus_one( EINVAL );                 
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43c50:	4e75           	rts                                         
   43c52:	242e fffc      	movel %fp@(-4),%d2                          
   43c56:	4e5e           	unlk %fp                                    
      break;                                                          
    case _PC_NO_TRUNC:                                                
      return_value = the_limits->posix_no_trunc;                      
      break;                                                          
    case _PC_VDISABLE:                                                
      return_value = the_limits->posix_vdisable;                      
   43c58:	2028 0064      	movel %a0@(100),%d0                         
      rtems_set_errno_and_return_minus_one( EINVAL );                 
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43c5c:	4e75           	rts                                         
   43c5e:	242e fffc      	movel %fp@(-4),%d2                          
   43c62:	4e5e           	unlk %fp                                    
      break;                                                          
    case _PC_CHOWN_RESTRICTED:                                        
      return_value = the_limits->posix_chown_restrictions;            
      break;                                                          
    case _PC_NO_TRUNC:                                                
      return_value = the_limits->posix_no_trunc;                      
   43c64:	2028 0058      	movel %a0@(88),%d0                          
      rtems_set_errno_and_return_minus_one( EINVAL );                 
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43c68:	4e75           	rts                                         
   43c6a:	242e fffc      	movel %fp@(-4),%d2                          
   43c6e:	4e5e           	unlk %fp                                    
      break;                                                          
    case _PC_PIPE_BUF:                                                
      return_value = the_limits->pipe_buf;                            
      break;                                                          
    case _PC_CHOWN_RESTRICTED:                                        
      return_value = the_limits->posix_chown_restrictions;            
   43c70:	2028 0054      	movel %a0@(84),%d0                          
      rtems_set_errno_and_return_minus_one( EINVAL );                 
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43c74:	4e75           	rts                                         
   43c76:	242e fffc      	movel %fp@(-4),%d2                          
   43c7a:	4e5e           	unlk %fp                                    
      break;                                                          
    case _PC_PATH_MAX:                                                
      return_value = the_limits->path_max;                            
      break;                                                          
    case _PC_PIPE_BUF:                                                
      return_value = the_limits->pipe_buf;                            
   43c7c:	2028 004c      	movel %a0@(76),%d0                          
      rtems_set_errno_and_return_minus_one( EINVAL );                 
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43c80:	4e75           	rts                                         
   43c82:	242e fffc      	movel %fp@(-4),%d2                          
   43c86:	4e5e           	unlk %fp                                    
      break;                                                          
    case _PC_NAME_MAX:                                                
      return_value = the_limits->name_max;                            
      break;                                                          
    case _PC_PATH_MAX:                                                
      return_value = the_limits->path_max;                            
   43c88:	2028 0048      	movel %a0@(72),%d0                          
      rtems_set_errno_and_return_minus_one( EINVAL );                 
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43c8c:	4e75           	rts                                         
   43c8e:	242e fffc      	movel %fp@(-4),%d2                          
   43c92:	4e5e           	unlk %fp                                    
      break;                                                          
    case _PC_MAX_INPUT:                                               
      return_value = the_limits->max_input;                           
      break;                                                          
    case _PC_NAME_MAX:                                                
      return_value = the_limits->name_max;                            
   43c94:	2028 0044      	movel %a0@(68),%d0                          
      rtems_set_errno_and_return_minus_one( EINVAL );                 
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43c98:	4e75           	rts                                         
   43c9a:	242e fffc      	movel %fp@(-4),%d2                          
   43c9e:	4e5e           	unlk %fp                                    
      break;                                                          
    case _PC_MAX_CANON:                                               
      return_value = the_limits->max_canon;                           
      break;                                                          
    case _PC_MAX_INPUT:                                               
      return_value = the_limits->max_input;                           
   43ca0:	2028 0040      	movel %a0@(64),%d0                          
      rtems_set_errno_and_return_minus_one( EINVAL );                 
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43ca4:	4e75           	rts                                         
   43ca6:	242e fffc      	movel %fp@(-4),%d2                          
   43caa:	4e5e           	unlk %fp                                    
  switch ( name ) {                                                   
    case _PC_LINK_MAX:                                                
      return_value = the_limits->link_max;                            
      break;                                                          
    case _PC_MAX_CANON:                                               
      return_value = the_limits->max_canon;                           
   43cac:	2028 003c      	movel %a0@(60),%d0                          
      rtems_set_errno_and_return_minus_one( EINVAL );                 
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43cb0:	4e75           	rts                                         
   43cb2:	242e fffc      	movel %fp@(-4),%d2                          
   43cb6:	4e5e           	unlk %fp                                    
                                                                      
  the_limits = &iop->pathinfo.mt_entry->pathconf_limits_and_options;  
                                                                      
  switch ( name ) {                                                   
    case _PC_LINK_MAX:                                                
      return_value = the_limits->link_max;                            
   43cb8:	2028 0038      	movel %a0@(56),%d0                          
      rtems_set_errno_and_return_minus_one( EINVAL );                 
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43cbc:	4e75           	rts                                         
   43cbe:	242e fffc      	movel %fp@(-4),%d2                          
   43cc2:	4e5e           	unlk %fp                                    
      break;                                                          
    case _PC_PRIO_IO:                                                 
      return_value = the_limits->posix_prio_io;                       
      break;                                                          
    case _PC_SYNC_IO:                                                 
      return_value = the_limits->posix_sync_io;                       
   43cc4:	2028 0060      	movel %a0@(96),%d0                          
      rtems_set_errno_and_return_minus_one( EINVAL );                 
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43cc8:	4e75           	rts                                         
  rtems_libio_t                          *iop;                        
  rtems_filesystem_limits_and_options_t  *the_limits;                 
                                                                      
  rtems_libio_check_fd(fd);                                           
  iop = rtems_libio_iop(fd);                                          
  rtems_libio_check_is_open(iop);                                     
   43cca:	4eb9 0005 1618 	jsr 51618 <__errno>                         
   43cd0:	7409           	moveq #9,%d2                                
   43cd2:	2040           	moveal %d0,%a0                              
   43cd4:	70ff           	moveq #-1,%d0                               
   43cd6:	2082           	movel %d2,%a0@                              
      rtems_set_errno_and_return_minus_one( EINVAL );                 
      break;                                                          
  }                                                                   
                                                                      
  return return_value;                                                
}                                                                     
   43cd8:	242e fffc      	movel %fp@(-4),%d2                          
   43cdc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004a6f4 <free>:                                                      
                                                                      
void free(                                                            
  void *ptr                                                           
)                                                                     
{                                                                     
  MSBUMP(free_calls, 1);                                              
   4a6f4:	4e56 0000      	linkw %fp,#0                                
   4a6f8:	52b9 0005 ee30 	addql #1,5ee30 <rtems_malloc_statistics+0xc>
   4a6fe:	2f02           	movel %d2,%sp@-                             
   4a700:	242e 0008      	movel %fp@(8),%d2                           
                                                                      
  if ( !ptr )                                                         
   4a704:	6732           	beqs 4a738 <free+0x44>                      
                                                                      
  /*                                                                  
   *  Do not attempt to free memory if in a critical section or ISR.  
   */                                                                 
                                                                      
  if ( _System_state_Is_up(_System_state_Get()) &&                    
   4a706:	7003           	moveq #3,%d0                                
   4a708:	b0b9 0005 f100 	cmpl 5f100 <_System_state_Current>,%d0      
   4a70e:	6758           	beqs 4a768 <free+0x74>                      
  #endif                                                              
                                                                      
  /*                                                                  
   *  If configured, update the statistics                            
   */                                                                 
  if ( rtems_malloc_statistics_helpers )                              
   4a710:	2079 0005 dda6 	moveal 5dda6 <rtems_malloc_statistics_helpers>,%a0
   4a716:	4a88           	tstl %a0                                    
   4a718:	670a           	beqs 4a724 <free+0x30>                      
    (*rtems_malloc_statistics_helpers->at_free)(ptr);                 
   4a71a:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4a71c:	2068 0008      	moveal %a0@(8),%a0                          <== NOT EXECUTED
   4a720:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4a722:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  if ( !_Protected_heap_Free( RTEMS_Malloc_Heap, ptr ) ) {            
   4a724:	2f02           	movel %d2,%sp@-                             
   4a726:	2f39 0005 d720 	movel 5d720 <RTEMS_Malloc_Heap>,%sp@-       
   4a72c:	4eb9 0004 c038 	jsr 4c038 <_Protected_heap_Free>            
   4a732:	508f           	addql #8,%sp                                
   4a734:	4a00           	tstb %d0                                    
   4a736:	6708           	beqs 4a740 <free+0x4c>                      
      RTEMS_Malloc_Heap->area_begin,                                  
      RTEMS_Malloc_Heap->area_end                                     
    );                                                                
  }                                                                   
                                                                      
}                                                                     
   4a738:	242e fffc      	movel %fp@(-4),%d2                          
   4a73c:	4e5e           	unlk %fp                                    
   4a73e:	4e75           	rts                                         
                                                                      
  if ( !_Protected_heap_Free( RTEMS_Malloc_Heap, ptr ) ) {            
    printk( "Program heap: free of bad pointer %p -- range %p - %p \n",
      ptr,                                                            
      RTEMS_Malloc_Heap->area_begin,                                  
      RTEMS_Malloc_Heap->area_end                                     
   4a740:	2079 0005 d720 	moveal 5d720 <RTEMS_Malloc_Heap>,%a0        <== NOT EXECUTED
   */                                                                 
  if ( rtems_malloc_statistics_helpers )                              
    (*rtems_malloc_statistics_helpers->at_free)(ptr);                 
                                                                      
  if ( !_Protected_heap_Free( RTEMS_Malloc_Heap, ptr ) ) {            
    printk( "Program heap: free of bad pointer %p -- range %p - %p \n",
   4a746:	2f28 001c      	movel %a0@(28),%sp@-                        <== NOT EXECUTED
   4a74a:	2f28 0018      	movel %a0@(24),%sp@-                        <== NOT EXECUTED
   4a74e:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4a750:	4879 0005 c9c2 	pea 5c9c2 <IMFS_link_handlers+0x7e>         <== NOT EXECUTED
   4a756:	4eb9 0004 33ac 	jsr 433ac <printk>                          <== NOT EXECUTED
      RTEMS_Malloc_Heap->area_begin,                                  
      RTEMS_Malloc_Heap->area_end                                     
    );                                                                
  }                                                                   
                                                                      
}                                                                     
   4a75c:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
   */                                                                 
  if ( rtems_malloc_statistics_helpers )                              
    (*rtems_malloc_statistics_helpers->at_free)(ptr);                 
                                                                      
  if ( !_Protected_heap_Free( RTEMS_Malloc_Heap, ptr ) ) {            
    printk( "Program heap: free of bad pointer %p -- range %p - %p \n",
   4a760:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
      RTEMS_Malloc_Heap->area_begin,                                  
      RTEMS_Malloc_Heap->area_end                                     
    );                                                                
  }                                                                   
                                                                      
}                                                                     
   4a764:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4a766:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Do not attempt to free memory if in a critical section or ISR.  
   */                                                                 
                                                                      
  if ( _System_state_Is_up(_System_state_Get()) &&                    
   4a768:	4eb9 0004 abf0 	jsr 4abf0 <malloc_is_system_state_OK>       
   4a76e:	4a00           	tstb %d0                                    
   4a770:	669e           	bnes 4a710 <free+0x1c>                      
       !malloc_is_system_state_OK() ) {                               
      malloc_deferred_free(ptr);                                      
   4a772:	2d42 0008      	movel %d2,%fp@(8)                           <== NOT EXECUTED
      RTEMS_Malloc_Heap->area_begin,                                  
      RTEMS_Malloc_Heap->area_end                                     
    );                                                                
  }                                                                   
                                                                      
}                                                                     
   4a776:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
   4a77a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   *  Do not attempt to free memory if in a critical section or ISR.  
   */                                                                 
                                                                      
  if ( _System_state_Is_up(_System_state_Get()) &&                    
       !malloc_is_system_state_OK() ) {                               
      malloc_deferred_free(ptr);                                      
   4a77c:	4ef9 0004 ac30 	jmp 4ac30 <malloc_deferred_free>            <== NOT EXECUTED
	...                                                                  
                                                                      
0006828c <free_user_env>:                                             
 * NOTE: this must be called with                                     
 *       thread dispatching disabled!                                 
 */                                                                   
static void                                                           
free_user_env(void *venv)                                             
{                                                                     
   6828c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   68290:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   68292:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
  rtems_user_env_t *env = (rtems_user_env_t*) venv ;                  
                                                                      
	if (env != &rtems_global_user_env                                    
   68296:	b5fc 000a 697c 	cmpal #682364,%a2                           <== NOT EXECUTED
   6829c:	6740           	beqs 682de <free_user_env+0x52>             <== NOT EXECUTED
#ifdef HAVE_USERENV_REFCNT                                            
		&& --env->refcnt <= 0                                               
#endif                                                                
		) {                                                                 
		rtems_filesystem_freenode( &env->current_directory);                
   6829e:	206a 0010      	moveal %a2@(16),%a0                         <== NOT EXECUTED
   682a2:	4a88           	tstl %a0                                    <== NOT EXECUTED
   682a4:	6710           	beqs 682b6 <free_user_env+0x2a>             <== NOT EXECUTED
   682a6:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   682aa:	4a88           	tstl %a0                                    <== NOT EXECUTED
   682ac:	6708           	beqs 682b6 <free_user_env+0x2a>             <== NOT EXECUTED
   682ae:	486a 0004      	pea %a2@(4)                                 <== NOT EXECUTED
   682b2:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   682b4:	588f           	addql #4,%sp                                <== NOT EXECUTED
		rtems_filesystem_freenode( &env->root_directory);                   
   682b6:	206a 0024      	moveal %a2@(36),%a0                         <== NOT EXECUTED
   682ba:	4a88           	tstl %a0                                    <== NOT EXECUTED
   682bc:	6710           	beqs 682ce <free_user_env+0x42>             <== NOT EXECUTED
   682be:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   682c2:	4a88           	tstl %a0                                    <== NOT EXECUTED
   682c4:	6708           	beqs 682ce <free_user_env+0x42>             <== NOT EXECUTED
   682c6:	486a 0018      	pea %a2@(24)                                <== NOT EXECUTED
   682ca:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   682cc:	588f           	addql #4,%sp                                <== NOT EXECUTED
		free(env);                                                          
   682ce:	2d4a 0008      	movel %a2,%fp@(8)                           <== NOT EXECUTED
	}                                                                    
}                                                                     
   682d2:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   682d6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
		&& --env->refcnt <= 0                                               
#endif                                                                
		) {                                                                 
		rtems_filesystem_freenode( &env->current_directory);                
		rtems_filesystem_freenode( &env->root_directory);                   
		free(env);                                                          
   682d8:	4ef9 0004 67c0 	jmp 467c0 <free>                            <== NOT EXECUTED
	}                                                                    
}                                                                     
   682de:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   682e2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0005b3f0 <fstat>:                                                     
                                                                      
int fstat(                                                            
  int          fd,                                                    
  struct stat *sbuf                                                   
)                                                                     
{                                                                     
   5b3f0:	4e56 0000      	linkw %fp,#0                                
   5b3f4:	202e 0008      	movel %fp@(8),%d0                           
   5b3f8:	2f0a           	movel %a2,%sp@-                             
   5b3fa:	2f02           	movel %d2,%sp@-                             
   5b3fc:	242e 000c      	movel %fp@(12),%d2                          
                                                                      
  /*                                                                  
   *  Check to see if we were passed a valid pointer.                 
   */                                                                 
                                                                      
  if ( !sbuf )                                                        
   5b400:	6700 0096      	beqw 5b498 <fstat+0xa8>                     
                                                                      
  /*                                                                  
   *  Now process the stat() request.                                 
   */                                                                 
                                                                      
  iop = rtems_libio_iop( fd );                                        
   5b404:	b0b9 0005 d714 	cmpl 5d714 <rtems_libio_number_iops>,%d0    
   5b40a:	6456           	bccs 5b462 <fstat+0x72>                     
   5b40c:	2479 0005 ee18 	moveal 5ee18 <rtems_libio_iops>,%a2         
   5b412:	ed88           	lsll #6,%d0                                 
   5b414:	d5c0           	addal %d0,%a2                               
  rtems_libio_check_fd( fd );                                         
  rtems_libio_check_is_open(iop);                                     
   5b416:	202a 0014      	movel %a2@(20),%d0                          
   5b41a:	0280 0000 0100 	andil #256,%d0                              
   5b420:	6740           	beqs 5b462 <fstat+0x72>                     
                                                                      
  if ( !iop->handlers )                                               
   5b422:	206a 003c      	moveal %a2@(60),%a0                         
   5b426:	4a88           	tstl %a0                                    
   5b428:	6738           	beqs 5b462 <fstat+0x72>                     
    rtems_set_errno_and_return_minus_one( EBADF );                    
                                                                      
  if ( !iop->handlers->fstat_h )                                      
   5b42a:	4aa8 0018      	tstl %a0@(24)                               
   5b42e:	674c           	beqs 5b47c <fstat+0x8c>                     
                                                                      
  /*                                                                  
   *  Zero out the stat structure so the various support              
   *  versions of stat don't have to.                                 
   */                                                                 
  memset( sbuf, 0, sizeof(struct stat) );                             
   5b430:	4878 0046      	pea 46 <DBL_MANT_DIG+0x11>                  
   5b434:	42a7           	clrl %sp@-                                  
   5b436:	2f02           	movel %d2,%sp@-                             
   5b438:	4eb9 0004 f484 	jsr 4f484 <memset>                          
                                                                      
  return (*iop->handlers->fstat_h)( &iop->pathinfo, sbuf );           
   5b43e:	206a 003c      	moveal %a2@(60),%a0                         
   5b442:	45ea 0018      	lea %a2@(24),%a2                            
   5b446:	4fef 000c      	lea %sp@(12),%sp                            
   5b44a:	2d42 000c      	movel %d2,%fp@(12)                          
}                                                                     
   5b44e:	242e fff8      	movel %fp@(-8),%d2                          
   *  Zero out the stat structure so the various support              
   *  versions of stat don't have to.                                 
   */                                                                 
  memset( sbuf, 0, sizeof(struct stat) );                             
                                                                      
  return (*iop->handlers->fstat_h)( &iop->pathinfo, sbuf );           
   5b452:	2d4a 0008      	movel %a2,%fp@(8)                           
}                                                                     
   5b456:	246e fffc      	moveal %fp@(-4),%a2                         
   5b45a:	4e5e           	unlk %fp                                    
   *  Zero out the stat structure so the various support              
   *  versions of stat don't have to.                                 
   */                                                                 
  memset( sbuf, 0, sizeof(struct stat) );                             
                                                                      
  return (*iop->handlers->fstat_h)( &iop->pathinfo, sbuf );           
   5b45c:	2268 0018      	moveal %a0@(24),%a1                         
   5b460:	4ed1           	jmp %a1@                                    
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_fd( fd );                                         
  rtems_libio_check_is_open(iop);                                     
                                                                      
  if ( !iop->handlers )                                               
    rtems_set_errno_and_return_minus_one( EBADF );                    
   5b462:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   *  versions of stat don't have to.                                 
   */                                                                 
  memset( sbuf, 0, sizeof(struct stat) );                             
                                                                      
  return (*iop->handlers->fstat_h)( &iop->pathinfo, sbuf );           
}                                                                     
   5b468:	242e fff8      	movel %fp@(-8),%d2                          
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_fd( fd );                                         
  rtems_libio_check_is_open(iop);                                     
                                                                      
  if ( !iop->handlers )                                               
    rtems_set_errno_and_return_minus_one( EBADF );                    
   5b46c:	2040           	moveal %d0,%a0                              
   5b46e:	7009           	moveq #9,%d0                                
   *  versions of stat don't have to.                                 
   */                                                                 
  memset( sbuf, 0, sizeof(struct stat) );                             
                                                                      
  return (*iop->handlers->fstat_h)( &iop->pathinfo, sbuf );           
}                                                                     
   5b470:	246e fffc      	moveal %fp@(-4),%a2                         
   5b474:	4e5e           	unlk %fp                                    
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_fd( fd );                                         
  rtems_libio_check_is_open(iop);                                     
                                                                      
  if ( !iop->handlers )                                               
    rtems_set_errno_and_return_minus_one( EBADF );                    
   5b476:	2080           	movel %d0,%a0@                              
   *  versions of stat don't have to.                                 
   */                                                                 
  memset( sbuf, 0, sizeof(struct stat) );                             
                                                                      
  return (*iop->handlers->fstat_h)( &iop->pathinfo, sbuf );           
}                                                                     
   5b478:	70ff           	moveq #-1,%d0                               
   5b47a:	4e75           	rts                                         
                                                                      
  if ( !iop->handlers )                                               
    rtems_set_errno_and_return_minus_one( EBADF );                    
                                                                      
  if ( !iop->handlers->fstat_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   5b47c:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   *  versions of stat don't have to.                                 
   */                                                                 
  memset( sbuf, 0, sizeof(struct stat) );                             
                                                                      
  return (*iop->handlers->fstat_h)( &iop->pathinfo, sbuf );           
}                                                                     
   5b482:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
                                                                      
  if ( !iop->handlers )                                               
    rtems_set_errno_and_return_minus_one( EBADF );                    
                                                                      
  if ( !iop->handlers->fstat_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   5b486:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   *  versions of stat don't have to.                                 
   */                                                                 
  memset( sbuf, 0, sizeof(struct stat) );                             
                                                                      
  return (*iop->handlers->fstat_h)( &iop->pathinfo, sbuf );           
}                                                                     
   5b488:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   5b48a:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   5b48e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
  if ( !iop->handlers )                                               
    rtems_set_errno_and_return_minus_one( EBADF );                    
                                                                      
  if ( !iop->handlers->fstat_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   5b490:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
   *  versions of stat don't have to.                                 
   */                                                                 
  memset( sbuf, 0, sizeof(struct stat) );                             
                                                                      
  return (*iop->handlers->fstat_h)( &iop->pathinfo, sbuf );           
}                                                                     
   5b496:	4e75           	rts                                         <== NOT EXECUTED
  /*                                                                  
   *  Check to see if we were passed a valid pointer.                 
   */                                                                 
                                                                      
  if ( !sbuf )                                                        
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   5b498:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   *  versions of stat don't have to.                                 
   */                                                                 
  memset( sbuf, 0, sizeof(struct stat) );                             
                                                                      
  return (*iop->handlers->fstat_h)( &iop->pathinfo, sbuf );           
}                                                                     
   5b49e:	242e fff8      	movel %fp@(-8),%d2                          
  /*                                                                  
   *  Check to see if we were passed a valid pointer.                 
   */                                                                 
                                                                      
  if ( !sbuf )                                                        
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   5b4a2:	2040           	moveal %d0,%a0                              
   5b4a4:	720e           	moveq #14,%d1                               
   *  versions of stat don't have to.                                 
   */                                                                 
  memset( sbuf, 0, sizeof(struct stat) );                             
                                                                      
  return (*iop->handlers->fstat_h)( &iop->pathinfo, sbuf );           
}                                                                     
   5b4a6:	70ff           	moveq #-1,%d0                               
   5b4a8:	246e fffc      	moveal %fp@(-4),%a2                         
   5b4ac:	4e5e           	unlk %fp                                    
  /*                                                                  
   *  Check to see if we were passed a valid pointer.                 
   */                                                                 
                                                                      
  if ( !sbuf )                                                        
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   5b4ae:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
   *  versions of stat don't have to.                                 
   */                                                                 
  memset( sbuf, 0, sizeof(struct stat) );                             
                                                                      
  return (*iop->handlers->fstat_h)( &iop->pathinfo, sbuf );           
}                                                                     
                                                                      
00067164 <fsync>:                                                     
#include <rtems/seterr.h>                                             
                                                                      
int fsync(                                                            
  int     fd                                                          
)                                                                     
{                                                                     
   67164:	4e56 0000      	linkw %fp,#0                                
   67168:	202e 0008      	movel %fp@(8),%d0                           
  rtems_libio_t *iop;                                                 
                                                                      
  rtems_libio_check_fd( fd );                                         
   6716c:	b0b9 000a 1c74 	cmpl a1c74 <rtems_libio_number_iops>,%d0    
   67172:	6430           	bccs 671a4 <fsync+0x40>                     
  iop = rtems_libio_iop( fd );                                        
   67174:	2079 000a 6920 	moveal a6920 <rtems_libio_iops>,%a0         
   6717a:	ed88           	lsll #6,%d0                                 
   6717c:	d1c0           	addal %d0,%a0                               
  rtems_libio_check_is_open(iop);                                     
   6717e:	2028 0014      	movel %a0@(20),%d0                          
   67182:	0800 0008      	btst #8,%d0                                 
   67186:	671c           	beqs 671a4 <fsync+0x40>                     
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   67188:	44c0           	movew %d0,%ccr                              
   6718a:	662a           	bnes 671b6 <fsync+0x52>                     
                                                                      
  /*                                                                  
   *  Now process the fsync().                                        
   */                                                                 
                                                                      
  if ( !iop->handlers )                                               
   6718c:	2268 003c      	moveal %a0@(60),%a1                         
   67190:	4a89           	tstl %a1                                    
   67192:	6710           	beqs 671a4 <fsync+0x40>                     
    rtems_set_errno_and_return_minus_one( EBADF );                    
                                                                      
  if ( !iop->handlers->fsync_h )                                      
   67194:	2269 0028      	moveal %a1@(40),%a1                         
   67198:	4a89           	tstl %a1                                    
   6719a:	672c           	beqs 671c8 <fsync+0x64>                     
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->fsync_h)( iop );                            
   6719c:	2d48 0008      	movel %a0,%fp@(8)                           
}                                                                     
   671a0:	4e5e           	unlk %fp                                    
    rtems_set_errno_and_return_minus_one( EBADF );                    
                                                                      
  if ( !iop->handlers->fsync_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->fsync_h)( iop );                            
   671a2:	4ed1           	jmp %a1@                                    
  /*                                                                  
   *  Now process the fsync().                                        
   */                                                                 
                                                                      
  if ( !iop->handlers )                                               
    rtems_set_errno_and_return_minus_one( EBADF );                    
   671a4:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
                                                                      
  if ( !iop->handlers->fsync_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->fsync_h)( iop );                            
}                                                                     
   671aa:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  /*                                                                  
   *  Now process the fsync().                                        
   */                                                                 
                                                                      
  if ( !iop->handlers )                                               
    rtems_set_errno_and_return_minus_one( EBADF );                    
   671ac:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   671ae:	7009           	moveq #9,%d0                                <== NOT EXECUTED
   671b0:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
                                                                      
  if ( !iop->handlers->fsync_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->fsync_h)( iop );                            
}                                                                     
   671b2:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   671b4:	4e75           	rts                                         <== NOT EXECUTED
  rtems_libio_t *iop;                                                 
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   671b6:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         
   671bc:	7216           	moveq #22,%d1                               
   671be:	2040           	moveal %d0,%a0                              
                                                                      
  if ( !iop->handlers->fsync_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->fsync_h)( iop );                            
}                                                                     
   671c0:	70ff           	moveq #-1,%d0                               
   671c2:	4e5e           	unlk %fp                                    
  rtems_libio_t *iop;                                                 
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   671c4:	2081           	movel %d1,%a0@                              
                                                                      
  if ( !iop->handlers->fsync_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->fsync_h)( iop );                            
}                                                                     
   671c6:	4e75           	rts                                         
                                                                      
  if ( !iop->handlers )                                               
    rtems_set_errno_and_return_minus_one( EBADF );                    
                                                                      
  if ( !iop->handlers->fsync_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   671c8:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         
                                                                      
  return (*iop->handlers->fsync_h)( iop );                            
}                                                                     
   671ce:	4e5e           	unlk %fp                                    
                                                                      
  if ( !iop->handlers )                                               
    rtems_set_errno_and_return_minus_one( EBADF );                    
                                                                      
  if ( !iop->handlers->fsync_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   671d0:	2040           	moveal %d0,%a0                              
                                                                      
  return (*iop->handlers->fsync_h)( iop );                            
}                                                                     
   671d2:	70ff           	moveq #-1,%d0                               
                                                                      
  if ( !iop->handlers )                                               
    rtems_set_errno_and_return_minus_one( EBADF );                    
                                                                      
  if ( !iop->handlers->fsync_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   671d4:	20bc 0000 0086 	movel #134,%a0@                             
                                                                      
  return (*iop->handlers->fsync_h)( iop );                            
}                                                                     
                                                                      
0004a784 <ftruncate>:                                                 
                                                                      
int ftruncate(                                                        
  int     fd,                                                         
  off_t   length                                                      
)                                                                     
{                                                                     
   4a784:	4e56 ffec      	linkw %fp,#-20                              
   4a788:	202e 0008      	movel %fp@(8),%d0                           
   4a78c:	2f0a           	movel %a2,%sp@-                             
  rtems_libio_t                    *iop;                              
  rtems_filesystem_location_info_t  loc;                              
                                                                      
  rtems_libio_check_fd( fd );                                         
   4a78e:	b0b9 0005 d714 	cmpl 5d714 <rtems_libio_number_iops>,%d0    
   4a794:	647a           	bccs 4a810 <ftruncate+0x8c>                 
  iop = rtems_libio_iop( fd );                                        
   4a796:	2479 0005 ee18 	moveal 5ee18 <rtems_libio_iops>,%a2         
   4a79c:	ed88           	lsll #6,%d0                                 
   4a79e:	d5c0           	addal %d0,%a2                               
  rtems_libio_check_is_open(iop);                                     
   4a7a0:	202a 0014      	movel %a2@(20),%d0                          
   4a7a4:	0280 0000 0100 	andil #256,%d0                              
   4a7aa:	6764           	beqs 4a810 <ftruncate+0x8c>                 
                                                                      
  /*                                                                  
   *  Make sure we are not working on a directory                     
   */                                                                 
                                                                      
  loc = iop->pathinfo;                                                
   4a7ac:	43ee ffec      	lea %fp@(-20),%a1                           
   4a7b0:	22aa 0018      	movel %a2@(24),%a1@                         
   4a7b4:	2d6a 001c fff0 	movel %a2@(28),%fp@(-16)                    
   4a7ba:	2d6a 0020 fff4 	movel %a2@(32),%fp@(-12)                    
   4a7c0:	2d6a 0024 fff8 	movel %a2@(36),%fp@(-8)                     
  if ( !loc.ops->node_type_h )                                        
   4a7c6:	206e fff8      	moveal %fp@(-8),%a0                         
                                                                      
  /*                                                                  
   *  Make sure we are not working on a directory                     
   */                                                                 
                                                                      
  loc = iop->pathinfo;                                                
   4a7ca:	2d6a 0028 fffc 	movel %a2@(40),%fp@(-4)                     
  if ( !loc.ops->node_type_h )                                        
   4a7d0:	2068 0010      	moveal %a0@(16),%a0                         
   4a7d4:	4a88           	tstl %a0                                    
   4a7d6:	6764           	beqs 4a83c <ftruncate+0xb8>                 
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  if ( (*loc.ops->node_type_h)( &loc ) == RTEMS_FILESYSTEM_DIRECTORY )
   4a7d8:	2f09           	movel %a1,%sp@-                             
   4a7da:	4e90           	jsr %a0@                                    
   4a7dc:	588f           	addql #4,%sp                                
   4a7de:	7201           	moveq #1,%d1                                
   4a7e0:	b280           	cmpl %d0,%d1                                
   4a7e2:	6770           	beqs 4a854 <ftruncate+0xd0>                 
    rtems_set_errno_and_return_minus_one( EISDIR );                   
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   4a7e4:	7004           	moveq #4,%d0                                
   4a7e6:	c0aa 0014      	andl %a2@(20),%d0                           
   4a7ea:	673a           	beqs 4a826 <ftruncate+0xa2>                 
                                                                      
  if ( !iop->handlers->ftruncate_h )                                  
   4a7ec:	206a 003c      	moveal %a2@(60),%a0                         
   4a7f0:	2068 0020      	moveal %a0@(32),%a0                         
   4a7f4:	4a88           	tstl %a0                                    
   4a7f6:	6744           	beqs 4a83c <ftruncate+0xb8>                 
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->ftruncate_h)( iop, length );                
   4a7f8:	2f2e 0010      	movel %fp@(16),%sp@-                        
   4a7fc:	2f2e 000c      	movel %fp@(12),%sp@-                        
   4a800:	2f0a           	movel %a2,%sp@-                             
   4a802:	4e90           	jsr %a0@                                    
}                                                                     
   4a804:	246e ffe8      	moveal %fp@(-24),%a2                        
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
                                                                      
  if ( !iop->handlers->ftruncate_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->ftruncate_h)( iop, length );                
   4a808:	4fef 000c      	lea %sp@(12),%sp                            
}                                                                     
   4a80c:	4e5e           	unlk %fp                                    
   4a80e:	4e75           	rts                                         
  rtems_libio_t                    *iop;                              
  rtems_filesystem_location_info_t  loc;                              
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
   4a810:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
                                                                      
  if ( !iop->handlers->ftruncate_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->ftruncate_h)( iop, length );                
}                                                                     
   4a816:	246e ffe8      	moveal %fp@(-24),%a2                        <== NOT EXECUTED
  rtems_libio_t                    *iop;                              
  rtems_filesystem_location_info_t  loc;                              
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
   4a81a:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4a81c:	7209           	moveq #9,%d1                                <== NOT EXECUTED
   4a81e:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  if ( !iop->handlers->ftruncate_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->ftruncate_h)( iop, length );                
}                                                                     
   4a820:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  rtems_libio_t                    *iop;                              
  rtems_filesystem_location_info_t  loc;                              
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
   4a822:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
                                                                      
  if ( !iop->handlers->ftruncate_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->ftruncate_h)( iop, length );                
}                                                                     
   4a824:	4e75           	rts                                         <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  if ( (*loc.ops->node_type_h)( &loc ) == RTEMS_FILESYSTEM_DIRECTORY )
    rtems_set_errno_and_return_minus_one( EISDIR );                   
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   4a826:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
                                                                      
  if ( !iop->handlers->ftruncate_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->ftruncate_h)( iop, length );                
}                                                                     
   4a82c:	246e ffe8      	moveal %fp@(-24),%a2                        <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  if ( (*loc.ops->node_type_h)( &loc ) == RTEMS_FILESYSTEM_DIRECTORY )
    rtems_set_errno_and_return_minus_one( EISDIR );                   
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   4a830:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4a832:	7216           	moveq #22,%d1                               <== NOT EXECUTED
   4a834:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  if ( !iop->handlers->ftruncate_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->ftruncate_h)( iop, length );                
}                                                                     
   4a836:	4e5e           	unlk %fp                                    <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  if ( (*loc.ops->node_type_h)( &loc ) == RTEMS_FILESYSTEM_DIRECTORY )
    rtems_set_errno_and_return_minus_one( EISDIR );                   
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   4a838:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
                                                                      
  if ( !iop->handlers->ftruncate_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->ftruncate_h)( iop, length );                
}                                                                     
   4a83a:	4e75           	rts                                         <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( EISDIR );                   
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
                                                                      
  if ( !iop->handlers->ftruncate_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   4a83c:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
                                                                      
  return (*iop->handlers->ftruncate_h)( iop, length );                
}                                                                     
   4a842:	246e ffe8      	moveal %fp@(-24),%a2                        <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( EISDIR );                   
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
                                                                      
  if ( !iop->handlers->ftruncate_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   4a846:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4a848:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  return (*iop->handlers->ftruncate_h)( iop, length );                
}                                                                     
   4a84a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( EISDIR );                   
                                                                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
                                                                      
  if ( !iop->handlers->ftruncate_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   4a84c:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
                                                                      
  return (*iop->handlers->ftruncate_h)( iop, length );                
}                                                                     
   4a852:	4e75           	rts                                         <== NOT EXECUTED
  loc = iop->pathinfo;                                                
  if ( !loc.ops->node_type_h )                                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  if ( (*loc.ops->node_type_h)( &loc ) == RTEMS_FILESYSTEM_DIRECTORY )
    rtems_set_errno_and_return_minus_one( EISDIR );                   
   4a854:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
                                                                      
  if ( !iop->handlers->ftruncate_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->ftruncate_h)( iop, length );                
}                                                                     
   4a85a:	246e ffe8      	moveal %fp@(-24),%a2                        
  loc = iop->pathinfo;                                                
  if ( !loc.ops->node_type_h )                                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  if ( (*loc.ops->node_type_h)( &loc ) == RTEMS_FILESYSTEM_DIRECTORY )
    rtems_set_errno_and_return_minus_one( EISDIR );                   
   4a85e:	2040           	moveal %d0,%a0                              
   4a860:	7215           	moveq #21,%d1                               
   4a862:	70ff           	moveq #-1,%d0                               
                                                                      
  if ( !iop->handlers->ftruncate_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->ftruncate_h)( iop, length );                
}                                                                     
   4a864:	4e5e           	unlk %fp                                    
  loc = iop->pathinfo;                                                
  if ( !loc.ops->node_type_h )                                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  if ( (*loc.ops->node_type_h)( &loc ) == RTEMS_FILESYSTEM_DIRECTORY )
    rtems_set_errno_and_return_minus_one( EISDIR );                   
   4a866:	2081           	movel %d1,%a0@                              
                                                                      
  if ( !iop->handlers->ftruncate_h )                                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->ftruncate_h)( iop, length );                
}                                                                     
	...                                                                  
                                                                      
00097d24 <getdents>:                                                  
int getdents(                                                         
  int   dd_fd,                                                        
  char *dd_buf,                                                       
  int   dd_len                                                        
)                                                                     
{                                                                     
   97d24:	4e56 ffec      	linkw %fp,#-20                              
   97d28:	202e 0008      	movel %fp@(8),%d0                           
   97d2c:	2f0a           	movel %a2,%sp@-                             
                                                                      
  /*                                                                  
   *  Get the file control block structure associated with the file descriptor
   */                                                                 
                                                                      
  iop = rtems_libio_iop( dd_fd );                                     
   97d2e:	b0b9 000a 1c74 	cmpl a1c74 <rtems_libio_number_iops>,%d0    
   97d34:	655e           	bcss 97d94 <getdents+0x70>                  
   97d36:	95ca           	subal %a2,%a2                               <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Make sure we are working on a directory                         
   */                                                                 
  loc = iop->pathinfo;                                                
   97d38:	43ee ffec      	lea %fp@(-20),%a1                           
   97d3c:	22aa 0018      	movel %a2@(24),%a1@                         
   97d40:	2d6a 001c fff0 	movel %a2@(28),%fp@(-16)                    
   97d46:	2d6a 0020 fff4 	movel %a2@(32),%fp@(-12)                    
   97d4c:	2d6a 0024 fff8 	movel %a2@(36),%fp@(-8)                     
  if ( !loc.ops->node_type_h )                                        
   97d52:	206e fff8      	moveal %fp@(-8),%a0                         
  iop = rtems_libio_iop( dd_fd );                                     
                                                                      
  /*                                                                  
   *  Make sure we are working on a directory                         
   */                                                                 
  loc = iop->pathinfo;                                                
   97d56:	2d6a 0028 fffc 	movel %a2@(40),%fp@(-4)                     
  if ( !loc.ops->node_type_h )                                        
   97d5c:	2068 0010      	moveal %a0@(16),%a0                         
   97d60:	4a88           	tstl %a0                                    
   97d62:	6752           	beqs 97db6 <getdents+0x92>                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  if ( (*loc.ops->node_type_h)( &loc ) != RTEMS_FILESYSTEM_DIRECTORY )
   97d64:	2f09           	movel %a1,%sp@-                             
   97d66:	4e90           	jsr %a0@                                    
   97d68:	588f           	addql #4,%sp                                
   97d6a:	7201           	moveq #1,%d1                                
   97d6c:	b280           	cmpl %d0,%d1                                
   97d6e:	6630           	bnes 97da0 <getdents+0x7c>                  
  /*                                                                  
   *  Return the number of bytes that were actually transfered as a result
   *  of the read attempt.                                            
   */                                                                 
                                                                      
  if ( !iop->handlers->read_h )                                       
   97d70:	206a 003c      	moveal %a2@(60),%a0                         
   97d74:	2068 0008      	moveal %a0@(8),%a0                          
   97d78:	4a88           	tstl %a0                                    
   97d7a:	673a           	beqs 97db6 <getdents+0x92>                  
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->read_h)( iop, dd_buf, dd_len  );            
   97d7c:	2f2e 0010      	movel %fp@(16),%sp@-                        
   97d80:	2f2e 000c      	movel %fp@(12),%sp@-                        
   97d84:	2f0a           	movel %a2,%sp@-                             
   97d86:	4e90           	jsr %a0@                                    
}                                                                     
   97d88:	246e ffe8      	moveal %fp@(-24),%a2                        
   */                                                                 
                                                                      
  if ( !iop->handlers->read_h )                                       
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->read_h)( iop, dd_buf, dd_len  );            
   97d8c:	4fef 000c      	lea %sp@(12),%sp                            
}                                                                     
   97d90:	4e5e           	unlk %fp                                    
   97d92:	4e75           	rts                                         
                                                                      
  /*                                                                  
   *  Get the file control block structure associated with the file descriptor
   */                                                                 
                                                                      
  iop = rtems_libio_iop( dd_fd );                                     
   97d94:	2479 000a 6920 	moveal a6920 <rtems_libio_iops>,%a2         
   97d9a:	ed88           	lsll #6,%d0                                 
   97d9c:	d5c0           	addal %d0,%a2                               
   97d9e:	6098           	bras 97d38 <getdents+0x14>                  
  loc = iop->pathinfo;                                                
  if ( !loc.ops->node_type_h )                                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  if ( (*loc.ops->node_type_h)( &loc ) != RTEMS_FILESYSTEM_DIRECTORY )
    rtems_set_errno_and_return_minus_one( ENOTDIR );                  
   97da0:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         
                                                                      
  if ( !iop->handlers->read_h )                                       
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->read_h)( iop, dd_buf, dd_len  );            
}                                                                     
   97da6:	246e ffe8      	moveal %fp@(-24),%a2                        
  loc = iop->pathinfo;                                                
  if ( !loc.ops->node_type_h )                                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  if ( (*loc.ops->node_type_h)( &loc ) != RTEMS_FILESYSTEM_DIRECTORY )
    rtems_set_errno_and_return_minus_one( ENOTDIR );                  
   97daa:	2040           	moveal %d0,%a0                              
   97dac:	7214           	moveq #20,%d1                               
   97dae:	70ff           	moveq #-1,%d0                               
                                                                      
  if ( !iop->handlers->read_h )                                       
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->read_h)( iop, dd_buf, dd_len  );            
}                                                                     
   97db0:	4e5e           	unlk %fp                                    
  loc = iop->pathinfo;                                                
  if ( !loc.ops->node_type_h )                                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  if ( (*loc.ops->node_type_h)( &loc ) != RTEMS_FILESYSTEM_DIRECTORY )
    rtems_set_errno_and_return_minus_one( ENOTDIR );                  
   97db2:	2081           	movel %d1,%a0@                              
                                                                      
  if ( !iop->handlers->read_h )                                       
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  return (*iop->handlers->read_h)( iop, dd_buf, dd_len  );            
}                                                                     
   97db4:	4e75           	rts                                         
   *  Return the number of bytes that were actually transfered as a result
   *  of the read attempt.                                            
   */                                                                 
                                                                      
  if ( !iop->handlers->read_h )                                       
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   97db6:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
                                                                      
  return (*iop->handlers->read_h)( iop, dd_buf, dd_len  );            
}                                                                     
   97dbc:	246e ffe8      	moveal %fp@(-24),%a2                        <== NOT EXECUTED
   *  Return the number of bytes that were actually transfered as a result
   *  of the read attempt.                                            
   */                                                                 
                                                                      
  if ( !iop->handlers->read_h )                                       
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   97dc0:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   97dc2:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  return (*iop->handlers->read_h)( iop, dd_buf, dd_len  );            
}                                                                     
   97dc4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   *  Return the number of bytes that were actually transfered as a result
   *  of the read attempt.                                            
   */                                                                 
                                                                      
  if ( !iop->handlers->read_h )                                       
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   97dc6:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
                                                                      
  return (*iop->handlers->read_h)( iop, dd_buf, dd_len  );            
}                                                                     
	...                                                                  
                                                                      
000672ec <getgid>:                                                    
 *  4.2.1 Get Real User, Effective User, Ral Group, and Effective Group IDs,
 *        P1003.1b-1993, p. 84                                        
 */                                                                   
                                                                      
gid_t getgid( void )                                                  
{                                                                     
   672ec:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   672f0:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   <== NOT EXECUTED
  return _POSIX_types_Gid;                                            
}                                                                     
   672f6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   672f8:	3028 0034      	movew %a0@(52),%d0                          <== NOT EXECUTED
                                                                      
00067896 <getgr_r>:                                                   
  struct group   *grp,                                                
  char           *buffer,                                             
  size_t          bufsize,                                            
  struct group  **result                                              
)                                                                     
{                                                                     
   67896:	4e56 ffe0      	linkw %fp,#-32                              
   6789a:	48d7 1c7c      	moveml %d2-%d6/%a2-%a4,%sp@                 
   6789e:	242e 0008      	movel %fp@(8),%d2                           
   678a2:	47fa fc26      	lea %pc@(674ca <scangr>),%a3                
      errno = EINVAL;                                                 
      fclose(fp);                                                     
      return -1;                                                      
    }                                                                 
    if (name) {                                                       
      match = (strcmp(grp->gr_name, name) == 0);                      
   678a6:	49f9 0008 696c 	lea 8696c <strcmp>,%a4                      
  struct group   *grp,                                                
  char           *buffer,                                             
  size_t          bufsize,                                            
  struct group  **result                                              
)                                                                     
{                                                                     
   678ac:	2c2e 000c      	movel %fp@(12),%d6                          
   678b0:	246e 0010      	moveal %fp@(16),%a2                         
   678b4:	2a2e 0014      	movel %fp@(20),%d5                          
   678b8:	282e 0018      	movel %fp@(24),%d4                          
  FILE *fp;                                                           
  int match;                                                          
                                                                      
  init_etc_passwd_group();                                            
   678bc:	4eb9 0006 7752 	jsr 67752 <init_etc_passwd_group>           
                                                                      
  if ((fp = fopen("/etc/group", "r")) == NULL) {                      
   678c2:	4879 0009 a42b 	pea 9a42b <rtems_bdpart_shell_usage+0x69f>  
   678c8:	4879 0009 8d05 	pea 98d05 <_rodata_start+0x845>             
   678ce:	4eb9 0008 17e0 	jsr 817e0 <fopen>                           
   678d4:	508f           	addql #8,%sp                                
   678d6:	2600           	movel %d0,%d3                               
   678d8:	6778           	beqs 67952 <getgr_r+0xbc>                   
    errno = EINVAL;                                                   
    return -1;                                                        
  }                                                                   
  for(;;) {                                                           
    if (!scangr(fp, grp, buffer, bufsize)) {                          
   678da:	2f04           	movel %d4,%sp@-                             
   678dc:	2f05           	movel %d5,%sp@-                             
   678de:	2f0a           	movel %a2,%sp@-                             
   678e0:	2f03           	movel %d3,%sp@-                             
   678e2:	4e93           	jsr %a3@                                    
   678e4:	4fef 0010      	lea %sp@(16),%sp                            
   678e8:	4a80           	tstl %d0                                    
   678ea:	6744           	beqs 67930 <getgr_r+0x9a>                   
      errno = EINVAL;                                                 
      fclose(fp);                                                     
      return -1;                                                      
    }                                                                 
    if (name) {                                                       
   678ec:	4a82           	tstl %d2                                    
   678ee:	672e           	beqs 6791e <getgr_r+0x88>                   
      match = (strcmp(grp->gr_name, name) == 0);                      
   678f0:	2f02           	movel %d2,%sp@-                             
   678f2:	2f12           	movel %a2@,%sp@-                            
   678f4:	4e94           	jsr %a4@                                    
   678f6:	508f           	addql #8,%sp                                
   678f8:	4a80           	tstl %d0                                    
   678fa:	57c0           	seq %d0                                     
   678fc:	49c0           	extbl %d0                                   
   678fe:	4480           	negl %d0                                    
    }                                                                 
    else {                                                            
      match = (grp->gr_gid == gid);                                   
    }                                                                 
    if (match) {                                                      
   67900:	67d8           	beqs 678da <getgr_r+0x44>                   
      fclose(fp);                                                     
   67902:	2f03           	movel %d3,%sp@-                             
   67904:	4eb9 0008 0f7a 	jsr 80f7a <fclose>                          
      *result = grp;                                                  
   6790a:	206e 001c      	moveal %fp@(28),%a0                         
      return 0;                                                       
   6790e:	588f           	addql #4,%sp                                
    else {                                                            
      match = (grp->gr_gid == gid);                                   
    }                                                                 
    if (match) {                                                      
      fclose(fp);                                                     
      *result = grp;                                                  
   67910:	4280           	clrl %d0                                    
   67912:	208a           	movel %a2,%a0@                              
    }                                                                 
  }                                                                   
  fclose(fp);                                                         
  errno = EINVAL;                                                     
  return -1;                                                          
}                                                                     
   67914:	4cee 1c7c ffe0 	moveml %fp@(-32),%d2-%d6/%a2-%a4            
   6791a:	4e5e           	unlk %fp                                    
   6791c:	4e75           	rts                                         
    }                                                                 
    if (name) {                                                       
      match = (strcmp(grp->gr_name, name) == 0);                      
    }                                                                 
    else {                                                            
      match = (grp->gr_gid == gid);                                   
   6791e:	4280           	clrl %d0                                    <== NOT EXECUTED
   67920:	302a 0008      	movew %a2@(8),%d0                           <== NOT EXECUTED
   67924:	bc80           	cmpl %d0,%d6                                <== NOT EXECUTED
   67926:	57c0           	seq %d0                                     <== NOT EXECUTED
   67928:	49c0           	extbl %d0                                   <== NOT EXECUTED
   6792a:	4480           	negl %d0                                    <== NOT EXECUTED
    }                                                                 
    if (match) {                                                      
   6792c:	67ac           	beqs 678da <getgr_r+0x44>                   <== NOT EXECUTED
   6792e:	60d2           	bras 67902 <getgr_r+0x6c>                   <== NOT EXECUTED
    errno = EINVAL;                                                   
    return -1;                                                        
  }                                                                   
  for(;;) {                                                           
    if (!scangr(fp, grp, buffer, bufsize)) {                          
      errno = EINVAL;                                                 
   67930:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   67936:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   67938:	7016           	moveq #22,%d0                               <== NOT EXECUTED
   6793a:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
      fclose(fp);                                                     
   6793c:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   6793e:	4eb9 0008 0f7a 	jsr 80f7a <fclose>                          <== NOT EXECUTED
      return -1;                                                      
   67944:	588f           	addql #4,%sp                                <== NOT EXECUTED
    return -1;                                                        
  }                                                                   
  for(;;) {                                                           
    if (!scangr(fp, grp, buffer, bufsize)) {                          
      errno = EINVAL;                                                 
      fclose(fp);                                                     
   67946:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
    }                                                                 
  }                                                                   
  fclose(fp);                                                         
  errno = EINVAL;                                                     
  return -1;                                                          
}                                                                     
   67948:	4cee 1c7c ffe0 	moveml %fp@(-32),%d2-%d6/%a2-%a4            <== NOT EXECUTED
   6794e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   67950:	4e75           	rts                                         <== NOT EXECUTED
  int match;                                                          
                                                                      
  init_etc_passwd_group();                                            
                                                                      
  if ((fp = fopen("/etc/group", "r")) == NULL) {                      
    errno = EINVAL;                                                   
   67952:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   67958:	7216           	moveq #22,%d1                               <== NOT EXECUTED
   6795a:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   6795c:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
    }                                                                 
  }                                                                   
  fclose(fp);                                                         
  errno = EINVAL;                                                     
  return -1;                                                          
}                                                                     
   6795e:	4cee 1c7c ffe0 	moveml %fp@(-32),%d2-%d6/%a2-%a4            <== NOT EXECUTED
  int match;                                                          
                                                                      
  init_etc_passwd_group();                                            
                                                                      
  if ((fp = fopen("/etc/group", "r")) == NULL) {                      
    errno = EINVAL;                                                   
   67964:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
    }                                                                 
  }                                                                   
  fclose(fp);                                                         
  errno = EINVAL;                                                     
  return -1;                                                          
}                                                                     
   67966:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000675e6 <getgrent>:                                                  
    return NULL;                                                      
  return p;                                                           
}                                                                     
                                                                      
struct group *getgrent(void)                                          
{                                                                     
   675e6:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  if (group_fp == NULL)                                               
   675ea:	2039 000a 60b2 	movel a60b2 <group_fp>,%d0                  <== NOT EXECUTED
   675f0:	6608           	bnes 675fa <getgrent+0x14>                  <== NOT EXECUTED
    return NULL;                                                      
  if (!scangr(group_fp, &grent, grbuf, sizeof grbuf))                 
   675f2:	4281           	clrl %d1                                    <== NOT EXECUTED
    return NULL;                                                      
  return &grent;                                                      
}                                                                     
   675f4:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   675f6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   675f8:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
struct group *getgrent(void)                                          
{                                                                     
  if (group_fp == NULL)                                               
    return NULL;                                                      
  if (!scangr(group_fp, &grent, grbuf, sizeof grbuf))                 
   675fa:	4878 00c8      	pea c8 <DBL_MANT_DIG+0x93>                  <== NOT EXECUTED
   675fe:	4879 000a 60b6 	pea a60b6 <grbuf>                           <== NOT EXECUTED
   67604:	4879 000a 617e 	pea a617e <grent>                           <== NOT EXECUTED
   6760a:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   6760c:	4eba febc      	jsr %pc@(674ca <scangr>)                    <== NOT EXECUTED
   67610:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   67614:	223c 000a 617e 	movel #680318,%d1                           <== NOT EXECUTED
   6761a:	4a80           	tstl %d0                                    <== NOT EXECUTED
   6761c:	67d4           	beqs 675f2 <getgrent+0xc>                   <== NOT EXECUTED
    return NULL;                                                      
  return &grent;                                                      
}                                                                     
   6761e:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   67620:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00067990 <getgrgid>:                                                  
  gid_t gid                                                           
)                                                                     
{                                                                     
  struct group *p;                                                    
                                                                      
  if(getgrgid_r(gid, &grent, grbuf, sizeof grbuf, &p))                
   67990:	4280           	clrl %d0                                    <== NOT EXECUTED
}                                                                     
                                                                      
struct group *getgrgid(                                               
  gid_t gid                                                           
)                                                                     
{                                                                     
   67992:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
  struct group *p;                                                    
                                                                      
  if(getgrgid_r(gid, &grent, grbuf, sizeof grbuf, &p))                
   67996:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   6799a:	4878 00c8      	pea c8 <DBL_MANT_DIG+0x93>                  <== NOT EXECUTED
   6799e:	4879 000a 60b6 	pea a60b6 <grbuf>                           <== NOT EXECUTED
   679a4:	4879 000a 617e 	pea a617e <grent>                           <== NOT EXECUTED
   679aa:	302e 000a      	movew %fp@(10),%d0                          <== NOT EXECUTED
   679ae:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   679b0:	4eb9 0006 796a 	jsr 6796a <getgrgid_r>                      <== NOT EXECUTED
   679b6:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   679ba:	4a80           	tstl %d0                                    <== NOT EXECUTED
   679bc:	6608           	bnes 679c6 <getgrgid+0x36>                  <== NOT EXECUTED
    return NULL;                                                      
  return p;                                                           
   679be:	202e fffc      	movel %fp@(-4),%d0                          <== NOT EXECUTED
}                                                                     
   679c2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   679c4:	4e75           	rts                                         <== NOT EXECUTED
  gid_t gid                                                           
)                                                                     
{                                                                     
  struct group *p;                                                    
                                                                      
  if(getgrgid_r(gid, &grent, grbuf, sizeof grbuf, &p))                
   679c6:	4280           	clrl %d0                                    <== NOT EXECUTED
    return NULL;                                                      
  return p;                                                           
}                                                                     
   679c8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0006796a <getgrgid_r>:                                                
  char           *buffer,                                             
  size_t          bufsize,                                            
  struct group  **result                                              
)                                                                     
{                                                                     
  return getgr_r(NULL, gid, grp, buffer, bufsize, result);            
   6796a:	4280           	clrl %d0                                    <== NOT EXECUTED
  struct group   *grp,                                                
  char           *buffer,                                             
  size_t          bufsize,                                            
  struct group  **result                                              
)                                                                     
{                                                                     
   6796c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return getgr_r(NULL, gid, grp, buffer, bufsize, result);            
   67970:	2f2e 0018      	movel %fp@(24),%sp@-                        <== NOT EXECUTED
   67974:	2f2e 0014      	movel %fp@(20),%sp@-                        <== NOT EXECUTED
   67978:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   6797c:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   67980:	302e 000a      	movew %fp@(10),%d0                          <== NOT EXECUTED
   67984:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   67986:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   67988:	4eba ff0c      	jsr %pc@(67896 <getgr_r>)                   <== NOT EXECUTED
}                                                                     
   6798c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000679ee <getgrnam>:                                                  
                                                                      
struct group *getgrnam(                                               
  const char *name                                                    
)                                                                     
{                                                                     
   679ee:	4e56 fffc      	linkw %fp,#-4                               
  struct group *p;                                                    
                                                                      
  if(getgrnam_r(name, &grent, grbuf, sizeof grbuf, &p))               
   679f2:	486e fffc      	pea %fp@(-4)                                
   679f6:	4878 00c8      	pea c8 <DBL_MANT_DIG+0x93>                  
   679fa:	4879 000a 60b6 	pea a60b6 <grbuf>                           
   67a00:	4879 000a 617e 	pea a617e <grent>                           
   67a06:	2f2e 0008      	movel %fp@(8),%sp@-                         
   67a0a:	4eb9 0006 79cc 	jsr 679cc <getgrnam_r>                      
   67a10:	4fef 0014      	lea %sp@(20),%sp                            
   67a14:	4a80           	tstl %d0                                    
   67a16:	6608           	bnes 67a20 <getgrnam+0x32>                  
    return NULL;                                                      
  return p;                                                           
   67a18:	202e fffc      	movel %fp@(-4),%d0                          
}                                                                     
   67a1c:	4e5e           	unlk %fp                                    
   67a1e:	4e75           	rts                                         
  const char *name                                                    
)                                                                     
{                                                                     
  struct group *p;                                                    
                                                                      
  if(getgrnam_r(name, &grent, grbuf, sizeof grbuf, &p))               
   67a20:	4280           	clrl %d0                                    <== NOT EXECUTED
    return NULL;                                                      
  return p;                                                           
}                                                                     
   67a22:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00067a60 <getpw_r>:                                                   
  struct passwd  *pwd,                                                
  char           *buffer,                                             
  size_t          bufsize,                                            
  struct passwd **result                                              
)                                                                     
{                                                                     
   67a60:	4e56 ffe0      	linkw %fp,#-32                              
   67a64:	48d7 1c7c      	moveml %d2-%d6/%a2-%a4,%sp@                 
   67a68:	242e 0008      	movel %fp@(8),%d2                           
   67a6c:	47fa fbb6      	lea %pc@(67624 <scanpw>),%a3                
      errno = EINVAL;                                                 
      fclose(fp);                                                     
      return -1;                                                      
    }                                                                 
    if (name) {                                                       
      match = (strcmp(pwd->pw_name, name) == 0);                      
   67a70:	49f9 0008 696c 	lea 8696c <strcmp>,%a4                      
  struct passwd  *pwd,                                                
  char           *buffer,                                             
  size_t          bufsize,                                            
  struct passwd **result                                              
)                                                                     
{                                                                     
   67a76:	2c2e 000c      	movel %fp@(12),%d6                          
   67a7a:	246e 0010      	moveal %fp@(16),%a2                         
   67a7e:	2a2e 0014      	movel %fp@(20),%d5                          
   67a82:	282e 0018      	movel %fp@(24),%d4                          
  FILE *fp;                                                           
  int match;                                                          
                                                                      
  init_etc_passwd_group();                                            
   67a86:	4eb9 0006 7752 	jsr 67752 <init_etc_passwd_group>           
                                                                      
  if ((fp = fopen("/etc/passwd", "r")) == NULL) {                     
   67a8c:	4879 0009 a42b 	pea 9a42b <rtems_bdpart_shell_usage+0x69f>  
   67a92:	4879 0009 8cc0 	pea 98cc0 <_rodata_start+0x800>             
   67a98:	4eb9 0008 17e0 	jsr 817e0 <fopen>                           
   67a9e:	508f           	addql #8,%sp                                
   67aa0:	2600           	movel %d0,%d3                               
   67aa2:	6778           	beqs 67b1c <getpw_r+0xbc>                   
    errno = EINVAL;                                                   
    return -1;                                                        
  }                                                                   
  for(;;) {                                                           
    if (!scanpw(fp, pwd, buffer, bufsize)) {                          
   67aa4:	2f04           	movel %d4,%sp@-                             
   67aa6:	2f05           	movel %d5,%sp@-                             
   67aa8:	2f0a           	movel %a2,%sp@-                             
   67aaa:	2f03           	movel %d3,%sp@-                             
   67aac:	4e93           	jsr %a3@                                    
   67aae:	4fef 0010      	lea %sp@(16),%sp                            
   67ab2:	4a80           	tstl %d0                                    
   67ab4:	6744           	beqs 67afa <getpw_r+0x9a>                   
      errno = EINVAL;                                                 
      fclose(fp);                                                     
      return -1;                                                      
    }                                                                 
    if (name) {                                                       
   67ab6:	4a82           	tstl %d2                                    
   67ab8:	672e           	beqs 67ae8 <getpw_r+0x88>                   
      match = (strcmp(pwd->pw_name, name) == 0);                      
   67aba:	2f02           	movel %d2,%sp@-                             
   67abc:	2f12           	movel %a2@,%sp@-                            
   67abe:	4e94           	jsr %a4@                                    
   67ac0:	508f           	addql #8,%sp                                
   67ac2:	4a80           	tstl %d0                                    
   67ac4:	57c0           	seq %d0                                     
   67ac6:	49c0           	extbl %d0                                   
   67ac8:	4480           	negl %d0                                    
    }                                                                 
    else {                                                            
      match = (pwd->pw_uid == uid);                                   
    }                                                                 
    if (match) {                                                      
   67aca:	67d8           	beqs 67aa4 <getpw_r+0x44>                   
      fclose(fp);                                                     
   67acc:	2f03           	movel %d3,%sp@-                             
   67ace:	4eb9 0008 0f7a 	jsr 80f7a <fclose>                          
      *result = pwd;                                                  
   67ad4:	206e 001c      	moveal %fp@(28),%a0                         
      return 0;                                                       
   67ad8:	588f           	addql #4,%sp                                
    else {                                                            
      match = (pwd->pw_uid == uid);                                   
    }                                                                 
    if (match) {                                                      
      fclose(fp);                                                     
      *result = pwd;                                                  
   67ada:	4280           	clrl %d0                                    
   67adc:	208a           	movel %a2,%a0@                              
    }                                                                 
  }                                                                   
  fclose(fp);                                                         
  errno = EINVAL;                                                     
  return -1;                                                          
}                                                                     
   67ade:	4cee 1c7c ffe0 	moveml %fp@(-32),%d2-%d6/%a2-%a4            
   67ae4:	4e5e           	unlk %fp                                    
   67ae6:	4e75           	rts                                         
    }                                                                 
    if (name) {                                                       
      match = (strcmp(pwd->pw_name, name) == 0);                      
    }                                                                 
    else {                                                            
      match = (pwd->pw_uid == uid);                                   
   67ae8:	4280           	clrl %d0                                    <== NOT EXECUTED
   67aea:	302a 0008      	movew %a2@(8),%d0                           <== NOT EXECUTED
   67aee:	bc80           	cmpl %d0,%d6                                <== NOT EXECUTED
   67af0:	57c0           	seq %d0                                     <== NOT EXECUTED
   67af2:	49c0           	extbl %d0                                   <== NOT EXECUTED
   67af4:	4480           	negl %d0                                    <== NOT EXECUTED
    }                                                                 
    if (match) {                                                      
   67af6:	67ac           	beqs 67aa4 <getpw_r+0x44>                   <== NOT EXECUTED
   67af8:	60d2           	bras 67acc <getpw_r+0x6c>                   <== NOT EXECUTED
    errno = EINVAL;                                                   
    return -1;                                                        
  }                                                                   
  for(;;) {                                                           
    if (!scanpw(fp, pwd, buffer, bufsize)) {                          
      errno = EINVAL;                                                 
   67afa:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   67b00:	7416           	moveq #22,%d2                               <== NOT EXECUTED
   67b02:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   67b04:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
      fclose(fp);                                                     
   67b06:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   67b08:	4eb9 0008 0f7a 	jsr 80f7a <fclose>                          <== NOT EXECUTED
      return -1;                                                      
   67b0e:	588f           	addql #4,%sp                                <== NOT EXECUTED
    return -1;                                                        
  }                                                                   
  for(;;) {                                                           
    if (!scanpw(fp, pwd, buffer, bufsize)) {                          
      errno = EINVAL;                                                 
      fclose(fp);                                                     
   67b10:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
    }                                                                 
  }                                                                   
  fclose(fp);                                                         
  errno = EINVAL;                                                     
  return -1;                                                          
}                                                                     
   67b12:	4cee 1c7c ffe0 	moveml %fp@(-32),%d2-%d6/%a2-%a4            <== NOT EXECUTED
   67b18:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   67b1a:	4e75           	rts                                         <== NOT EXECUTED
  int match;                                                          
                                                                      
  init_etc_passwd_group();                                            
                                                                      
  if ((fp = fopen("/etc/passwd", "r")) == NULL) {                     
    errno = EINVAL;                                                   
   67b1c:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   67b22:	7616           	moveq #22,%d3                               <== NOT EXECUTED
   67b24:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   67b26:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   67b28:	2083           	movel %d3,%a0@                              <== NOT EXECUTED
    }                                                                 
  }                                                                   
  fclose(fp);                                                         
  errno = EINVAL;                                                     
  return -1;                                                          
}                                                                     
   67b2a:	4cee 1c7c ffe0 	moveml %fp@(-32),%d2-%d6/%a2-%a4            <== NOT EXECUTED
   67b30:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00067714 <getpwent>:                                                  
    return NULL;                                                      
  return p;                                                           
}                                                                     
                                                                      
struct passwd *getpwent(void)                                         
{                                                                     
   67714:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  if (passwd_fp == NULL)                                              
   67718:	2039 000a 5fca 	movel a5fca <passwd_fp>,%d0                 <== NOT EXECUTED
   6771e:	6608           	bnes 67728 <getpwent+0x14>                  <== NOT EXECUTED
    return NULL;                                                      
  if (!scanpw(passwd_fp, &pwent, pwbuf, sizeof pwbuf))                
   67720:	4281           	clrl %d1                                    <== NOT EXECUTED
    return NULL;                                                      
  return &pwent;                                                      
}                                                                     
   67722:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   67724:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   67726:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
struct passwd *getpwent(void)                                         
{                                                                     
  if (passwd_fp == NULL)                                              
    return NULL;                                                      
  if (!scanpw(passwd_fp, &pwent, pwbuf, sizeof pwbuf))                
   67728:	4878 00c8      	pea c8 <DBL_MANT_DIG+0x93>                  <== NOT EXECUTED
   6772c:	4879 000a 5fce 	pea a5fce <pwbuf>                           <== NOT EXECUTED
   67732:	4879 000a 6096 	pea a6096 <pwent>                           <== NOT EXECUTED
   67738:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   6773a:	4eba fee8      	jsr %pc@(67624 <scanpw>)                    <== NOT EXECUTED
   6773e:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   67742:	223c 000a 6096 	movel #680086,%d1                           <== NOT EXECUTED
   67748:	4a80           	tstl %d0                                    <== NOT EXECUTED
   6774a:	67d4           	beqs 67720 <getpwent+0xc>                   <== NOT EXECUTED
    return NULL;                                                      
  return &pwent;                                                      
}                                                                     
   6774c:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   6774e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00067bb8 <getpwnam>:                                                  
                                                                      
struct passwd *getpwnam(                                              
  const char *name                                                    
)                                                                     
{                                                                     
   67bb8:	4e56 fffc      	linkw %fp,#-4                               
  struct passwd *p;                                                   
                                                                      
  if(getpwnam_r(name, &pwent, pwbuf, sizeof pwbuf, &p))               
   67bbc:	486e fffc      	pea %fp@(-4)                                
   67bc0:	4878 00c8      	pea c8 <DBL_MANT_DIG+0x93>                  
   67bc4:	4879 000a 5fce 	pea a5fce <pwbuf>                           
   67bca:	4879 000a 6096 	pea a6096 <pwent>                           
   67bd0:	2f2e 0008      	movel %fp@(8),%sp@-                         
   67bd4:	4eb9 0006 7b96 	jsr 67b96 <getpwnam_r>                      
   67bda:	4fef 0014      	lea %sp@(20),%sp                            
   67bde:	4a80           	tstl %d0                                    
   67be0:	6608           	bnes 67bea <getpwnam+0x32>                  
    return NULL;                                                      
  return p;                                                           
   67be2:	202e fffc      	movel %fp@(-4),%d0                          
}                                                                     
   67be6:	4e5e           	unlk %fp                                    
   67be8:	4e75           	rts                                         
  const char *name                                                    
)                                                                     
{                                                                     
  struct passwd *p;                                                   
                                                                      
  if(getpwnam_r(name, &pwent, pwbuf, sizeof pwbuf, &p))               
   67bea:	4280           	clrl %d0                                    <== NOT EXECUTED
    return NULL;                                                      
  return p;                                                           
}                                                                     
   67bec:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00067b5a <getpwuid>:                                                  
  uid_t uid                                                           
)                                                                     
{                                                                     
  struct passwd *p;                                                   
                                                                      
  if(getpwuid_r(uid, &pwent, pwbuf, sizeof pwbuf, &p))                
   67b5a:	4280           	clrl %d0                                    <== NOT EXECUTED
}                                                                     
                                                                      
struct passwd *getpwuid(                                              
  uid_t uid                                                           
)                                                                     
{                                                                     
   67b5c:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
  struct passwd *p;                                                   
                                                                      
  if(getpwuid_r(uid, &pwent, pwbuf, sizeof pwbuf, &p))                
   67b60:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   67b64:	4878 00c8      	pea c8 <DBL_MANT_DIG+0x93>                  <== NOT EXECUTED
   67b68:	4879 000a 5fce 	pea a5fce <pwbuf>                           <== NOT EXECUTED
   67b6e:	4879 000a 6096 	pea a6096 <pwent>                           <== NOT EXECUTED
   67b74:	302e 000a      	movew %fp@(10),%d0                          <== NOT EXECUTED
   67b78:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   67b7a:	4eb9 0006 7b34 	jsr 67b34 <getpwuid_r>                      <== NOT EXECUTED
   67b80:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   67b84:	4a80           	tstl %d0                                    <== NOT EXECUTED
   67b86:	6608           	bnes 67b90 <getpwuid+0x36>                  <== NOT EXECUTED
    return NULL;                                                      
  return p;                                                           
   67b88:	202e fffc      	movel %fp@(-4),%d0                          <== NOT EXECUTED
}                                                                     
   67b8c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   67b8e:	4e75           	rts                                         <== NOT EXECUTED
  uid_t uid                                                           
)                                                                     
{                                                                     
  struct passwd *p;                                                   
                                                                      
  if(getpwuid_r(uid, &pwent, pwbuf, sizeof pwbuf, &p))                
   67b90:	4280           	clrl %d0                                    <== NOT EXECUTED
    return NULL;                                                      
  return p;                                                           
}                                                                     
   67b92:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00067b34 <getpwuid_r>:                                                
  char           *buffer,                                             
  size_t          bufsize,                                            
  struct passwd **result                                              
)                                                                     
{                                                                     
  return getpw_r(NULL, uid, pwd, buffer, bufsize, result);            
   67b34:	4280           	clrl %d0                                    <== NOT EXECUTED
  struct passwd  *pwd,                                                
  char           *buffer,                                             
  size_t          bufsize,                                            
  struct passwd **result                                              
)                                                                     
{                                                                     
   67b36:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  return getpw_r(NULL, uid, pwd, buffer, bufsize, result);            
   67b3a:	2f2e 0018      	movel %fp@(24),%sp@-                        <== NOT EXECUTED
   67b3e:	2f2e 0014      	movel %fp@(20),%sp@-                        <== NOT EXECUTED
   67b42:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   67b46:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   67b4a:	302e 000a      	movew %fp@(10),%d0                          <== NOT EXECUTED
   67b4e:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   67b50:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   67b52:	4eba ff0c      	jsr %pc@(67a60 <getpw_r>)                   <== NOT EXECUTED
}                                                                     
   67b56:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004a894 <gettimeofday>:                                              
 */                                                                   
int gettimeofday(                                                     
  struct timeval  *tp,                                                
  void * __tz __attribute__((unused))                                 
)                                                                     
{                                                                     
   4a894:	4e56 ffec      	linkw %fp,#-20                              
   4a898:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
   4a89c:	246e 0008      	moveal %fp@(8),%a2                          
  /* struct timezone* tzp = (struct timezone*) __tz; */               
  if ( !tp ) {                                                        
   4a8a0:	4a8a           	tstl %a2                                    
   4a8a2:	673c           	beqs 4a8e0 <gettimeofday+0x4c>              
{                                                                     
  ISR_Level       level;                                              
  struct timespec now;                                                
  suseconds_t     useconds;                                           
                                                                      
  _ISR_Disable(level);                                                
   4a8a4:	203c 0000 0700 	movel #1792,%d0                             
   4a8aa:	40c2           	movew %sr,%d2                               
   4a8ac:	8082           	orl %d2,%d0                                 
   4a8ae:	46c0           	movew %d0,%sr                               
    _TOD_Get( &now );                                                 
   4a8b0:	486e fff8      	pea %fp@(-8)                                
   4a8b4:	4eb9 0004 bb88 	jsr 4bb88 <_TOD_Get>                        
  _ISR_Enable(level);                                                 
   4a8ba:	46c2           	movew %d2,%sr                               
                                                                      
  useconds = (suseconds_t)now.tv_nsec;                                
  useconds /= (suseconds_t)TOD_NANOSECONDS_PER_MICROSECOND;           
                                                                      
  time->tv_sec  = now.tv_sec;                                         
  time->tv_usec = useconds;                                           
   4a8bc:	263c 0000 03e8 	movel #1000,%d3                             
   *  Timezone information ignored by the OS proper.   Per email      
   *  with Eric Norum, this is how GNU/Linux, Solaris, and MacOS X    
   *  do it.  This puts us in good company.                           
   */                                                                 
                                                                      
  return 0;                                                           
   4a8c2:	588f           	addql #4,%sp                                
   4a8c4:	4280           	clrl %d0                                    
                                                                      
  _ISR_Disable(level);                                                
    _TOD_Get( &now );                                                 
  _ISR_Enable(level);                                                 
                                                                      
  useconds = (suseconds_t)now.tv_nsec;                                
   4a8c6:	222e fffc      	movel %fp@(-4),%d1                          
  useconds /= (suseconds_t)TOD_NANOSECONDS_PER_MICROSECOND;           
                                                                      
  time->tv_sec  = now.tv_sec;                                         
  time->tv_usec = useconds;                                           
   4a8ca:	4c43 1801      	remsl %d3,%d1,%d1                           
   4a8ce:	2541 0004      	movel %d1,%a2@(4)                           
  _ISR_Enable(level);                                                 
                                                                      
  useconds = (suseconds_t)now.tv_nsec;                                
  useconds /= (suseconds_t)TOD_NANOSECONDS_PER_MICROSECOND;           
                                                                      
  time->tv_sec  = now.tv_sec;                                         
   4a8d2:	24ae fff8      	movel %fp@(-8),%a2@                         
}                                                                     
   4a8d6:	4cee 040c ffec 	moveml %fp@(-20),%d2-%d3/%a2                
   4a8dc:	4e5e           	unlk %fp                                    
   4a8de:	4e75           	rts                                         
  void * __tz __attribute__((unused))                                 
)                                                                     
{                                                                     
  /* struct timezone* tzp = (struct timezone*) __tz; */               
  if ( !tp ) {                                                        
    errno = EFAULT;                                                   
   4a8e0:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   4a8e6:	720e           	moveq #14,%d1                               <== NOT EXECUTED
   4a8e8:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4a8ea:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   *  with Eric Norum, this is how GNU/Linux, Solaris, and MacOS X    
   *  do it.  This puts us in good company.                           
   */                                                                 
                                                                      
  return 0;                                                           
}                                                                     
   4a8ec:	4cee 040c ffec 	moveml %fp@(-20),%d2-%d3/%a2                <== NOT EXECUTED
  void * __tz __attribute__((unused))                                 
)                                                                     
{                                                                     
  /* struct timezone* tzp = (struct timezone*) __tz; */               
  if ( !tp ) {                                                        
    errno = EFAULT;                                                   
   4a8f2:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
   *  with Eric Norum, this is how GNU/Linux, Solaris, and MacOS X    
   *  do it.  This puts us in good company.                           
   */                                                                 
                                                                      
  return 0;                                                           
}                                                                     
   4a8f4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000468dc <getuid>:                                                    
 *  4.2.1 Get Real User, Effective User, Ral Group, and Effective Group IDs,
 *        P1003.1b-1993, p. 84                                        
 */                                                                   
                                                                      
uid_t getuid( void )                                                  
{                                                                     
   468dc:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   468e0:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   <== NOT EXECUTED
  return _POSIX_types_Uid;                                            
}                                                                     
   468e6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   468e8:	3028 0032      	movew %a0@(50),%d0                          <== NOT EXECUTED
                                                                      
00053210 <imfs_dir_open>:                                             
)                                                                     
{                                                                     
  IMFS_jnode_t      *the_jnode;                                       
                                                                      
  /* Is the node a directory ? */                                     
  the_jnode = (IMFS_jnode_t *) iop->file_info;                        
   53210:	7001           	moveq #1,%d0                                
  rtems_libio_t  *iop,                                                
  const char *pathname,                                               
  uint32_t   flag,                                                    
  uint32_t   mode                                                     
)                                                                     
{                                                                     
   53212:	4e56 0000      	linkw %fp,#0                                
   53216:	206e 0008      	moveal %fp@(8),%a0                          
  IMFS_jnode_t      *the_jnode;                                       
                                                                      
  /* Is the node a directory ? */                                     
  the_jnode = (IMFS_jnode_t *) iop->file_info;                        
   5321a:	2268 0038      	moveal %a0@(56),%a1                         
  rtems_libio_t  *iop,                                                
  const char *pathname,                                               
  uint32_t   flag,                                                    
  uint32_t   mode                                                     
)                                                                     
{                                                                     
   5321e:	2f02           	movel %d2,%sp@-                             
  IMFS_jnode_t      *the_jnode;                                       
                                                                      
  /* Is the node a directory ? */                                     
  the_jnode = (IMFS_jnode_t *) iop->file_info;                        
   53220:	b0a9 0048      	cmpl %a1@(72),%d0                           
   53224:	6708           	beqs 5322e <imfs_dir_open+0x1e>             
  if ( the_jnode->type != IMFS_DIRECTORY )                            
     return -1;      /* It wasn't a directory --> return error */     
                                                                      
  iop->offset = 0;                                                    
  return 0;                                                           
}                                                                     
   53226:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
)                                                                     
{                                                                     
  IMFS_jnode_t      *the_jnode;                                       
                                                                      
  /* Is the node a directory ? */                                     
  the_jnode = (IMFS_jnode_t *) iop->file_info;                        
   53228:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
  if ( the_jnode->type != IMFS_DIRECTORY )                            
     return -1;      /* It wasn't a directory --> return error */     
                                                                      
  iop->offset = 0;                                                    
  return 0;                                                           
}                                                                     
   5322a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   5322c:	4e75           	rts                                         <== NOT EXECUTED
  the_jnode = (IMFS_jnode_t *) iop->file_info;                        
                                                                      
  if ( the_jnode->type != IMFS_DIRECTORY )                            
     return -1;      /* It wasn't a directory --> return error */     
                                                                      
  iop->offset = 0;                                                    
   5322e:	4280           	clrl %d0                                    
   53230:	4281           	clrl %d1                                    
   53232:	4282           	clrl %d2                                    
   53234:	2141 000c      	movel %d1,%a0@(12)                          
   53238:	2142 0010      	movel %d2,%a0@(16)                          
  return 0;                                                           
}                                                                     
   5323c:	241f           	movel %sp@+,%d2                             
   5323e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0005337e <imfs_dir_rmnod>:                                            
                                                                      
int imfs_dir_rmnod(                                                   
  rtems_filesystem_location_info_t  *parent_pathloc, /* IN */         
  rtems_filesystem_location_info_t  *pathloc         /* IN */         
)                                                                     
{                                                                     
   5337e:	4e56 fff8      	linkw %fp,#-8                               
   53382:	2f0b           	movel %a3,%sp@-                             
   53384:	266e 000c      	moveal %fp@(12),%a3                         
   53388:	2f0a           	movel %a2,%sp@-                             
  IMFS_jnode_t *the_jnode;                                            
                                                                      
  the_jnode = (IMFS_jnode_t *) pathloc->node_access;                  
   5338a:	2453           	moveal %a3@,%a2                             
   5338c:	200a           	movel %a2,%d0                               
   5338e:	0680 0000 0050 	addil #80,%d0                               
   53394:	b0aa 004c      	cmpl %a2@(76),%d0                           
   53398:	6600 0090      	bnew 5342a <imfs_dir_rmnod+0xac>            
                                                                      
  /*                                                                  
   * You cannot remove the file system root node.                     
   */                                                                 
                                                                      
  if ( pathloc->mt_entry->mt_fs_root.node_access == pathloc->node_access )
   5339c:	206b 0010      	moveal %a3@(16),%a0                         
   533a0:	b5e8 001c      	cmpal %a0@(28),%a2                          
   533a4:	6700 009e      	beqw 53444 <imfs_dir_rmnod+0xc6>            
                                                                      
  /*                                                                  
   * You cannot remove a mountpoint.                                  
   */                                                                 
                                                                      
   if ( the_jnode->info.directory.mt_fs != NULL )                     
   533a8:	4aaa 0058      	tstl %a2@(88)                               
   533ac:	6600 0096      	bnew 53444 <imfs_dir_rmnod+0xc6>            
                                                                      
  /*                                                                  
   * Take the node out of the parent's chain that contains this node  
   */                                                                 
                                                                      
  if ( the_jnode->Parent != NULL ) {                                  
   533b0:	4aaa 0008      	tstl %a2@(8)                                
   533b4:	670e           	beqs 533c4 <imfs_dir_rmnod+0x46>            
   533b6:	2f0a           	movel %a2,%sp@-                             
   533b8:	4eb9 0004 8720 	jsr 48720 <_Chain_Extract>                  
    rtems_chain_extract( (rtems_chain_node *) the_jnode );            
    the_jnode->Parent = NULL;                                         
   533be:	588f           	addql #4,%sp                                
   533c0:	42aa 0008      	clrl %a2@(8)                                
                                                                      
  /*                                                                  
   * Decrement the link counter and see if we can free the space.     
   */                                                                 
                                                                      
  the_jnode->st_nlink--;                                              
   533c4:	302a 0032      	movew %a2@(50),%d0                          
   533c8:	5380           	subql #1,%d0                                
   533ca:	3540 0032      	movew %d0,%a2@(50)                          
  IMFS_update_ctime( the_jnode );                                     
   533ce:	42a7           	clrl %sp@-                                  
   533d0:	486e fff8      	pea %fp@(-8)                                
   533d4:	4eb9 0004 4060 	jsr 44060 <gettimeofday>                    
   533da:	256e fff8 0044 	movel %fp@(-8),%a2@(68)                     
                                                                      
  /*                                                                  
   * The file cannot be open and the link must be less than 1 to free.
   */                                                                 
                                                                      
  if ( !rtems_libio_is_file_open( the_jnode ) && (the_jnode->st_nlink < 1) ) {
   533e0:	2f0a           	movel %a2,%sp@-                             
   533e2:	4eb9 0004 ff3a 	jsr 4ff3a <rtems_libio_is_file_open>        
   533e8:	4fef 000c      	lea %sp@(12),%sp                            
   533ec:	4a80           	tstl %d0                                    
   533ee:	662c           	bnes 5341c <imfs_dir_rmnod+0x9e>            
   533f0:	4a6a 0032      	tstw %a2@(50)                               
   533f4:	6626           	bnes 5341c <imfs_dir_rmnod+0x9e>            
                                                                      
    /*                                                                
     * Is the rtems_filesystem_current is this node?                  
     */                                                               
                                                                      
    if ( rtems_filesystem_current.node_access == pathloc->node_access )
   533f6:	2079 0006 381c 	moveal 6381c <rtems_current_user_env>,%a0   
   533fc:	2653           	moveal %a3@,%a3                             
   533fe:	b7e8 0004      	cmpal %a0@(4),%a3                           
   53402:	675a           	beqs 5345e <imfs_dir_rmnod+0xe0>            
                                                                      
    /*                                                                
     * Free memory associated with a memory file.                     
     */                                                               
                                                                      
    free( the_jnode );                                                
   53404:	2f0a           	movel %a2,%sp@-                             
   53406:	4eb9 0004 3fd0 	jsr 43fd0 <free>                            
   5340c:	588f           	addql #4,%sp                                
   5340e:	4280           	clrl %d0                                    
  }                                                                   
                                                                      
  return 0;                                                           
                                                                      
}                                                                     
   53410:	246e fff0      	moveal %fp@(-16),%a2                        
   53414:	266e fff4      	moveal %fp@(-12),%a3                        
   53418:	4e5e           	unlk %fp                                    
   5341a:	4e75           	rts                                         
   5341c:	246e fff0      	moveal %fp@(-16),%a2                        
                                                                      
    /*                                                                
     * Free memory associated with a memory file.                     
     */                                                               
                                                                      
    free( the_jnode );                                                
   53420:	4280           	clrl %d0                                    
  }                                                                   
                                                                      
  return 0;                                                           
                                                                      
}                                                                     
   53422:	266e fff4      	moveal %fp@(-12),%a3                        
   53426:	4e5e           	unlk %fp                                    
   53428:	4e75           	rts                                         
  /*                                                                  
   * You cannot remove a node that still has children                 
   */                                                                 
                                                                      
  if ( ! rtems_chain_is_empty( &the_jnode->info.directory.Entries ) ) 
     rtems_set_errno_and_return_minus_one( ENOTEMPTY );               
   5342a:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         
    free( the_jnode );                                                
  }                                                                   
                                                                      
  return 0;                                                           
                                                                      
}                                                                     
   53430:	246e fff0      	moveal %fp@(-16),%a2                        
  /*                                                                  
   * You cannot remove a node that still has children                 
   */                                                                 
                                                                      
  if ( ! rtems_chain_is_empty( &the_jnode->info.directory.Entries ) ) 
     rtems_set_errno_and_return_minus_one( ENOTEMPTY );               
   53434:	2040           	moveal %d0,%a0                              
   53436:	725a           	moveq #90,%d1                               
   53438:	70ff           	moveq #-1,%d0                               
    free( the_jnode );                                                
  }                                                                   
                                                                      
  return 0;                                                           
                                                                      
}                                                                     
   5343a:	266e fff4      	moveal %fp@(-12),%a3                        
   5343e:	4e5e           	unlk %fp                                    
  /*                                                                  
   * You cannot remove a node that still has children                 
   */                                                                 
                                                                      
  if ( ! rtems_chain_is_empty( &the_jnode->info.directory.Entries ) ) 
     rtems_set_errno_and_return_minus_one( ENOTEMPTY );               
   53440:	2081           	movel %d1,%a0@                              
    free( the_jnode );                                                
  }                                                                   
                                                                      
  return 0;                                                           
                                                                      
}                                                                     
   53442:	4e75           	rts                                         
  /*                                                                  
   * You cannot remove a mountpoint.                                  
   */                                                                 
                                                                      
   if ( the_jnode->info.directory.mt_fs != NULL )                     
     rtems_set_errno_and_return_minus_one( EBUSY );                   
   53444:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         
    free( the_jnode );                                                
  }                                                                   
                                                                      
  return 0;                                                           
                                                                      
}                                                                     
   5344a:	246e fff0      	moveal %fp@(-16),%a2                        
  /*                                                                  
   * You cannot remove a mountpoint.                                  
   */                                                                 
                                                                      
   if ( the_jnode->info.directory.mt_fs != NULL )                     
     rtems_set_errno_and_return_minus_one( EBUSY );                   
   5344e:	2040           	moveal %d0,%a0                              
   53450:	7210           	moveq #16,%d1                               
   53452:	70ff           	moveq #-1,%d0                               
    free( the_jnode );                                                
  }                                                                   
                                                                      
  return 0;                                                           
                                                                      
}                                                                     
   53454:	266e fff4      	moveal %fp@(-12),%a3                        
   53458:	4e5e           	unlk %fp                                    
  /*                                                                  
   * You cannot remove a mountpoint.                                  
   */                                                                 
                                                                      
   if ( the_jnode->info.directory.mt_fs != NULL )                     
     rtems_set_errno_and_return_minus_one( EBUSY );                   
   5345a:	2081           	movel %d1,%a0@                              
    free( the_jnode );                                                
  }                                                                   
                                                                      
  return 0;                                                           
                                                                      
}                                                                     
   5345c:	4e75           	rts                                         
    /*                                                                
     * Is the rtems_filesystem_current is this node?                  
     */                                                               
                                                                      
    if ( rtems_filesystem_current.node_access == pathloc->node_access )
       rtems_filesystem_current.node_access = NULL;                   
   5345e:	42a8 0004      	clrl %a0@(4)                                <== NOT EXECUTED
                                                                      
    /*                                                                
     * Free memory associated with a memory file.                     
     */                                                               
                                                                      
    free( the_jnode );                                                
   53462:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   53464:	4eb9 0004 3fd0 	jsr 43fd0 <free>                            <== NOT EXECUTED
   5346a:	588f           	addql #4,%sp                                <== NOT EXECUTED
   5346c:	4280           	clrl %d0                                    <== NOT EXECUTED
   5346e:	60a0           	bras 53410 <imfs_dir_rmnod+0x92>            <== NOT EXECUTED
                                                                      
00067752 <init_etc_passwd_group>:                                     
                                                                      
/*                                                                    
 * Initialize useable but dummy databases                             
 */                                                                   
void init_etc_passwd_group(void)                                      
{                                                                     
   67752:	4e56 0000      	linkw %fp,#0                                
   67756:	2f0a           	movel %a2,%sp@-                             
   67758:	2f02           	movel %d2,%sp@-                             
  FILE *fp;                                                           
  static char etc_passwd_initted = 0;                                 
                                                                      
  if (etc_passwd_initted)                                             
   6775a:	4a39 000a 5fc8 	tstb a5fc8 <etc_passwd_initted.6309>        
   67760:	670c           	beqs 6776e <init_etc_passwd_group+0x1c>     
    fprintf( fp, "root:x:0:root\n"                                    
                 "rtems:x:1:rtems\n"                                  
                 "tty:x:2:tty\n" );                                   
    fclose(fp);                                                       
  }                                                                   
}                                                                     
   67762:	242e fff8      	movel %fp@(-8),%d2                          
   67766:	246e fffc      	moveal %fp@(-4),%a2                         
   6776a:	4e5e           	unlk %fp                                    
   6776c:	4e75           	rts                                         
  static char etc_passwd_initted = 0;                                 
                                                                      
  if (etc_passwd_initted)                                             
    return;                                                           
  etc_passwd_initted = 1;                                             
  mkdir("/etc", 0777);                                                
   6776e:	4878 01ff      	pea 1ff <DBL_MANT_DIG+0x1ca>                
                                                                      
  /*                                                                  
   *  Initialize /etc/passwd                                          
   */                                                                 
  if ((fp = fopen("/etc/passwd", "r")) != NULL) {                     
   67772:	45f9 0008 17e0 	lea 817e0 <fopen>,%a2                       
  static char etc_passwd_initted = 0;                                 
                                                                      
  if (etc_passwd_initted)                                             
    return;                                                           
  etc_passwd_initted = 1;                                             
  mkdir("/etc", 0777);                                                
   67778:	4879 0009 8ba6 	pea 98ba6 <_rodata_start+0x6e6>             
  FILE *fp;                                                           
  static char etc_passwd_initted = 0;                                 
                                                                      
  if (etc_passwd_initted)                                             
    return;                                                           
  etc_passwd_initted = 1;                                             
   6777e:	7001           	moveq #1,%d0                                
   67780:	13c0 000a 5fc8 	moveb %d0,a5fc8 <etc_passwd_initted.6309>   
  mkdir("/etc", 0777);                                                
   67786:	4eb9 0004 6fd0 	jsr 46fd0 <mkdir>                           
                                                                      
  /*                                                                  
   *  Initialize /etc/passwd                                          
   */                                                                 
  if ((fp = fopen("/etc/passwd", "r")) != NULL) {                     
   6778c:	4879 0009 a42b 	pea 9a42b <rtems_bdpart_shell_usage+0x69f>  
   67792:	4879 0009 8cc0 	pea 98cc0 <_rodata_start+0x800>             
   67798:	4e92           	jsr %a2@                                    
   6779a:	4fef 0010      	lea %sp@(16),%sp                            
   6779e:	4a80           	tstl %d0                                    
   677a0:	677e           	beqs 67820 <init_etc_passwd_group+0xce>     
    fclose(fp);                                                       
   677a2:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   677a4:	4eb9 0008 0f7a 	jsr 80f7a <fclose>                          <== NOT EXECUTED
   677aa:	588f           	addql #4,%sp                                <== NOT EXECUTED
  }                                                                   
                                                                      
  /*                                                                  
   *  Initialize /etc/group                                           
   */                                                                 
  if ((fp = fopen("/etc/group", "r")) != NULL) {                      
   677ac:	4879 0009 a42b 	pea 9a42b <rtems_bdpart_shell_usage+0x69f>  
   677b2:	4879 0009 8d05 	pea 98d05 <_rodata_start+0x845>             
   677b8:	4e92           	jsr %a2@                                    
   677ba:	508f           	addql #8,%sp                                
   677bc:	4a80           	tstl %d0                                    
   677be:	6716           	beqs 677d6 <init_etc_passwd_group+0x84>     
    fclose(fp);                                                       
   677c0:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   677c2:	4eb9 0008 0f7a 	jsr 80f7a <fclose>                          <== NOT EXECUTED
    fprintf( fp, "root:x:0:root\n"                                    
                 "rtems:x:1:rtems\n"                                  
                 "tty:x:2:tty\n" );                                   
    fclose(fp);                                                       
  }                                                                   
}                                                                     
   677c8:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Initialize /etc/group                                           
   */                                                                 
  if ((fp = fopen("/etc/group", "r")) != NULL) {                      
    fclose(fp);                                                       
   677cc:	588f           	addql #4,%sp                                <== NOT EXECUTED
    fprintf( fp, "root:x:0:root\n"                                    
                 "rtems:x:1:rtems\n"                                  
                 "tty:x:2:tty\n" );                                   
    fclose(fp);                                                       
  }                                                                   
}                                                                     
   677ce:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   677d2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   677d4:	4e75           	rts                                         <== NOT EXECUTED
   *  Initialize /etc/group                                           
   */                                                                 
  if ((fp = fopen("/etc/group", "r")) != NULL) {                      
    fclose(fp);                                                       
  }                                                                   
  else if ((fp = fopen("/etc/group", "w")) != NULL) {                 
   677d6:	4879 0009 a09c 	pea 9a09c <rtems_bdpart_shell_usage+0x310>  
   677dc:	4879 0009 8d05 	pea 98d05 <_rodata_start+0x845>             
   677e2:	4eb9 0008 17e0 	jsr 817e0 <fopen>                           
   677e8:	508f           	addql #8,%sp                                
   677ea:	2440           	moveal %d0,%a2                              
   677ec:	4a80           	tstl %d0                                    
   677ee:	6700 ff72      	beqw 67762 <init_etc_passwd_group+0x10>     
    fprintf( fp, "root:x:0:root\n"                                    
   677f2:	2f00           	movel %d0,%sp@-                             
   677f4:	4878 002a      	pea 2a <OPER2+0x16>                         
   677f8:	4878 0001      	pea 1 <ADD>                                 
   677fc:	4879 0009 d357 	pea 9d357 <IMFS_memfile_handlers+0xe5>      
   67802:	4eb9 0008 2a5c 	jsr 82a5c <fwrite>                          
                 "rtems:x:1:rtems\n"                                  
                 "tty:x:2:tty\n" );                                   
    fclose(fp);                                                       
   67808:	2f0a           	movel %a2,%sp@-                             
   6780a:	4eb9 0008 0f7a 	jsr 80f7a <fclose>                          
  }                                                                   
}                                                                     
   67810:	242e fff8      	movel %fp@(-8),%d2                          
  }                                                                   
  else if ((fp = fopen("/etc/group", "w")) != NULL) {                 
    fprintf( fp, "root:x:0:root\n"                                    
                 "rtems:x:1:rtems\n"                                  
                 "tty:x:2:tty\n" );                                   
    fclose(fp);                                                       
   67814:	4fef 0014      	lea %sp@(20),%sp                            
  }                                                                   
}                                                                     
   67818:	246e fffc      	moveal %fp@(-4),%a2                         
   6781c:	4e5e           	unlk %fp                                    
   6781e:	4e75           	rts                                         
   *  Initialize /etc/passwd                                          
   */                                                                 
  if ((fp = fopen("/etc/passwd", "r")) != NULL) {                     
    fclose(fp);                                                       
  }                                                                   
  else if ((fp = fopen("/etc/passwd", "w")) != NULL) {                
   67820:	4879 0009 a09c 	pea 9a09c <rtems_bdpart_shell_usage+0x310>  
   67826:	4879 0009 8cc0 	pea 98cc0 <_rodata_start+0x800>             
   6782c:	4e92           	jsr %a2@                                    
   6782e:	508f           	addql #8,%sp                                
   67830:	2400           	movel %d0,%d2                               
   67832:	6700 ff78      	beqw 677ac <init_etc_passwd_group+0x5a>     
    fprintf(fp, "root:*:0:0:root::/:/bin/sh\n"                        
   67836:	2f00           	movel %d0,%sp@-                             
   67838:	4878 0066      	pea 66 <DBL_MANT_DIG+0x31>                  
   6783c:	4878 0001      	pea 1 <ADD>                                 
   67840:	4879 0009 d2f0 	pea 9d2f0 <IMFS_memfile_handlers+0x7e>      
   67846:	4eb9 0008 2a5c 	jsr 82a5c <fwrite>                          
                 "rtems:*:1:1:RTEMS Application::/:/bin/sh\n"         
                 "tty:!:2:2:tty owner::/:/bin/false\n" );             
    fclose(fp);                                                       
   6784c:	2f02           	movel %d2,%sp@-                             
   6784e:	4eb9 0008 0f7a 	jsr 80f7a <fclose>                          
   67854:	4fef 0014      	lea %sp@(20),%sp                            
   67858:	6000 ff52      	braw 677ac <init_etc_passwd_group+0x5a>     
                                                                      
00046524 <ioctl>:                                                     
int ioctl(                                                            
  int  fd,                                                            
  ioctl_command_t  command,                                           
  ...                                                                 
)                                                                     
{                                                                     
   46524:	4e56 0000      	linkw %fp,#0                                
   46528:	202e 0008      	movel %fp@(8),%d0                           
  va_list            ap;                                              
  rtems_status_code  rc;                                              
  rtems_libio_t     *iop;                                             
  void              *buffer;                                          
                                                                      
  rtems_libio_check_fd( fd );                                         
   4652c:	b0b9 0006 3954 	cmpl 63954 <rtems_libio_number_iops>,%d0    
   46532:	643c           	bccs 46570 <ioctl+0x4c>                     
  iop = rtems_libio_iop( fd );                                        
   46534:	2079 0006 5128 	moveal 65128 <rtems_libio_iops>,%a0         
   4653a:	ed88           	lsll #6,%d0                                 
   4653c:	d1c0           	addal %d0,%a0                               
  rtems_libio_check_is_open(iop);                                     
   4653e:	2028 0014      	movel %a0@(20),%d0                          
   46542:	0280 0000 0100 	andil #256,%d0                              
   46548:	6726           	beqs 46570 <ioctl+0x4c>                     
                                                                      
  va_start(ap, command);                                              
                                                                      
  buffer = va_arg(ap, void *);                                        
   4654a:	202e 0010      	movel %fp@(16),%d0                          
                                                                      
  /*                                                                  
   *  Now process the ioctl().                                        
   */                                                                 
                                                                      
  if ( !iop->handlers )                                               
   4654e:	2268 003c      	moveal %a0@(60),%a1                         
   46552:	4a89           	tstl %a1                                    
   46554:	671a           	beqs 46570 <ioctl+0x4c>                     
    rtems_set_errno_and_return_minus_one( EBADF );                    
                                                                      
  if ( !iop->handlers->ioctl_h )                                      
   46556:	2269 0010      	moveal %a1@(16),%a1                         
   4655a:	4a89           	tstl %a1                                    
   4655c:	6724           	beqs 46582 <ioctl+0x5e>                     
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  rc = (*iop->handlers->ioctl_h)( iop, command, buffer );             
   4655e:	2f00           	movel %d0,%sp@-                             
   46560:	2f2e 000c      	movel %fp@(12),%sp@-                        
   46564:	2f08           	movel %a0,%sp@-                             
   46566:	4e91           	jsr %a1@                                    
                                                                      
  return rc;                                                          
   46568:	4fef 000c      	lea %sp@(12),%sp                            
}                                                                     
   4656c:	4e5e           	unlk %fp                                    
   4656e:	4e75           	rts                                         
  /*                                                                  
   *  Now process the ioctl().                                        
   */                                                                 
                                                                      
  if ( !iop->handlers )                                               
    rtems_set_errno_and_return_minus_one( EBADF );                    
   46570:	4eb9 0005 4594 	jsr 54594 <__errno>                         
   46576:	7209           	moveq #9,%d1                                
   46578:	2040           	moveal %d0,%a0                              
   4657a:	70ff           	moveq #-1,%d0                               
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  rc = (*iop->handlers->ioctl_h)( iop, command, buffer );             
                                                                      
  return rc;                                                          
}                                                                     
   4657c:	4e5e           	unlk %fp                                    
  /*                                                                  
   *  Now process the ioctl().                                        
   */                                                                 
                                                                      
  if ( !iop->handlers )                                               
    rtems_set_errno_and_return_minus_one( EBADF );                    
   4657e:	2081           	movel %d1,%a0@                              
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  rc = (*iop->handlers->ioctl_h)( iop, command, buffer );             
                                                                      
  return rc;                                                          
}                                                                     
   46580:	4e75           	rts                                         
                                                                      
  if ( !iop->handlers )                                               
    rtems_set_errno_and_return_minus_one( EBADF );                    
                                                                      
  if ( !iop->handlers->ioctl_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   46582:	4eb9 0005 4594 	jsr 54594 <__errno>                         <== NOT EXECUTED
                                                                      
  rc = (*iop->handlers->ioctl_h)( iop, command, buffer );             
                                                                      
  return rc;                                                          
}                                                                     
   46588:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
  if ( !iop->handlers )                                               
    rtems_set_errno_and_return_minus_one( EBADF );                    
                                                                      
  if ( !iop->handlers->ioctl_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   4658a:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4658c:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   4658e:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
                                                                      
  rc = (*iop->handlers->ioctl_h)( iop, command, buffer );             
                                                                      
  return rc;                                                          
}                                                                     
	...                                                                  
                                                                      
00044064 <iproc>:                                                     
/*                                                                    
 * Process a single input character                                   
 */                                                                   
static int                                                            
iproc (unsigned char c, struct rtems_termios_tty *tty)                
{                                                                     
   44064:	4e56 fff4      	linkw %fp,#-12                              <== NOT EXECUTED
   44068:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     <== NOT EXECUTED
   4406c:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
   44070:	222e 0008      	movel %fp@(8),%d1                           <== NOT EXECUTED
	if (tty->termios.c_iflag & ISTRIP)                                   
   44074:	202a 0030      	movel %a2@(48),%d0                          <== NOT EXECUTED
/*                                                                    
 * Process a single input character                                   
 */                                                                   
static int                                                            
iproc (unsigned char c, struct rtems_termios_tty *tty)                
{                                                                     
   44078:	1401           	moveb %d1,%d2                               <== NOT EXECUTED
	if (tty->termios.c_iflag & ISTRIP)                                   
   4407a:	0800 0005      	btst #5,%d0                                 <== NOT EXECUTED
   4407e:	6704           	beqs 44084 <iproc+0x20>                     <== NOT EXECUTED
		c &= 0x7f;                                                          
   44080:	747f           	moveq #127,%d2                              <== NOT EXECUTED
   44082:	c481           	andl %d1,%d2                                <== NOT EXECUTED
	if (tty->termios.c_iflag & IUCLC)                                    
   44084:	0800 0009      	btst #9,%d0                                 <== NOT EXECUTED
   44088:	6720           	beqs 440aa <iproc+0x46>                     <== NOT EXECUTED
		c = tolower (c);                                                    
   4408a:	2079 0005 d8ec 	moveal 5d8ec <__ctype_ptr__>,%a0            <== NOT EXECUTED
   44090:	7603           	moveq #3,%d3                                <== NOT EXECUTED
   44092:	0282 0000 00ff 	andil #255,%d2                              <== NOT EXECUTED
   44098:	1230 2801      	moveb %a0@(00000001,%d2:l),%d1              <== NOT EXECUTED
   4409c:	49c1           	extbl %d1                                   <== NOT EXECUTED
   4409e:	c283           	andl %d3,%d1                                <== NOT EXECUTED
   440a0:	163c 0001      	moveb #1,%d3                                <== NOT EXECUTED
   440a4:	b681           	cmpl %d1,%d3                                <== NOT EXECUTED
   440a6:	6700 00e0      	beqw 44188 <iproc+0x124>                    <== NOT EXECUTED
	if (c == '\r') {                                                     
   440aa:	4281           	clrl %d1                                    <== NOT EXECUTED
   440ac:	1202           	moveb %d2,%d1                               <== NOT EXECUTED
   440ae:	760d           	moveq #13,%d3                               <== NOT EXECUTED
   440b0:	b681           	cmpl %d1,%d3                                <== NOT EXECUTED
   440b2:	6740           	beqs 440f4 <iproc+0x90>                     <== NOT EXECUTED
		if (tty->termios.c_iflag & IGNCR)                                   
			return 0;                                                          
		if (tty->termios.c_iflag & ICRNL)                                   
			c = '\n';                                                          
	}                                                                    
	else if ((c == '\n') && (tty->termios.c_iflag & INLCR)) {            
   440b4:	760a           	moveq #10,%d3                               <== NOT EXECUTED
   440b6:	b681           	cmpl %d1,%d3                                <== NOT EXECUTED
   440b8:	6700 00c4      	beqw 4417e <iproc+0x11a>                    <== NOT EXECUTED
		c = '\r';                                                           
	}                                                                    
	if ((c != '\0') && (tty->termios.c_lflag & ICANON)) {                
   440bc:	4a02           	tstb %d2                                    <== NOT EXECUTED
   440be:	664c           	bnes 4410c <iproc+0xa8>                     <== NOT EXECUTED
	}                                                                    
                                                                      
	/*                                                                   
	 * FIXME: Should do IMAXBEL handling somehow                         
	 */                                                                  
	if (tty->ccount < (CBUFSIZE-1)) {                                    
   440c0:	2039 0005 d814 	movel 5d814 <rtems_termios_cbufsize>,%d0    <== NOT EXECUTED
   440c6:	5380           	subql #1,%d0                                <== NOT EXECUTED
   440c8:	222a 0020      	movel %a2@(32),%d1                          <== NOT EXECUTED
   440cc:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   440ce:	6f28           	bles 440f8 <iproc+0x94>                     <== NOT EXECUTED
		if (tty->termios.c_lflag & ECHO)                                    
   440d0:	7008           	moveq #8,%d0                                <== NOT EXECUTED
   440d2:	c0aa 003c      	andl %a2@(60),%d0                           <== NOT EXECUTED
   440d6:	6600 00ba      	bnew 44192 <iproc+0x12e>                    <== NOT EXECUTED
			echo (c, tty);                                                     
		tty->cbuf[tty->ccount++] = c;                                       
   440da:	206a 001c      	moveal %a2@(28),%a0                         <== NOT EXECUTED
   440de:	4280           	clrl %d0                                    <== NOT EXECUTED
   440e0:	1182 1800      	moveb %d2,%a0@(00000000,%d1:l)              <== NOT EXECUTED
   440e4:	5281           	addql #1,%d1                                <== NOT EXECUTED
   440e6:	2541 0020      	movel %d1,%a2@(32)                          <== NOT EXECUTED
	}                                                                    
	return 0;                                                            
}                                                                     
   440ea:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   440f0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   440f2:	4e75           	rts                                         <== NOT EXECUTED
	if (tty->termios.c_iflag & ISTRIP)                                   
		c &= 0x7f;                                                          
	if (tty->termios.c_iflag & IUCLC)                                    
		c = tolower (c);                                                    
	if (c == '\r') {                                                     
		if (tty->termios.c_iflag & IGNCR)                                   
   440f4:	4a00           	tstb %d0                                    <== NOT EXECUTED
   440f6:	6c0c           	bges 44104 <iproc+0xa0>                     <== NOT EXECUTED
	 * FIXME: Should do IMAXBEL handling somehow                         
	 */                                                                  
	if (tty->ccount < (CBUFSIZE-1)) {                                    
		if (tty->termios.c_lflag & ECHO)                                    
			echo (c, tty);                                                     
		tty->cbuf[tty->ccount++] = c;                                       
   440f8:	4280           	clrl %d0                                    <== NOT EXECUTED
	}                                                                    
	return 0;                                                            
}                                                                     
   440fa:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   44100:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44102:	4e75           	rts                                         <== NOT EXECUTED
	if (tty->termios.c_iflag & IUCLC)                                    
		c = tolower (c);                                                    
	if (c == '\r') {                                                     
		if (tty->termios.c_iflag & IGNCR)                                   
			return 0;                                                          
		if (tty->termios.c_iflag & ICRNL)                                   
   44104:	0800 0008      	btst #8,%d0                                 <== NOT EXECUTED
   44108:	6702           	beqs 4410c <iproc+0xa8>                     <== NOT EXECUTED
   4410a:	740a           	moveq #10,%d2                               <== NOT EXECUTED
			c = '\n';                                                          
	}                                                                    
	else if ((c == '\n') && (tty->termios.c_iflag & INLCR)) {            
		c = '\r';                                                           
	}                                                                    
	if ((c != '\0') && (tty->termios.c_lflag & ICANON)) {                
   4410c:	222a 003c      	movel %a2@(60),%d1                          <== NOT EXECUTED
   44110:	0801 0001      	btst #1,%d1                                 <== NOT EXECUTED
   44114:	67aa           	beqs 440c0 <iproc+0x5c>                     <== NOT EXECUTED
		if (c == tty->termios.c_cc[VERASE]) {                               
   44116:	4283           	clrl %d3                                    <== NOT EXECUTED
   44118:	162a 0043      	moveb %a2@(67),%d3                          <== NOT EXECUTED
   4411c:	4280           	clrl %d0                                    <== NOT EXECUTED
   4411e:	1002           	moveb %d2,%d0                               <== NOT EXECUTED
   44120:	b083           	cmpl %d3,%d0                                <== NOT EXECUTED
   44122:	6700 0122      	beqw 44246 <iproc+0x1e2>                    <== NOT EXECUTED
			erase (tty, 0);                                                    
			return 0;                                                          
		}                                                                   
		else if (c == tty->termios.c_cc[VKILL]) {                           
   44126:	4283           	clrl %d3                                    <== NOT EXECUTED
   44128:	162a 0044      	moveb %a2@(68),%d3                          <== NOT EXECUTED
   4412c:	b083           	cmpl %d3,%d0                                <== NOT EXECUTED
   4412e:	6700 00a8      	beqw 441d8 <iproc+0x174>                    <== NOT EXECUTED
			erase (tty, 1);                                                    
			return 0;                                                          
		}                                                                   
		else if (c == tty->termios.c_cc[VEOF]) {                            
   44132:	4283           	clrl %d3                                    <== NOT EXECUTED
   44134:	162a 0045      	moveb %a2@(69),%d3                          <== NOT EXECUTED
   44138:	b083           	cmpl %d3,%d0                                <== NOT EXECUTED
   4413a:	6700 00fe      	beqw 4423a <iproc+0x1d6>                    <== NOT EXECUTED
			return 1;                                                          
		}                                                                   
		else if (c == '\n') {                                               
   4413e:	760a           	moveq #10,%d3                               <== NOT EXECUTED
   44140:	b680           	cmpl %d0,%d3                                <== NOT EXECUTED
   44142:	6700 00ac      	beqw 441f0 <iproc+0x18c>                    <== NOT EXECUTED
			if (tty->termios.c_lflag & (ECHO | ECHONL))                        
				echo (c, tty);                                                    
			tty->cbuf[tty->ccount++] = c;                                      
			return 1;                                                          
		}                                                                   
		else if ((c == tty->termios.c_cc[VEOL])                             
   44146:	4283           	clrl %d3                                    <== NOT EXECUTED
   44148:	162a 004c      	moveb %a2@(76),%d3                          <== NOT EXECUTED
   4414c:	b083           	cmpl %d3,%d0                                <== NOT EXECUTED
   4414e:	670c           	beqs 4415c <iproc+0xf8>                     <== NOT EXECUTED
		      || (c == tty->termios.c_cc[VEOL2])) {                         
   44150:	4283           	clrl %d3                                    <== NOT EXECUTED
   44152:	162a 0051      	moveb %a2@(81),%d3                          <== NOT EXECUTED
   44156:	b083           	cmpl %d3,%d0                                <== NOT EXECUTED
   44158:	6600 ff66      	bnew 440c0 <iproc+0x5c>                     <== NOT EXECUTED
			if (tty->termios.c_lflag & ECHO)                                   
   4415c:	44c1           	movew %d1,%ccr                              <== NOT EXECUTED
   4415e:	6b58           	bmis 441b8 <iproc+0x154>                    <== NOT EXECUTED
				echo (c, tty);                                                    
			tty->cbuf[tty->ccount++] = c;                                      
   44160:	222a 0020      	movel %a2@(32),%d1                          <== NOT EXECUTED
   44164:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   44166:	206a 001c      	moveal %a2@(28),%a0                         <== NOT EXECUTED
   4416a:	1182 1800      	moveb %d2,%a0@(00000000,%d1:l)              <== NOT EXECUTED
   4416e:	5281           	addql #1,%d1                                <== NOT EXECUTED
   44170:	2541 0020      	movel %d1,%a2@(32)                          <== NOT EXECUTED
		if (tty->termios.c_lflag & ECHO)                                    
			echo (c, tty);                                                     
		tty->cbuf[tty->ccount++] = c;                                       
	}                                                                    
	return 0;                                                            
}                                                                     
   44174:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   4417a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4417c:	4e75           	rts                                         <== NOT EXECUTED
		if (tty->termios.c_iflag & IGNCR)                                   
			return 0;                                                          
		if (tty->termios.c_iflag & ICRNL)                                   
			c = '\n';                                                          
	}                                                                    
	else if ((c == '\n') && (tty->termios.c_iflag & INLCR)) {            
   4417e:	0800 0006      	btst #6,%d0                                 <== NOT EXECUTED
   44182:	6788           	beqs 4410c <iproc+0xa8>                     <== NOT EXECUTED
   44184:	740d           	moveq #13,%d2                               <== NOT EXECUTED
   44186:	6084           	bras 4410c <iproc+0xa8>                     <== NOT EXECUTED
iproc (unsigned char c, struct rtems_termios_tty *tty)                
{                                                                     
	if (tty->termios.c_iflag & ISTRIP)                                   
		c &= 0x7f;                                                          
	if (tty->termios.c_iflag & IUCLC)                                    
		c = tolower (c);                                                    
   44188:	0682 0000 0020 	addil #32,%d2                               <== NOT EXECUTED
   4418e:	6000 ff1a      	braw 440aa <iproc+0x46>                     <== NOT EXECUTED
	/*                                                                   
	 * FIXME: Should do IMAXBEL handling somehow                         
	 */                                                                  
	if (tty->ccount < (CBUFSIZE-1)) {                                    
		if (tty->termios.c_lflag & ECHO)                                    
			echo (c, tty);                                                     
   44192:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   44194:	4280           	clrl %d0                                    <== NOT EXECUTED
   44196:	1002           	moveb %d2,%d0                               <== NOT EXECUTED
   44198:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4419a:	4eba fc30      	jsr %pc@(43dcc <echo>)                      <== NOT EXECUTED
   4419e:	222a 0020      	movel %a2@(32),%d1                          <== NOT EXECUTED
   441a2:	508f           	addql #8,%sp                                <== NOT EXECUTED
		tty->cbuf[tty->ccount++] = c;                                       
   441a4:	4280           	clrl %d0                                    <== NOT EXECUTED
   441a6:	206a 001c      	moveal %a2@(28),%a0                         <== NOT EXECUTED
   441aa:	1182 1800      	moveb %d2,%a0@(00000000,%d1:l)              <== NOT EXECUTED
   441ae:	5281           	addql #1,%d1                                <== NOT EXECUTED
   441b0:	2541 0020      	movel %d1,%a2@(32)                          <== NOT EXECUTED
   441b4:	6000 ff34      	braw 440ea <iproc+0x86>                     <== NOT EXECUTED
			return 1;                                                          
		}                                                                   
		else if ((c == tty->termios.c_cc[VEOL])                             
		      || (c == tty->termios.c_cc[VEOL2])) {                         
			if (tty->termios.c_lflag & ECHO)                                   
				echo (c, tty);                                                    
   441b8:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   441ba:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   441bc:	4eba fc0e      	jsr %pc@(43dcc <echo>)                      <== NOT EXECUTED
			tty->cbuf[tty->ccount++] = c;                                      
   441c0:	222a 0020      	movel %a2@(32),%d1                          <== NOT EXECUTED
			return 1;                                                          
		}                                                                   
		else if ((c == tty->termios.c_cc[VEOL])                             
		      || (c == tty->termios.c_cc[VEOL2])) {                         
			if (tty->termios.c_lflag & ECHO)                                   
				echo (c, tty);                                                    
   441c4:	508f           	addql #8,%sp                                <== NOT EXECUTED
			tty->cbuf[tty->ccount++] = c;                                      
   441c6:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   441c8:	206a 001c      	moveal %a2@(28),%a0                         <== NOT EXECUTED
   441cc:	1182 1800      	moveb %d2,%a0@(00000000,%d1:l)              <== NOT EXECUTED
   441d0:	5281           	addql #1,%d1                                <== NOT EXECUTED
   441d2:	2541 0020      	movel %d1,%a2@(32)                          <== NOT EXECUTED
   441d6:	609c           	bras 44174 <iproc+0x110>                    <== NOT EXECUTED
		if (c == tty->termios.c_cc[VERASE]) {                               
			erase (tty, 0);                                                    
			return 0;                                                          
		}                                                                   
		else if (c == tty->termios.c_cc[VKILL]) {                           
			erase (tty, 1);                                                    
   441d8:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   441dc:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   441de:	4eba fc90      	jsr %pc@(43e70 <erase>)                     <== NOT EXECUTED
			return 0;                                                          
   441e2:	508f           	addql #8,%sp                                <== NOT EXECUTED
		if (c == tty->termios.c_cc[VERASE]) {                               
			erase (tty, 0);                                                    
			return 0;                                                          
		}                                                                   
		else if (c == tty->termios.c_cc[VKILL]) {                           
			erase (tty, 1);                                                    
   441e4:	4280           	clrl %d0                                    <== NOT EXECUTED
		if (tty->termios.c_lflag & ECHO)                                    
			echo (c, tty);                                                     
		tty->cbuf[tty->ccount++] = c;                                       
	}                                                                    
	return 0;                                                            
}                                                                     
   441e6:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   441ec:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   441ee:	4e75           	rts                                         <== NOT EXECUTED
		}                                                                   
		else if (c == tty->termios.c_cc[VEOF]) {                            
			return 1;                                                          
		}                                                                   
		else if (c == '\n') {                                               
			if (tty->termios.c_lflag & (ECHO | ECHONL))                        
   441f0:	7048           	moveq #72,%d0                               <== NOT EXECUTED
   441f2:	c280           	andl %d0,%d1                                <== NOT EXECUTED
   441f4:	6620           	bnes 44216 <iproc+0x1b2>                    <== NOT EXECUTED
				echo (c, tty);                                                    
			tty->cbuf[tty->ccount++] = c;                                      
   441f6:	222a 0020      	movel %a2@(32),%d1                          <== NOT EXECUTED
   441fa:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   441fc:	206a 001c      	moveal %a2@(28),%a0                         <== NOT EXECUTED
   44200:	740a           	moveq #10,%d2                               <== NOT EXECUTED
   44202:	1182 1800      	moveb %d2,%a0@(00000000,%d1:l)              <== NOT EXECUTED
   44206:	5281           	addql #1,%d1                                <== NOT EXECUTED
   44208:	2541 0020      	movel %d1,%a2@(32)                          <== NOT EXECUTED
		if (tty->termios.c_lflag & ECHO)                                    
			echo (c, tty);                                                     
		tty->cbuf[tty->ccount++] = c;                                       
	}                                                                    
	return 0;                                                            
}                                                                     
   4420c:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   44212:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44214:	4e75           	rts                                         <== NOT EXECUTED
		else if (c == tty->termios.c_cc[VEOF]) {                            
			return 1;                                                          
		}                                                                   
		else if (c == '\n') {                                               
			if (tty->termios.c_lflag & (ECHO | ECHONL))                        
				echo (c, tty);                                                    
   44216:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   44218:	4878 000a      	pea a <LASTO>                               <== NOT EXECUTED
			tty->cbuf[tty->ccount++] = c;                                      
   4421c:	740a           	moveq #10,%d2                               <== NOT EXECUTED
		else if (c == tty->termios.c_cc[VEOF]) {                            
			return 1;                                                          
		}                                                                   
		else if (c == '\n') {                                               
			if (tty->termios.c_lflag & (ECHO | ECHONL))                        
				echo (c, tty);                                                    
   4421e:	4eba fbac      	jsr %pc@(43dcc <echo>)                      <== NOT EXECUTED
			tty->cbuf[tty->ccount++] = c;                                      
   44222:	222a 0020      	movel %a2@(32),%d1                          <== NOT EXECUTED
		else if (c == tty->termios.c_cc[VEOF]) {                            
			return 1;                                                          
		}                                                                   
		else if (c == '\n') {                                               
			if (tty->termios.c_lflag & (ECHO | ECHONL))                        
				echo (c, tty);                                                    
   44226:	508f           	addql #8,%sp                                <== NOT EXECUTED
			tty->cbuf[tty->ccount++] = c;                                      
   44228:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4422a:	206a 001c      	moveal %a2@(28),%a0                         <== NOT EXECUTED
   4422e:	1182 1800      	moveb %d2,%a0@(00000000,%d1:l)              <== NOT EXECUTED
   44232:	5281           	addql #1,%d1                                <== NOT EXECUTED
   44234:	2541 0020      	movel %d1,%a2@(32)                          <== NOT EXECUTED
   44238:	60d2           	bras 4420c <iproc+0x1a8>                    <== NOT EXECUTED
		}                                                                   
		else if (c == tty->termios.c_cc[VKILL]) {                           
			erase (tty, 1);                                                    
			return 0;                                                          
		}                                                                   
		else if (c == tty->termios.c_cc[VEOF]) {                            
   4423a:	7001           	moveq #1,%d0                                <== NOT EXECUTED
		if (tty->termios.c_lflag & ECHO)                                    
			echo (c, tty);                                                     
		tty->cbuf[tty->ccount++] = c;                                       
	}                                                                    
	return 0;                                                            
}                                                                     
   4423c:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   44242:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44244:	4e75           	rts                                         <== NOT EXECUTED
	else if ((c == '\n') && (tty->termios.c_iflag & INLCR)) {            
		c = '\r';                                                           
	}                                                                    
	if ((c != '\0') && (tty->termios.c_lflag & ICANON)) {                
		if (c == tty->termios.c_cc[VERASE]) {                               
			erase (tty, 0);                                                    
   44246:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   44248:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4424a:	4eba fc24      	jsr %pc@(43e70 <erase>)                     <== NOT EXECUTED
			return 0;                                                          
   4424e:	508f           	addql #8,%sp                                <== NOT EXECUTED
	else if ((c == '\n') && (tty->termios.c_iflag & INLCR)) {            
		c = '\r';                                                           
	}                                                                    
	if ((c != '\0') && (tty->termios.c_lflag & ICANON)) {                
		if (c == tty->termios.c_cc[VERASE]) {                               
			erase (tty, 0);                                                    
   44250:	4280           	clrl %d0                                    <== NOT EXECUTED
		if (tty->termios.c_lflag & ECHO)                                    
			echo (c, tty);                                                     
		tty->cbuf[tty->ccount++] = c;                                       
	}                                                                    
	return 0;                                                            
}                                                                     
   44252:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   44258:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004e644 <killinfo>:                                                  
int killinfo(                                                         
  pid_t               pid,                                            
  int                 sig,                                            
  const union sigval *value                                           
)                                                                     
{                                                                     
   4e644:	4e56 ffd0      	linkw %fp,#-48                              
   4e648:	48d7 1cfc      	moveml %d2-%d7/%a2-%a4,%sp@                 
   4e64c:	262e 000c      	movel %fp@(12),%d3                          
   4e650:	246e 0010      	moveal %fp@(16),%a2                         
  POSIX_signals_Siginfo_node  *psiginfo;                              
                                                                      
  /*                                                                  
   *  Only supported for the "calling process" (i.e. this node).      
   */                                                                 
  if ( pid != getpid() )                                              
   4e654:	4eb9 0004 d5a4 	jsr 4d5a4 <getpid>                          
   4e65a:	b0ae 0008      	cmpl %fp@(8),%d0                            
   4e65e:	6600 022c      	bnew 4e88c <killinfo+0x248>                 
    rtems_set_errno_and_return_minus_one( ESRCH );                    
                                                                      
  /*                                                                  
   *  Validate the signal passed.                                     
   */                                                                 
  if ( !sig )                                                         
   4e662:	4a83           	tstl %d3                                    
   4e664:	6700 023e      	beqw 4e8a4 <killinfo+0x260>                 
                                                                      
static inline bool is_valid_signo(                                    
  int signo                                                           
)                                                                     
{                                                                     
  return ((signo) >= 1 && (signo) <= 32 );                            
   4e668:	2003           	movel %d3,%d0                               
   4e66a:	5380           	subql #1,%d0                                
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  if ( !is_valid_signo(sig) )                                         
   4e66c:	721f           	moveq #31,%d1                               
   4e66e:	b280           	cmpl %d0,%d1                                
   4e670:	6500 0232      	bcsw 4e8a4 <killinfo+0x260>                 
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  /*                                                                  
   *  If the signal is being ignored, then we are out of here.        
   */                                                                 
  if ( _POSIX_signals_Vectors[ sig ].sa_handler == SIG_IGN )          
   4e674:	2203           	movel %d3,%d1                               
   4e676:	2803           	movel %d3,%d4                               
   4e678:	7e01           	moveq #1,%d7                                
   4e67a:	e589           	lsll #2,%d1                                 
   4e67c:	e98c           	lsll #4,%d4                                 
   4e67e:	9881           	subl %d1,%d4                                
   4e680:	2044           	moveal %d4,%a0                              
   4e682:	d1fc 0005 f42e 	addal #390190,%a0                           
   4e688:	be90           	cmpl %a0@,%d7                               
   4e68a:	6700 00d4      	beqw 4e760 <killinfo+0x11c>                 
  /*                                                                  
   *  P1003.1c/Draft 10, p. 33 says that certain signals should always
   *  be directed to the executing thread such as those caused by hardware
   *  faults.                                                         
   */                                                                 
  if ( (sig == SIGFPE) || (sig == SIGILL) || (sig == SIGSEGV ) )      
   4e68e:	7208           	moveq #8,%d1                                
   4e690:	b283           	cmpl %d3,%d1                                
   4e692:	6700 00d8      	beqw 4e76c <killinfo+0x128>                 
   4e696:	7e04           	moveq #4,%d7                                
   4e698:	be83           	cmpl %d3,%d7                                
   4e69a:	6700 00d0      	beqw 4e76c <killinfo+0x128>                 
   4e69e:	123c 000b      	moveb #11,%d1                               
   4e6a2:	b283           	cmpl %d3,%d1                                
   4e6a4:	6700 00c6      	beqw 4e76c <killinfo+0x128>                 
                                                                      
static inline sigset_t signo_to_mask(                                 
  uint32_t sig                                                        
)                                                                     
{                                                                     
  return 1u << (sig - 1);                                             
   4e6a8:	7401           	moveq #1,%d2                                
  /*                                                                  
   *  Build up a siginfo structure                                    
   */                                                                 
  siginfo = &siginfo_struct;                                          
  siginfo->si_signo = sig;                                            
  siginfo->si_code = SI_USER;                                         
   4e6aa:	7e01           	moveq #1,%d7                                
   4e6ac:	e1aa           	lsll %d0,%d2                                
                                                                      
  /*                                                                  
   *  Build up a siginfo structure                                    
   */                                                                 
  siginfo = &siginfo_struct;                                          
  siginfo->si_signo = sig;                                            
   4e6ae:	2d43 fff4      	movel %d3,%fp@(-12)                         
  siginfo->si_code = SI_USER;                                         
   4e6b2:	2d47 fff8      	movel %d7,%fp@(-8)                          
  if ( !value ) {                                                     
   4e6b6:	4a8a           	tstl %a2                                    
   4e6b8:	6700 01ca      	beqw 4e884 <killinfo+0x240>                 
    siginfo->si_value.sival_int = 0;                                  
  } else {                                                            
    siginfo->si_value = *value;                                       
   4e6bc:	2d52 fffc      	movel %a2@,%fp@(-4)                         
   4e6c0:	2039 0005 ef78 	movel 5ef78 <_Thread_Dispatch_disable_level>,%d0
   4e6c6:	5280           	addql #1,%d0                                
   4e6c8:	23c0 0005 ef78 	movel %d0,5ef78 <_Thread_Dispatch_disable_level>
                                                                      
  /*                                                                  
   *  Is the currently executing thread interested?  If so then it will
   *  get it an execute it as soon as the dispatcher executes.        
   */                                                                 
  the_thread = _Thread_Executing;                                     
   4e6ce:	2479 0005 f032 	moveal 5f032 <_Thread_Executing>,%a2        
                                                                      
  api = the_thread->API_Extensions[ THREAD_API_POSIX ];               
   4e6d4:	206a 010e      	moveal %a2@(270),%a0                        
   4e6d8:	2028 00cc      	movel %a0@(204),%d0                         
   4e6dc:	4680           	notl %d0                                    
   4e6de:	c082           	andl %d2,%d0                                
   4e6e0:	6642           	bnes 4e724 <killinfo+0xe0>                  
                                                                      
  /* XXX violation of visibility -- need to define thread queue support */
                                                                      
  the_chain = &_POSIX_signals_Wait_queue.Queues.Fifo;                 
                                                                      
  for ( the_node = the_chain->first ;                                 
   4e6e2:	2079 0005 f5b2 	moveal 5f5b2 <_POSIX_signals_Wait_queue>,%a0
   4e6e8:	b1fc 0005 f5b6 	cmpal #390582,%a0                           
   4e6ee:	6700 00ec      	beqw 4e7dc <killinfo+0x198>                 
    #endif                                                            
                                                                      
    /*                                                                
     * Is this thread is actually blocked waiting for the signal?     
     */                                                               
    if (the_thread->Wait.option & mask)                               
   4e6f2:	2002           	movel %d2,%d0                               
                                                                      
  for ( the_node = the_chain->first ;                                 
        !_Chain_Is_tail( the_chain, the_node ) ;                      
        the_node = the_node->next ) {                                 
                                                                      
    the_thread = (Thread_Control *)the_node;                          
   4e6f4:	2448           	moveal %a0,%a2                              
    #endif                                                            
                                                                      
    /*                                                                
     * Is this thread is actually blocked waiting for the signal?     
     */                                                               
    if (the_thread->Wait.option & mask)                               
   4e6f6:	c0a8 0030      	andl %a0@(48),%d0                           
  for ( the_node = the_chain->first ;                                 
        !_Chain_Is_tail( the_chain, the_node ) ;                      
        the_node = the_node->next ) {                                 
                                                                      
    the_thread = (Thread_Control *)the_node;                          
    api = the_thread->API_Extensions[ THREAD_API_POSIX ];             
   4e6fa:	2268 010e      	moveal %a0@(270),%a1                        
    #endif                                                            
                                                                      
    /*                                                                
     * Is this thread is actually blocked waiting for the signal?     
     */                                                               
    if (the_thread->Wait.option & mask)                               
   4e6fe:	6624           	bnes 4e724 <killinfo+0xe0>                  
                                                                      
    /*                                                                
     * Is this thread is blocked waiting for another signal but has   
     * not blocked this one?                                          
     */                                                               
    if (~api->signals_blocked & mask)                                 
   4e700:	2029 00cc      	movel %a1@(204),%d0                         
   4e704:	4680           	notl %d0                                    
   4e706:	c082           	andl %d2,%d0                                
   4e708:	661a           	bnes 4e724 <killinfo+0xe0>                  
                                                                      
  the_chain = &_POSIX_signals_Wait_queue.Queues.Fifo;                 
                                                                      
  for ( the_node = the_chain->first ;                                 
        !_Chain_Is_tail( the_chain, the_node ) ;                      
        the_node = the_node->next ) {                                 
   4e70a:	2050           	moveal %a0@,%a0                             
                                                                      
    the_thread = (Thread_Control *)the_node;                          
   4e70c:	2448           	moveal %a0,%a2                              
                                                                      
  /* XXX violation of visibility -- need to define thread queue support */
                                                                      
  the_chain = &_POSIX_signals_Wait_queue.Queues.Fifo;                 
                                                                      
  for ( the_node = the_chain->first ;                                 
   4e70e:	b1fc 0005 f5b6 	cmpal #390582,%a0                           
   4e714:	6700 00c6      	beqw 4e7dc <killinfo+0x198>                 
    #endif                                                            
                                                                      
    /*                                                                
     * Is this thread is actually blocked waiting for the signal?     
     */                                                               
    if (the_thread->Wait.option & mask)                               
   4e718:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   4e71a:	c0a8 0030      	andl %a0@(48),%d0                           <== NOT EXECUTED
  for ( the_node = the_chain->first ;                                 
        !_Chain_Is_tail( the_chain, the_node ) ;                      
        the_node = the_node->next ) {                                 
                                                                      
    the_thread = (Thread_Control *)the_node;                          
    api = the_thread->API_Extensions[ THREAD_API_POSIX ];             
   4e71e:	2268 010e      	moveal %a0@(270),%a1                        <== NOT EXECUTED
    #endif                                                            
                                                                      
    /*                                                                
     * Is this thread is actually blocked waiting for the signal?     
     */                                                               
    if (the_thread->Wait.option & mask)                               
   4e722:	67dc           	beqs 4e700 <killinfo+0xbc>                  <== NOT EXECUTED
   *  thread needs to do the post context switch extension so it can  
   *  evaluate the signals pending.                                   
   */                                                                 
process_it:                                                           
                                                                      
  the_thread->do_post_task_switch_extension = true;                   
   4e724:	7001           	moveq #1,%d0                                
   4e726:	1540 0074      	moveb %d0,%a2@(116)                         
                                                                      
  /*                                                                  
   *  Returns true if the signal was synchronously given to a thread  
   *  blocked waiting for the signal.                                 
   */                                                                 
  if ( _POSIX_signals_Unblock_thread( the_thread, sig, siginfo ) ) {  
   4e72a:	486e fff4      	pea %fp@(-12)                               
   4e72e:	2f03           	movel %d3,%sp@-                             
   4e730:	2f0a           	movel %a2,%sp@-                             
   4e732:	4eb9 0004 e97c 	jsr 4e97c <_POSIX_signals_Unblock_thread>   
   4e738:	4fef 000c      	lea %sp@(12),%sp                            
   4e73c:	4a00           	tstb %d0                                    
   4e73e:	6600 008a      	bnew 4e7ca <killinfo+0x186>                 
                                                                      
  /*                                                                  
   *  We may have woken up a thread but we definitely need to post the
   *  signal to the process wide information set.                     
   */                                                                 
  _POSIX_signals_Set_process_signals( mask );                         
   4e742:	2f02           	movel %d2,%sp@-                             
   4e744:	4eb9 0004 e94c 	jsr 4e94c <_POSIX_signals_Set_process_signals>
                                                                      
  if ( _POSIX_signals_Vectors[ sig ].sa_flags == SA_SIGINFO ) {       
   4e74a:	588f           	addql #4,%sp                                
   4e74c:	41f9 0005 f426 	lea 5f426 <_POSIX_signals_Vectors>,%a0      
   4e752:	7202           	moveq #2,%d1                                
   4e754:	b2b0 4800      	cmpl %a0@(00000000,%d4:l),%d1               
   4e758:	672e           	beqs 4e788 <killinfo+0x144>                 
                                                                      
    _Chain_Append( &_POSIX_signals_Siginfo[ sig ], &psiginfo->Node ); 
  }                                                                   
                                                                      
  DEBUG_STEP("\n");                                                   
  _Thread_Enable_dispatch();                                          
   4e75a:	4eb9 0004 7dbc 	jsr 47dbc <_Thread_Enable_dispatch>         
   4e760:	4280           	clrl %d0                                    
  return 0;                                                           
}                                                                     
   4e762:	4cee 1cfc ffd0 	moveml %fp@(-48),%d2-%d7/%a2-%a4            
   4e768:	4e5e           	unlk %fp                                    
   4e76a:	4e75           	rts                                         
   *  P1003.1c/Draft 10, p. 33 says that certain signals should always
   *  be directed to the executing thread such as those caused by hardware
   *  faults.                                                         
   */                                                                 
  if ( (sig == SIGFPE) || (sig == SIGILL) || (sig == SIGSEGV ) )      
      return pthread_kill( pthread_self(), sig );                     
   4e76c:	4eb9 0004 eb98 	jsr 4eb98 <pthread_self>                    
   4e772:	2f03           	movel %d3,%sp@-                             
   4e774:	2f00           	movel %d0,%sp@-                             
   4e776:	4eb9 0004 eabc 	jsr 4eabc <pthread_kill>                    
   4e77c:	508f           	addql #8,%sp                                
  }                                                                   
                                                                      
  DEBUG_STEP("\n");                                                   
  _Thread_Enable_dispatch();                                          
  return 0;                                                           
}                                                                     
   4e77e:	4cee 1cfc ffd0 	moveml %fp@(-48),%d2-%d7/%a2-%a4            
   4e784:	4e5e           	unlk %fp                                    
   4e786:	4e75           	rts                                         
   */                                                                 
  _POSIX_signals_Set_process_signals( mask );                         
                                                                      
  if ( _POSIX_signals_Vectors[ sig ].sa_flags == SA_SIGINFO ) {       
                                                                      
    psiginfo = (POSIX_signals_Siginfo_node *)                         
   4e788:	4879 0005 f5a6 	pea 5f5a6 <_POSIX_signals_Inactive_siginfo> 
   4e78e:	4eb9 0004 b9c0 	jsr 4b9c0 <_Chain_Get>                      
               _Chain_Get( &_POSIX_signals_Inactive_siginfo );        
    if ( !psiginfo ) {                                                
   4e794:	588f           	addql #4,%sp                                
   */                                                                 
  _POSIX_signals_Set_process_signals( mask );                         
                                                                      
  if ( _POSIX_signals_Vectors[ sig ].sa_flags == SA_SIGINFO ) {       
                                                                      
    psiginfo = (POSIX_signals_Siginfo_node *)                         
   4e796:	2040           	moveal %d0,%a0                              
               _Chain_Get( &_POSIX_signals_Inactive_siginfo );        
    if ( !psiginfo ) {                                                
   4e798:	4a80           	tstl %d0                                    
   4e79a:	6700 0120      	beqw 4e8bc <killinfo+0x278>                 
      _Thread_Enable_dispatch();                                      
      rtems_set_errno_and_return_minus_one( EAGAIN );                 
    }                                                                 
                                                                      
    psiginfo->Info = *siginfo;                                        
   4e79e:	216e fff4 0008 	movel %fp@(-12),%a0@(8)                     
                                                                      
    _Chain_Append( &_POSIX_signals_Siginfo[ sig ], &psiginfo->Node ); 
   4e7a4:	0684 0005 f61e 	addil #390686,%d4                           
    if ( !psiginfo ) {                                                
      _Thread_Enable_dispatch();                                      
      rtems_set_errno_and_return_minus_one( EAGAIN );                 
    }                                                                 
                                                                      
    psiginfo->Info = *siginfo;                                        
   4e7aa:	216e fff8 000c 	movel %fp@(-8),%a0@(12)                     
   4e7b0:	216e fffc 0010 	movel %fp@(-4),%a0@(16)                     
                                                                      
    _Chain_Append( &_POSIX_signals_Siginfo[ sig ], &psiginfo->Node ); 
   4e7b6:	2f00           	movel %d0,%sp@-                             
   4e7b8:	2f04           	movel %d4,%sp@-                             
   4e7ba:	4eb9 0004 6798 	jsr 46798 <_Chain_Append>                   
   4e7c0:	508f           	addql #8,%sp                                
  }                                                                   
                                                                      
  DEBUG_STEP("\n");                                                   
  _Thread_Enable_dispatch();                                          
   4e7c2:	4eb9 0004 7dbc 	jsr 47dbc <_Thread_Enable_dispatch>         
   4e7c8:	6096           	bras 4e760 <killinfo+0x11c>                 
  /*                                                                  
   *  Returns true if the signal was synchronously given to a thread  
   *  blocked waiting for the signal.                                 
   */                                                                 
  if ( _POSIX_signals_Unblock_thread( the_thread, sig, siginfo ) ) {  
    _Thread_Enable_dispatch();                                        
   4e7ca:	4eb9 0004 7dbc 	jsr 47dbc <_Thread_Enable_dispatch>         
   4e7d0:	4280           	clrl %d0                                    
  }                                                                   
                                                                      
  DEBUG_STEP("\n");                                                   
  _Thread_Enable_dispatch();                                          
  return 0;                                                           
}                                                                     
   4e7d2:	4cee 1cfc ffd0 	moveml %fp@(-48),%d2-%d7/%a2-%a4            
   4e7d8:	4e5e           	unlk %fp                                    
   4e7da:	4e75           	rts                                         
   *  NOTES:                                                          
   *                                                                  
   *    + rtems internal threads do not receive signals.              
   */                                                                 
  interested = NULL;                                                  
  interested_priority = PRIORITY_MAXIMUM + 1;                         
   4e7dc:	4285           	clrl %d5                                    
   4e7de:	1a39 0005 d7c2 	moveb 5d7c2 <rtems_maximum_priority>,%d5    
   4e7e4:	49f9 0005 ef38 	lea 5ef38 <_Objects_Information_table+0x8>,%a4
 */                                                                   
                                                                      
#define _POSIX_signals_Is_interested( _api, _mask ) \                 
  ( ~(_api)->signals_blocked & (_mask) )                              
                                                                      
int killinfo(                                                         
   4e7ea:	95ca           	subal %a2,%a2                               
   *  NOTES:                                                          
   *                                                                  
   *    + rtems internal threads do not receive signals.              
   */                                                                 
  interested = NULL;                                                  
  interested_priority = PRIORITY_MAXIMUM + 1;                         
   4e7ec:	5285           	addql #1,%d5                                
  for (the_api = OBJECTS_CLASSIC_API; the_api <= OBJECTS_APIS_LAST; the_api++) {
                                                                      
    /*                                                                
     *  This can occur when no one is interested and ITRON is not configured.
     */                                                               
    if ( !_Objects_Information_table[ the_api ] )                     
   4e7ee:	2054           	moveal %a4@,%a0                             
   4e7f0:	4a88           	tstl %a0                                    
   4e7f2:	675e           	beqs 4e852 <killinfo+0x20e>                 
      continue;                                                       
                                                                      
    the_info = _Objects_Information_table[ the_api ][ 1 ];            
   4e7f4:	2068 0004      	moveal %a0@(4),%a0                          
       */                                                             
      if ( !the_info )                                                
        continue;                                                     
    #endif                                                            
                                                                      
    maximum = the_info->maximum;                                      
   4e7f8:	4286           	clrl %d6                                    
   4e7fa:	3c28 000e      	movew %a0@(14),%d6                          
    object_table = the_info->local_table;                             
   4e7fe:	2268 0018      	moveal %a0@(24),%a1                         
                                                                      
    for ( index = 1 ; index <= maximum ; index++ ) {                  
   4e802:	4a86           	tstl %d6                                    
   4e804:	674c           	beqs 4e852 <killinfo+0x20e>                 
   4e806:	5889           	addql #4,%a1                                
   4e808:	7001           	moveq #1,%d0                                
      the_thread = (Thread_Control *) object_table[ index ];          
   4e80a:	2051           	moveal %a1@,%a0                             
    #endif                                                            
                                                                      
    maximum = the_info->maximum;                                      
    object_table = the_info->local_table;                             
                                                                      
    for ( index = 1 ; index <= maximum ; index++ ) {                  
   4e80c:	5280           	addql #1,%d0                                
   4e80e:	5889           	addql #4,%a1                                
      the_thread = (Thread_Control *) object_table[ index ];          
                                                                      
      if ( !the_thread )                                              
   4e810:	4a88           	tstl %a0                                    
   4e812:	673a           	beqs 4e84e <killinfo+0x20a>                 
                                                                      
      /*                                                              
       *  If this thread is of lower priority than the interested thread,
       *  go on to the next thread.                                   
       */                                                             
      if ( the_thread->current_priority > interested_priority )       
   4e814:	2228 0014      	movel %a0@(20),%d1                          
   4e818:	ba81           	cmpl %d1,%d5                                
   4e81a:	6532           	bcss 4e84e <killinfo+0x20a>                 
      DEBUG_STEP("2");                                                
                                                                      
      /*                                                              
       *  If this thread is not interested, then go on to the next thread.
       */                                                             
      api = the_thread->API_Extensions[ THREAD_API_POSIX ];           
   4e81c:	2668 010e      	moveal %a0@(270),%a3                        
   4e820:	2e2b 00cc      	movel %a3@(204),%d7                         
   4e824:	4687           	notl %d7                                    
   4e826:	ce82           	andl %d2,%d7                                
   4e828:	6724           	beqs 4e84e <killinfo+0x20a>                 
       *                                                              
       *  NOTE: We initialized interested_priority to PRIORITY_MAXIMUM + 1
       *        so we never have to worry about deferencing a NULL    
       *        interested thread.                                    
       */                                                             
      if ( the_thread->current_priority < interested_priority ) {     
   4e82a:	ba81           	cmpl %d1,%d5                                
   4e82c:	621c           	bhis 4e84a <killinfo+0x206>                 
       *  and blocking interruptibutable by signal.                   
       *                                                              
       *  If the interested thread is ready, don't think about changing.
       */                                                             
                                                                      
      if ( !_States_Is_ready( interested->current_state ) ) {         
   4e82e:	2e2a 0010      	movel %a2@(16),%d7                          
   4e832:	671a           	beqs 4e84e <killinfo+0x20a>                 
        /* preferred ready over blocked */                            
        DEBUG_STEP("5");                                              
        if ( _States_Is_ready( the_thread->current_state ) ) {        
   4e834:	2668 0010      	moveal %a0@(16),%a3                         
   4e838:	4a8b           	tstl %a3                                    
   4e83a:	670e           	beqs 4e84a <killinfo+0x206>                 
          continue;                                                   
        }                                                             
                                                                      
        DEBUG_STEP("6");                                              
        /* prefer blocked/interruptible over blocked/not interruptible */
        if ( !_States_Is_interruptible_by_signal(interested->current_state) ) {
   4e83c:	0807 001c      	btst #28,%d7                                
   4e840:	660c           	bnes 4e84e <killinfo+0x20a>                 
          DEBUG_STEP("7");                                            
          if ( _States_Is_interruptible_by_signal(the_thread->current_state) ) {
   4e842:	2e0b           	movel %a3,%d7                               
   4e844:	0807 001c      	btst #28,%d7                                
   4e848:	6704           	beqs 4e84e <killinfo+0x20a>                 
   4e84a:	2a01           	movel %d1,%d5                               
   4e84c:	2448           	moveal %a0,%a2                              
    #endif                                                            
                                                                      
    maximum = the_info->maximum;                                      
    object_table = the_info->local_table;                             
                                                                      
    for ( index = 1 ; index <= maximum ; index++ ) {                  
   4e84e:	b086           	cmpl %d6,%d0                                
   4e850:	63b8           	blss 4e80a <killinfo+0x1c6>                 
   4e852:	588c           	addql #4,%a4                                
   *    + rtems internal threads do not receive signals.              
   */                                                                 
  interested = NULL;                                                  
  interested_priority = PRIORITY_MAXIMUM + 1;                         
                                                                      
  for (the_api = OBJECTS_CLASSIC_API; the_api <= OBJECTS_APIS_LAST; the_api++) {
   4e854:	b9fc 0005 ef44 	cmpal #388932,%a4                           
   4e85a:	6692           	bnes 4e7ee <killinfo+0x1aa>                 
        }                                                             
      }                                                               
    }                                                                 
  }                                                                   
                                                                      
  if ( interested ) {                                                 
   4e85c:	4a8a           	tstl %a2                                    
   4e85e:	6700 fee2      	beqw 4e742 <killinfo+0xfe>                  
   *  thread needs to do the post context switch extension so it can  
   *  evaluate the signals pending.                                   
   */                                                                 
process_it:                                                           
                                                                      
  the_thread->do_post_task_switch_extension = true;                   
   4e862:	7001           	moveq #1,%d0                                
   4e864:	1540 0074      	moveb %d0,%a2@(116)                         
                                                                      
  /*                                                                  
   *  Returns true if the signal was synchronously given to a thread  
   *  blocked waiting for the signal.                                 
   */                                                                 
  if ( _POSIX_signals_Unblock_thread( the_thread, sig, siginfo ) ) {  
   4e868:	486e fff4      	pea %fp@(-12)                               
   4e86c:	2f03           	movel %d3,%sp@-                             
   4e86e:	2f0a           	movel %a2,%sp@-                             
   4e870:	4eb9 0004 e97c 	jsr 4e97c <_POSIX_signals_Unblock_thread>   
   4e876:	4fef 000c      	lea %sp@(12),%sp                            
   4e87a:	4a00           	tstb %d0                                    
   4e87c:	6700 fec4      	beqw 4e742 <killinfo+0xfe>                  
   4e880:	6000 ff48      	braw 4e7ca <killinfo+0x186>                 <== NOT EXECUTED
   */                                                                 
  siginfo = &siginfo_struct;                                          
  siginfo->si_signo = sig;                                            
  siginfo->si_code = SI_USER;                                         
  if ( !value ) {                                                     
    siginfo->si_value.sival_int = 0;                                  
   4e884:	42ae fffc      	clrl %fp@(-4)                               
   4e888:	6000 fe36      	braw 4e6c0 <killinfo+0x7c>                  
                                                                      
  /*                                                                  
   *  Only supported for the "calling process" (i.e. this node).      
   */                                                                 
  if ( pid != getpid() )                                              
    rtems_set_errno_and_return_minus_one( ESRCH );                    
   4e88c:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   4e892:	7603           	moveq #3,%d3                                
   4e894:	2040           	moveal %d0,%a0                              
   4e896:	70ff           	moveq #-1,%d0                               
   4e898:	2083           	movel %d3,%a0@                              
  }                                                                   
                                                                      
  DEBUG_STEP("\n");                                                   
  _Thread_Enable_dispatch();                                          
  return 0;                                                           
}                                                                     
   4e89a:	4cee 1cfc ffd0 	moveml %fp@(-48),%d2-%d7/%a2-%a4            
   4e8a0:	4e5e           	unlk %fp                                    
   4e8a2:	4e75           	rts                                         
   */                                                                 
  if ( !sig )                                                         
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  if ( !is_valid_signo(sig) )                                         
    rtems_set_errno_and_return_minus_one( EINVAL );                   
   4e8a4:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   4e8aa:	7416           	moveq #22,%d2                               
   4e8ac:	2040           	moveal %d0,%a0                              
   4e8ae:	70ff           	moveq #-1,%d0                               
   4e8b0:	2082           	movel %d2,%a0@                              
  }                                                                   
                                                                      
  DEBUG_STEP("\n");                                                   
  _Thread_Enable_dispatch();                                          
  return 0;                                                           
}                                                                     
   4e8b2:	4cee 1cfc ffd0 	moveml %fp@(-48),%d2-%d7/%a2-%a4            
   4e8b8:	4e5e           	unlk %fp                                    
   4e8ba:	4e75           	rts                                         
  if ( _POSIX_signals_Vectors[ sig ].sa_flags == SA_SIGINFO ) {       
                                                                      
    psiginfo = (POSIX_signals_Siginfo_node *)                         
               _Chain_Get( &_POSIX_signals_Inactive_siginfo );        
    if ( !psiginfo ) {                                                
      _Thread_Enable_dispatch();                                      
   4e8bc:	4eb9 0004 7dbc 	jsr 47dbc <_Thread_Enable_dispatch>         
      rtems_set_errno_and_return_minus_one( EAGAIN );                 
   4e8c2:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   4e8c8:	720b           	moveq #11,%d1                               
   4e8ca:	2040           	moveal %d0,%a0                              
   4e8cc:	70ff           	moveq #-1,%d0                               
  }                                                                   
                                                                      
  DEBUG_STEP("\n");                                                   
  _Thread_Enable_dispatch();                                          
  return 0;                                                           
}                                                                     
   4e8ce:	4cee 1cfc ffd0 	moveml %fp@(-48),%d2-%d7/%a2-%a4            
                                                                      
    psiginfo = (POSIX_signals_Siginfo_node *)                         
               _Chain_Get( &_POSIX_signals_Inactive_siginfo );        
    if ( !psiginfo ) {                                                
      _Thread_Enable_dispatch();                                      
      rtems_set_errno_and_return_minus_one( EAGAIN );                 
   4e8d4:	2081           	movel %d1,%a0@                              
  }                                                                   
                                                                      
  DEBUG_STEP("\n");                                                   
  _Thread_Enable_dispatch();                                          
  return 0;                                                           
}                                                                     
   4e8d6:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      
00067c64 <link>:                                                      
                                                                      
int link(                                                             
  const char *existing,                                               
  const char *new                                                     
)                                                                     
{                                                                     
   67c64:	4e56 ffc4      	linkw %fp,#-60                              
   67c68:	48d7 0c0c      	moveml %d2-%d3/%a2-%a3,%sp@                 
   67c6c:	242e 0008      	movel %fp@(8),%d2                           
                                                                      
  /*                                                                  
   * Get the node we are linking to.                                  
   */                                                                 
                                                                      
  result = rtems_filesystem_evaluate_path( existing, strlen( existing ),
   67c70:	260e           	movel %fp,%d3                               
   67c72:	0683 ffff ffe8 	addil #-24,%d3                              
   67c78:	2f02           	movel %d2,%sp@-                             
                                                                      
int link(                                                             
  const char *existing,                                               
  const char *new                                                     
)                                                                     
{                                                                     
   67c7a:	266e 000c      	moveal %fp@(12),%a3                         
                                                                      
  /*                                                                  
   * Get the node we are linking to.                                  
   */                                                                 
                                                                      
  result = rtems_filesystem_evaluate_path( existing, strlen( existing ),
   67c7e:	4eb9 0008 6ee4 	jsr 86ee4 <strlen>                          
   67c84:	7201           	moveq #1,%d1                                
   67c86:	2e81           	movel %d1,%sp@                              
   67c88:	2f03           	movel %d3,%sp@-                             
   67c8a:	42a7           	clrl %sp@-                                  
   67c8c:	2f00           	movel %d0,%sp@-                             
   67c8e:	2f02           	movel %d2,%sp@-                             
   67c90:	4eb9 0004 66cc 	jsr 466cc <rtems_filesystem_evaluate_path>  
                                           0, &existing_loc, true );  
  if ( result != 0 )                                                  
   67c96:	4fef 0014      	lea %sp@(20),%sp                            
   67c9a:	4a80           	tstl %d0                                    
   67c9c:	6600 00cc      	bnew 67d6a <link+0x106>                     
                                                                      
  /*                                                                  
   * Get the parent of the node we are creating.                      
   */                                                                 
                                                                      
  rtems_filesystem_get_start_loc( new, &i, &parent_loc );             
   67ca0:	742f           	moveq #47,%d2                               
   67ca2:	1213           	moveb %a3@,%d1                              
   67ca4:	1001           	moveb %d1,%d0                               
   67ca6:	49c0           	extbl %d0                                   
   67ca8:	b480           	cmpl %d0,%d2                                
   67caa:	670e           	beqs 67cba <link+0x56>                      
   67cac:	143c 005c      	moveb #92,%d2                               
   67cb0:	b480           	cmpl %d0,%d2                                
   67cb2:	6706           	beqs 67cba <link+0x56>                      
   67cb4:	4a01           	tstb %d1                                    
   67cb6:	6600 00c0      	bnew 67d78 <link+0x114>                     
   67cba:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   
   67cc0:	45ee ffd4      	lea %fp@(-44),%a2                           
   67cc4:	7001           	moveq #1,%d0                                
   67cc6:	24a8 0018      	movel %a0@(24),%a2@                         
   67cca:	2d68 001c ffd8 	movel %a0@(28),%fp@(-40)                    
   67cd0:	2d68 0020 ffdc 	movel %a0@(32),%fp@(-36)                    
   67cd6:	2d68 0024 ffe0 	movel %a0@(36),%fp@(-32)                    
   67cdc:	2d68 0028 ffe4 	movel %a0@(40),%fp@(-28)                    
                                                                      
  if ( !parent_loc.ops->evalformake_h ) {                             
   67ce2:	206e ffe0      	moveal %fp@(-32),%a0                        
   67ce6:	2068 0004      	moveal %a0@(4),%a0                          
   67cea:	4a88           	tstl %a0                                    
   67cec:	6700 0122      	beqw 67e10 <link+0x1ac>                     
    rtems_filesystem_freenode( &existing_loc );                       
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*parent_loc.ops->evalformake_h)( &new[i], &parent_loc, &name_start );
   67cf0:	486e fffc      	pea %fp@(-4)                                
   67cf4:	2f0a           	movel %a2,%sp@-                             
   67cf6:	4873 0800      	pea %a3@(00000000,%d0:l)                    
   67cfa:	4e90           	jsr %a0@                                    
  if ( result != 0 ) {                                                
   67cfc:	4fef 000c      	lea %sp@(12),%sp                            
  if ( !parent_loc.ops->evalformake_h ) {                             
    rtems_filesystem_freenode( &existing_loc );                       
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*parent_loc.ops->evalformake_h)( &new[i], &parent_loc, &name_start );
   67d00:	2640           	moveal %d0,%a3                              
  if ( result != 0 ) {                                                
   67d02:	4a80           	tstl %d0                                    
   67d04:	6600 00dc      	bnew 67de2 <link+0x17e>                     
  /*                                                                  
   *  Check to see if the caller is trying to link across file system 
   *  boundaries.                                                     
   */                                                                 
                                                                      
  if ( parent_loc.mt_entry != existing_loc.mt_entry ) {               
   67d08:	202e fff8      	movel %fp@(-8),%d0                          
   67d0c:	b0ae ffe4      	cmpl %fp@(-28),%d0                          
   67d10:	6600 008a      	bnew 67d9c <link+0x138>                     
    rtems_filesystem_freenode( &existing_loc );                       
    rtems_filesystem_freenode( &parent_loc );                         
    rtems_set_errno_and_return_minus_one( EXDEV );                    
  }                                                                   
                                                                      
  if ( !parent_loc.ops->link_h ) {                                    
   67d14:	226e ffe0      	moveal %fp@(-32),%a1                        
   67d18:	2069 0008      	moveal %a1@(8),%a0                          
   67d1c:	4a88           	tstl %a0                                    
   67d1e:	6700 0122      	beqw 67e42 <link+0x1de>                     
    rtems_filesystem_freenode( &existing_loc );                       
    rtems_filesystem_freenode( &parent_loc );                         
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*parent_loc.ops->link_h)( &existing_loc, &parent_loc, name_start );
   67d22:	2f2e fffc      	movel %fp@(-4),%sp@-                        
   67d26:	2f0a           	movel %a2,%sp@-                             
   67d28:	2f03           	movel %d3,%sp@-                             
   67d2a:	4e90           	jsr %a0@                                    
                                                                      
  rtems_filesystem_freenode( &existing_loc );                         
   67d2c:	206e fff4      	moveal %fp@(-12),%a0                        
    rtems_filesystem_freenode( &existing_loc );                       
    rtems_filesystem_freenode( &parent_loc );                         
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*parent_loc.ops->link_h)( &existing_loc, &parent_loc, name_start );
   67d30:	2400           	movel %d0,%d2                               
                                                                      
  rtems_filesystem_freenode( &existing_loc );                         
   67d32:	4fef 000c      	lea %sp@(12),%sp                            
   67d36:	4a88           	tstl %a0                                    
   67d38:	670e           	beqs 67d48 <link+0xe4>                      
   67d3a:	2068 001c      	moveal %a0@(28),%a0                         
   67d3e:	4a88           	tstl %a0                                    
   67d40:	6706           	beqs 67d48 <link+0xe4>                      
   67d42:	2f03           	movel %d3,%sp@-                             
   67d44:	4e90           	jsr %a0@                                    
   67d46:	588f           	addql #4,%sp                                
  rtems_filesystem_freenode( &parent_loc );                           
   67d48:	206e ffe0      	moveal %fp@(-32),%a0                        
   67d4c:	4a88           	tstl %a0                                    
   67d4e:	670e           	beqs 67d5e <link+0xfa>                      
   67d50:	2068 001c      	moveal %a0@(28),%a0                         
   67d54:	4a88           	tstl %a0                                    
   67d56:	6706           	beqs 67d5e <link+0xfa>                      
   67d58:	2f0a           	movel %a2,%sp@-                             
   67d5a:	4e90           	jsr %a0@                                    
   67d5c:	588f           	addql #4,%sp                                
                                                                      
  return result;                                                      
}                                                                     
   67d5e:	2002           	movel %d2,%d0                               
   67d60:	4cee 0c0c ffc4 	moveml %fp@(-60),%d2-%d3/%a2-%a3            
   67d66:	4e5e           	unlk %fp                                    
   67d68:	4e75           	rts                                         
   * Get the node we are linking to.                                  
   */                                                                 
                                                                      
  result = rtems_filesystem_evaluate_path( existing, strlen( existing ),
                                           0, &existing_loc, true );  
  if ( result != 0 )                                                  
   67d6a:	74ff           	moveq #-1,%d2                               
                                                                      
  rtems_filesystem_freenode( &existing_loc );                         
  rtems_filesystem_freenode( &parent_loc );                           
                                                                      
  return result;                                                      
}                                                                     
   67d6c:	2002           	movel %d2,%d0                               
   67d6e:	4cee 0c0c ffc4 	moveml %fp@(-60),%d2-%d3/%a2-%a3            
   67d74:	4e5e           	unlk %fp                                    
   67d76:	4e75           	rts                                         
                                                                      
  /*                                                                  
   * Get the parent of the node we are creating.                      
   */                                                                 
                                                                      
  rtems_filesystem_get_start_loc( new, &i, &parent_loc );             
   67d78:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   
   67d7e:	45ee ffd4      	lea %fp@(-44),%a2                           
   67d82:	5888           	addql #4,%a0                                
   67d84:	4280           	clrl %d0                                    
   67d86:	2498           	movel %a0@+,%a2@                            
   67d88:	2d58 ffd8      	movel %a0@+,%fp@(-40)                       
   67d8c:	2d58 ffdc      	movel %a0@+,%fp@(-36)                       
   67d90:	2d58 ffe0      	movel %a0@+,%fp@(-32)                       
   67d94:	2d50 ffe4      	movel %a0@,%fp@(-28)                        
   67d98:	6000 ff48      	braw 67ce2 <link+0x7e>                      
   *  Check to see if the caller is trying to link across file system 
   *  boundaries.                                                     
   */                                                                 
                                                                      
  if ( parent_loc.mt_entry != existing_loc.mt_entry ) {               
    rtems_filesystem_freenode( &existing_loc );                       
   67d9c:	206e fff4      	moveal %fp@(-12),%a0                        
   67da0:	4a88           	tstl %a0                                    
   67da2:	670e           	beqs 67db2 <link+0x14e>                     
   67da4:	2068 001c      	moveal %a0@(28),%a0                         
   67da8:	4a88           	tstl %a0                                    
   67daa:	6706           	beqs 67db2 <link+0x14e>                     
   67dac:	2f03           	movel %d3,%sp@-                             
   67dae:	4e90           	jsr %a0@                                    
   67db0:	588f           	addql #4,%sp                                
    rtems_filesystem_freenode( &parent_loc );                         
   67db2:	206e ffe0      	moveal %fp@(-32),%a0                        
   67db6:	4a88           	tstl %a0                                    
   67db8:	670e           	beqs 67dc8 <link+0x164>                     
   67dba:	2068 001c      	moveal %a0@(28),%a0                         
   67dbe:	4a88           	tstl %a0                                    
   67dc0:	6706           	beqs 67dc8 <link+0x164>                     
   67dc2:	2f0a           	movel %a2,%sp@-                             
   67dc4:	4e90           	jsr %a0@                                    
   67dc6:	588f           	addql #4,%sp                                
    rtems_set_errno_and_return_minus_one( EXDEV );                    
   67dc8:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         
   67dce:	74ff           	moveq #-1,%d2                               
   67dd0:	2040           	moveal %d0,%a0                              
   67dd2:	7012           	moveq #18,%d0                               
   67dd4:	2080           	movel %d0,%a0@                              
                                                                      
  rtems_filesystem_freenode( &existing_loc );                         
  rtems_filesystem_freenode( &parent_loc );                           
                                                                      
  return result;                                                      
}                                                                     
   67dd6:	2002           	movel %d2,%d0                               
   67dd8:	4cee 0c0c ffc4 	moveml %fp@(-60),%d2-%d3/%a2-%a3            
   67dde:	4e5e           	unlk %fp                                    
   67de0:	4e75           	rts                                         
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*parent_loc.ops->evalformake_h)( &new[i], &parent_loc, &name_start );
  if ( result != 0 ) {                                                
    rtems_filesystem_freenode( &existing_loc );                       
   67de2:	206e fff4      	moveal %fp@(-12),%a0                        
   67de6:	4a88           	tstl %a0                                    
   67de8:	670e           	beqs 67df8 <link+0x194>                     
   67dea:	2068 001c      	moveal %a0@(28),%a0                         
   67dee:	4a88           	tstl %a0                                    
   67df0:	6706           	beqs 67df8 <link+0x194>                     
   67df2:	2f03           	movel %d3,%sp@-                             
   67df4:	4e90           	jsr %a0@                                    
   67df6:	588f           	addql #4,%sp                                
    rtems_set_errno_and_return_minus_one( result );                   
   67df8:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         
   67dfe:	74ff           	moveq #-1,%d2                               
   67e00:	2040           	moveal %d0,%a0                              
                                                                      
  rtems_filesystem_freenode( &existing_loc );                         
  rtems_filesystem_freenode( &parent_loc );                           
                                                                      
  return result;                                                      
}                                                                     
   67e02:	2002           	movel %d2,%d0                               
  }                                                                   
                                                                      
  result = (*parent_loc.ops->evalformake_h)( &new[i], &parent_loc, &name_start );
  if ( result != 0 ) {                                                
    rtems_filesystem_freenode( &existing_loc );                       
    rtems_set_errno_and_return_minus_one( result );                   
   67e04:	208b           	movel %a3,%a0@                              
                                                                      
  rtems_filesystem_freenode( &existing_loc );                         
  rtems_filesystem_freenode( &parent_loc );                           
                                                                      
  return result;                                                      
}                                                                     
   67e06:	4cee 0c0c ffc4 	moveml %fp@(-60),%d2-%d3/%a2-%a3            
   67e0c:	4e5e           	unlk %fp                                    
   67e0e:	4e75           	rts                                         
   */                                                                 
                                                                      
  rtems_filesystem_get_start_loc( new, &i, &parent_loc );             
                                                                      
  if ( !parent_loc.ops->evalformake_h ) {                             
    rtems_filesystem_freenode( &existing_loc );                       
   67e10:	206e fff4      	moveal %fp@(-12),%a0                        <== NOT EXECUTED
   67e14:	4a88           	tstl %a0                                    <== NOT EXECUTED
   67e16:	670e           	beqs 67e26 <link+0x1c2>                     <== NOT EXECUTED
   67e18:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   67e1c:	4a88           	tstl %a0                                    <== NOT EXECUTED
   67e1e:	6706           	beqs 67e26 <link+0x1c2>                     <== NOT EXECUTED
   67e20:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   67e22:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   67e24:	588f           	addql #4,%sp                                <== NOT EXECUTED
  }                                                                   
                                                                      
  if ( !parent_loc.ops->link_h ) {                                    
    rtems_filesystem_freenode( &existing_loc );                       
    rtems_filesystem_freenode( &parent_loc );                         
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   67e26:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   67e2c:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
   67e2e:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   67e30:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
                                                                      
  rtems_filesystem_freenode( &existing_loc );                         
  rtems_filesystem_freenode( &parent_loc );                           
                                                                      
  return result;                                                      
}                                                                     
   67e36:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   67e38:	4cee 0c0c ffc4 	moveml %fp@(-60),%d2-%d3/%a2-%a3            <== NOT EXECUTED
   67e3e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   67e40:	4e75           	rts                                         <== NOT EXECUTED
    rtems_filesystem_freenode( &parent_loc );                         
    rtems_set_errno_and_return_minus_one( EXDEV );                    
  }                                                                   
                                                                      
  if ( !parent_loc.ops->link_h ) {                                    
    rtems_filesystem_freenode( &existing_loc );                       
   67e42:	206e fff4      	moveal %fp@(-12),%a0                        <== NOT EXECUTED
   67e46:	4a88           	tstl %a0                                    <== NOT EXECUTED
   67e48:	6712           	beqs 67e5c <link+0x1f8>                     <== NOT EXECUTED
   67e4a:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   67e4e:	4a88           	tstl %a0                                    <== NOT EXECUTED
   67e50:	670a           	beqs 67e5c <link+0x1f8>                     <== NOT EXECUTED
   67e52:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   67e54:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   67e56:	226e ffe0      	moveal %fp@(-32),%a1                        <== NOT EXECUTED
   67e5a:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_filesystem_freenode( &parent_loc );                         
   67e5c:	4a89           	tstl %a1                                    <== NOT EXECUTED
   67e5e:	67c6           	beqs 67e26 <link+0x1c2>                     <== NOT EXECUTED
   67e60:	2069 001c      	moveal %a1@(28),%a0                         <== NOT EXECUTED
   67e64:	4a88           	tstl %a0                                    <== NOT EXECUTED
   67e66:	67be           	beqs 67e26 <link+0x1c2>                     <== NOT EXECUTED
   67e68:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   67e6a:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( EXDEV );                    
  }                                                                   
                                                                      
  if ( !parent_loc.ops->link_h ) {                                    
    rtems_filesystem_freenode( &existing_loc );                       
    rtems_filesystem_freenode( &parent_loc );                         
   67e6c:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   67e6e:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   67e70:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   67e76:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   67e78:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
   67e7e:	60b6           	bras 67e36 <link+0x1d2>                     <== NOT EXECUTED
                                                                      
0005b4e0 <lseek>:                                                     
off_t lseek(                                                          
  int     fd,                                                         
  off_t   offset,                                                     
  int     whence                                                      
)                                                                     
{                                                                     
   5b4e0:	4e56 ffe4      	linkw %fp,#-28                              
   5b4e4:	222e 0008      	movel %fp@(8),%d1                           
   5b4e8:	48d7 04fc      	moveml %d2-%d7/%a2,%sp@                     
   5b4ec:	202e 0014      	movel %fp@(20),%d0                          
   5b4f0:	282e 000c      	movel %fp@(12),%d4                          
   5b4f4:	2a2e 0010      	movel %fp@(16),%d5                          
  rtems_libio_t *iop;                                                 
  off_t          old_offset;                                          
  off_t          status;                                              
                                                                      
  rtems_libio_check_fd( fd );                                         
   5b4f8:	b2b9 0005 d714 	cmpl 5d714 <rtems_libio_number_iops>,%d1    
   5b4fe:	6400 0118      	bccw 5b618 <lseek+0x138>                    
  iop = rtems_libio_iop( fd );                                        
   5b502:	2479 0005 ee18 	moveal 5ee18 <rtems_libio_iops>,%a2         
   5b508:	ed89           	lsll #6,%d1                                 
   5b50a:	d5c1           	addal %d1,%a2                               
  rtems_libio_check_is_open(iop);                                     
   5b50c:	222a 0014      	movel %a2@(20),%d1                          
   5b510:	0281 0000 0100 	andil #256,%d1                              
   5b516:	6700 0100      	beqw 5b618 <lseek+0x138>                    
                                                                      
  /*                                                                  
   *  Check as many errors as possible before touching iop->offset.   
   */                                                                 
                                                                      
  if ( !iop->handlers->lseek_h )                                      
   5b51a:	206a 003c      	moveal %a2@(60),%a0                         
   5b51e:	4aa8 0014      	tstl %a0@(20)                               
   5b522:	6700 0112      	beqw 5b636 <lseek+0x156>                    
  /*                                                                  
   *  Now process the lseek().                                        
   */                                                                 
                                                                      
  old_offset = iop->offset;                                           
  switch ( whence ) {                                                 
   5b526:	7201           	moveq #1,%d1                                
                                                                      
  /*                                                                  
   *  Now process the lseek().                                        
   */                                                                 
                                                                      
  old_offset = iop->offset;                                           
   5b528:	242a 000c      	movel %a2@(12),%d2                          
   5b52c:	262a 0010      	movel %a2@(16),%d3                          
  switch ( whence ) {                                                 
   5b530:	b280           	cmpl %d0,%d1                                
   5b532:	6700 00ae      	beqw 5b5e2 <lseek+0x102>                    
   5b536:	7c02           	moveq #2,%d6                                
   5b538:	bc80           	cmpl %d0,%d6                                
   5b53a:	6752           	beqs 5b58e <lseek+0xae>                     
   5b53c:	4a80           	tstl %d0                                    
   5b53e:	6600 0084      	bnew 5b5c4 <lseek+0xe4>                     
    case SEEK_SET:                                                    
      iop->offset = offset;                                           
   5b542:	2544 000c      	movel %d4,%a2@(12)                          
   5b546:	2545 0010      	movel %d5,%a2@(16)                          
  /*                                                                  
   *  At this time, handlers assume iop->offset has the desired       
   *  new offset.                                                     
   */                                                                 
                                                                      
  status = (*iop->handlers->lseek_h)( iop, offset, whence );          
   5b54a:	2f00           	movel %d0,%sp@-                             
   5b54c:	2f05           	movel %d5,%sp@-                             
   5b54e:	2f04           	movel %d4,%sp@-                             
   5b550:	2f0a           	movel %a2,%sp@-                             
   5b552:	2068 0014      	moveal %a0@(20),%a0                         
   5b556:	4e90           	jsr %a0@                                    
  if ( status == (off_t) -1 )                                         
   5b558:	4fef 0010      	lea %sp@(16),%sp                            
  /*                                                                  
   *  At this time, handlers assume iop->offset has the desired       
   *  new offset.                                                     
   */                                                                 
                                                                      
  status = (*iop->handlers->lseek_h)( iop, offset, whence );          
   5b55c:	2800           	movel %d0,%d4                               
   5b55e:	2a01           	movel %d1,%d5                               
  if ( status == (off_t) -1 )                                         
   5b560:	70ff           	moveq #-1,%d0                               
   5b562:	72ff           	moveq #-1,%d1                               
   5b564:	9285           	subl %d5,%d1                                
   5b566:	9184           	subxl %d4,%d0                               
   5b568:	670e           	beqs 5b578 <lseek+0x98>                     
  /*                                                                  
   *  So if the operation failed, we have to restore iop->offset.     
   */                                                                 
                                                                      
  return status;                                                      
}                                                                     
   5b56a:	2205           	movel %d5,%d1                               
   5b56c:	2004           	movel %d4,%d0                               
   5b56e:	4cee 04fc ffe4 	moveml %fp@(-28),%d2-%d7/%a2                
   5b574:	4e5e           	unlk %fp                                    
   5b576:	4e75           	rts                                         
   5b578:	2205           	movel %d5,%d1                               
   5b57a:	2004           	movel %d4,%d0                               
   *  new offset.                                                     
   */                                                                 
                                                                      
  status = (*iop->handlers->lseek_h)( iop, offset, whence );          
  if ( status == (off_t) -1 )                                         
    iop->offset = old_offset;                                         
   5b57c:	2542 000c      	movel %d2,%a2@(12)                          
   5b580:	2543 0010      	movel %d3,%a2@(16)                          
  /*                                                                  
   *  So if the operation failed, we have to restore iop->offset.     
   */                                                                 
                                                                      
  return status;                                                      
}                                                                     
   5b584:	4cee 04fc ffe4 	moveml %fp@(-28),%d2-%d7/%a2                
   5b58a:	4e5e           	unlk %fp                                    
   5b58c:	4e75           	rts                                         
    case SEEK_CUR:                                                    
      iop->offset += offset;                                          
      break;                                                          
                                                                      
    case SEEK_END:                                                    
      iop->offset = iop->size + offset;                               
   5b58e:	2c2a 0004      	movel %a2@(4),%d6                           
   5b592:	2e2a 0008      	movel %a2@(8),%d7                           
   5b596:	de85           	addl %d5,%d7                                
   5b598:	dd84           	addxl %d4,%d6                               
   5b59a:	2546 000c      	movel %d6,%a2@(12)                          
   5b59e:	2547 0010      	movel %d7,%a2@(16)                          
  /*                                                                  
   *  At this time, handlers assume iop->offset has the desired       
   *  new offset.                                                     
   */                                                                 
                                                                      
  status = (*iop->handlers->lseek_h)( iop, offset, whence );          
   5b5a2:	2f00           	movel %d0,%sp@-                             
   5b5a4:	2f05           	movel %d5,%sp@-                             
   5b5a6:	2f04           	movel %d4,%sp@-                             
   5b5a8:	2f0a           	movel %a2,%sp@-                             
   5b5aa:	2068 0014      	moveal %a0@(20),%a0                         
   5b5ae:	4e90           	jsr %a0@                                    
  if ( status == (off_t) -1 )                                         
   5b5b0:	4fef 0010      	lea %sp@(16),%sp                            
  /*                                                                  
   *  At this time, handlers assume iop->offset has the desired       
   *  new offset.                                                     
   */                                                                 
                                                                      
  status = (*iop->handlers->lseek_h)( iop, offset, whence );          
   5b5b4:	2800           	movel %d0,%d4                               
   5b5b6:	2a01           	movel %d1,%d5                               
  if ( status == (off_t) -1 )                                         
   5b5b8:	70ff           	moveq #-1,%d0                               
   5b5ba:	72ff           	moveq #-1,%d1                               
   5b5bc:	9285           	subl %d5,%d1                                
   5b5be:	9184           	subxl %d4,%d0                               
   5b5c0:	66a8           	bnes 5b56a <lseek+0x8a>                     
   5b5c2:	60b4           	bras 5b578 <lseek+0x98>                     
    case SEEK_END:                                                    
      iop->offset = iop->size + offset;                               
      break;                                                          
                                                                      
    default:                                                          
      rtems_set_errno_and_return_minus_one( EINVAL );                 
   5b5c4:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   5b5ca:	2040           	moveal %d0,%a0                              
   5b5cc:	7016           	moveq #22,%d0                               
   5b5ce:	78ff           	moveq #-1,%d4                               
   5b5d0:	7aff           	moveq #-1,%d5                               
   5b5d2:	2080           	movel %d0,%a0@                              
  /*                                                                  
   *  So if the operation failed, we have to restore iop->offset.     
   */                                                                 
                                                                      
  return status;                                                      
}                                                                     
   5b5d4:	2205           	movel %d5,%d1                               
   5b5d6:	2004           	movel %d4,%d0                               
   5b5d8:	4cee 04fc ffe4 	moveml %fp@(-28),%d2-%d7/%a2                
   5b5de:	4e5e           	unlk %fp                                    
   5b5e0:	4e75           	rts                                         
    case SEEK_SET:                                                    
      iop->offset = offset;                                           
      break;                                                          
                                                                      
    case SEEK_CUR:                                                    
      iop->offset += offset;                                          
   5b5e2:	2c04           	movel %d4,%d6                               
   5b5e4:	2e05           	movel %d5,%d7                               
   5b5e6:	de83           	addl %d3,%d7                                
   5b5e8:	dd82           	addxl %d2,%d6                               
   5b5ea:	2546 000c      	movel %d6,%a2@(12)                          
   5b5ee:	2547 0010      	movel %d7,%a2@(16)                          
  /*                                                                  
   *  At this time, handlers assume iop->offset has the desired       
   *  new offset.                                                     
   */                                                                 
                                                                      
  status = (*iop->handlers->lseek_h)( iop, offset, whence );          
   5b5f2:	2f00           	movel %d0,%sp@-                             
   5b5f4:	2f05           	movel %d5,%sp@-                             
   5b5f6:	2f04           	movel %d4,%sp@-                             
   5b5f8:	2f0a           	movel %a2,%sp@-                             
   5b5fa:	2068 0014      	moveal %a0@(20),%a0                         
   5b5fe:	4e90           	jsr %a0@                                    
  if ( status == (off_t) -1 )                                         
   5b600:	4fef 0010      	lea %sp@(16),%sp                            
  /*                                                                  
   *  At this time, handlers assume iop->offset has the desired       
   *  new offset.                                                     
   */                                                                 
                                                                      
  status = (*iop->handlers->lseek_h)( iop, offset, whence );          
   5b604:	2800           	movel %d0,%d4                               
   5b606:	2a01           	movel %d1,%d5                               
  if ( status == (off_t) -1 )                                         
   5b608:	70ff           	moveq #-1,%d0                               
   5b60a:	72ff           	moveq #-1,%d1                               
   5b60c:	9285           	subl %d5,%d1                                
   5b60e:	9184           	subxl %d4,%d0                               
   5b610:	6600 ff58      	bnew 5b56a <lseek+0x8a>                     
   5b614:	6000 ff62      	braw 5b578 <lseek+0x98>                     <== NOT EXECUTED
  off_t          old_offset;                                          
  off_t          status;                                              
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open(iop);                                     
   5b618:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   5b61e:	7209           	moveq #9,%d1                                <== NOT EXECUTED
   5b620:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   5b622:	78ff           	moveq #-1,%d4                               <== NOT EXECUTED
   5b624:	7aff           	moveq #-1,%d5                               <== NOT EXECUTED
   5b626:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
  /*                                                                  
   *  So if the operation failed, we have to restore iop->offset.     
   */                                                                 
                                                                      
  return status;                                                      
}                                                                     
   5b628:	2205           	movel %d5,%d1                               <== NOT EXECUTED
   5b62a:	2004           	movel %d4,%d0                               <== NOT EXECUTED
   5b62c:	4cee 04fc ffe4 	moveml %fp@(-28),%d2-%d7/%a2                <== NOT EXECUTED
   5b632:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   5b634:	4e75           	rts                                         <== NOT EXECUTED
  /*                                                                  
   *  Check as many errors as possible before touching iop->offset.   
   */                                                                 
                                                                      
  if ( !iop->handlers->lseek_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   5b636:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   5b63c:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   5b63e:	78ff           	moveq #-1,%d4                               <== NOT EXECUTED
   5b640:	7aff           	moveq #-1,%d5                               <== NOT EXECUTED
   5b642:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  /*                                                                  
   *  So if the operation failed, we have to restore iop->offset.     
   */                                                                 
                                                                      
  return status;                                                      
}                                                                     
   5b648:	2205           	movel %d5,%d1                               <== NOT EXECUTED
   5b64a:	2004           	movel %d4,%d0                               <== NOT EXECUTED
   5b64c:	4cee 04fc ffe4 	moveml %fp@(-28),%d2-%d7/%a2                <== NOT EXECUTED
   5b652:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00068040 <lstat>:                                                     
                                                                      
int _STAT_NAME(                                                       
  const char  *path,                                                  
  struct stat *buf                                                    
)                                                                     
{                                                                     
   68040:	4e56 ffe0      	linkw %fp,#-32                              <== NOT EXECUTED
   68044:	48d7 001c      	moveml %d2-%d4,%sp@                         <== NOT EXECUTED
   68048:	262e 0008      	movel %fp@(8),%d3                           <== NOT EXECUTED
   6804c:	242e 000c      	movel %fp@(12),%d2                          <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  Check to see if we were passed a valid pointer.                 
   */                                                                 
                                                                      
  if ( !buf )                                                         
   68050:	6700 0086      	beqw 680d8 <lstat+0x98>                     <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  status = rtems_filesystem_evaluate_path( path, strlen( path ),      
   68054:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   68056:	280e           	movel %fp,%d4                               <== NOT EXECUTED
   68058:	0684 ffff ffec 	addil #-20,%d4                              <== NOT EXECUTED
   6805e:	4eb9 0008 6ee4 	jsr 86ee4 <strlen>                          <== NOT EXECUTED
   68064:	4297           	clrl %sp@                                   <== NOT EXECUTED
   68066:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   68068:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   6806a:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   6806c:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   6806e:	4eb9 0004 66cc 	jsr 466cc <rtems_filesystem_evaluate_path>  <== NOT EXECUTED
                                           0, &loc, _STAT_FOLLOW_LINKS );
  if ( status != 0 )                                                  
   68074:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   68078:	4a80           	tstl %d0                                    <== NOT EXECUTED
   6807a:	664e           	bnes 680ca <lstat+0x8a>                     <== NOT EXECUTED
    return -1;                                                        
                                                                      
  if ( !loc.handlers->fstat_h ){                                      
   6807c:	206e fff4      	moveal %fp@(-12),%a0                        <== NOT EXECUTED
   68080:	4aa8 0018      	tstl %a0@(24)                               <== NOT EXECUTED
   68084:	676c           	beqs 680f2 <lstat+0xb2>                     <== NOT EXECUTED
  /*                                                                  
   *  Zero out the stat structure so the various support              
   *  versions of stat don't have to.                                 
   */                                                                 
                                                                      
  memset( buf, 0, sizeof(struct stat) );                              
   68086:	4878 0046      	pea 46 <DBL_MANT_DIG+0x11>                  <== NOT EXECUTED
   6808a:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   6808c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   6808e:	4eb9 0008 3fe0 	jsr 83fe0 <memset>                          <== NOT EXECUTED
                                                                      
  status =  (*loc.handlers->fstat_h)( &loc, buf );                    
   68094:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   68096:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   68098:	206e fff4      	moveal %fp@(-12),%a0                        <== NOT EXECUTED
   6809c:	2068 0018      	moveal %a0@(24),%a0                         <== NOT EXECUTED
   680a0:	4e90           	jsr %a0@                                    <== NOT EXECUTED
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   680a2:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
   *  versions of stat don't have to.                                 
   */                                                                 
                                                                      
  memset( buf, 0, sizeof(struct stat) );                              
                                                                      
  status =  (*loc.handlers->fstat_h)( &loc, buf );                    
   680a6:	2400           	movel %d0,%d2                               <== NOT EXECUTED
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   680a8:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   680ac:	4a88           	tstl %a0                                    <== NOT EXECUTED
   680ae:	670e           	beqs 680be <lstat+0x7e>                     <== NOT EXECUTED
   680b0:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   680b4:	4a88           	tstl %a0                                    <== NOT EXECUTED
   680b6:	6706           	beqs 680be <lstat+0x7e>                     <== NOT EXECUTED
   680b8:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   680ba:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   680bc:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  return status;                                                      
}                                                                     
   680be:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   680c0:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    <== NOT EXECUTED
   680c6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   680c8:	4e75           	rts                                         <== NOT EXECUTED
  if ( !buf )                                                         
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  status = rtems_filesystem_evaluate_path( path, strlen( path ),      
                                           0, &loc, _STAT_FOLLOW_LINKS );
  if ( status != 0 )                                                  
   680ca:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
  status =  (*loc.handlers->fstat_h)( &loc, buf );                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return status;                                                      
}                                                                     
   680cc:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   680ce:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    <== NOT EXECUTED
   680d4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   680d6:	4e75           	rts                                         <== NOT EXECUTED
  /*                                                                  
   *  Check to see if we were passed a valid pointer.                 
   */                                                                 
                                                                      
  if ( !buf )                                                         
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   680d8:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   680de:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
   680e0:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   680e2:	700e           	moveq #14,%d0                               <== NOT EXECUTED
   680e4:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
  status =  (*loc.handlers->fstat_h)( &loc, buf );                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return status;                                                      
}                                                                     
   680e6:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   680e8:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    <== NOT EXECUTED
   680ee:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   680f0:	4e75           	rts                                         <== NOT EXECUTED
                                           0, &loc, _STAT_FOLLOW_LINKS );
  if ( status != 0 )                                                  
    return -1;                                                        
                                                                      
  if ( !loc.handlers->fstat_h ){                                      
    rtems_filesystem_freenode( &loc );                                
   680f2:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
   680f6:	4a88           	tstl %a0                                    <== NOT EXECUTED
   680f8:	670e           	beqs 68108 <lstat+0xc8>                     <== NOT EXECUTED
   680fa:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   680fe:	4a88           	tstl %a0                                    <== NOT EXECUTED
   68100:	6706           	beqs 68108 <lstat+0xc8>                     <== NOT EXECUTED
   68102:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   68104:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   68106:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   68108:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   6810e:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
   68110:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  status =  (*loc.handlers->fstat_h)( &loc, buf );                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return status;                                                      
}                                                                     
   68112:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   68114:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    <== NOT EXECUTED
  if ( status != 0 )                                                  
    return -1;                                                        
                                                                      
  if ( !loc.handlers->fstat_h ){                                      
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   6811a:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  status =  (*loc.handlers->fstat_h)( &loc, buf );                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return status;                                                      
}                                                                     
   68120:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004ac8c <malloc>:                                                    
  size_t  size                                                        
)                                                                     
{                                                                     
  void        *return_this;                                           
                                                                      
  MSBUMP(malloc_calls, 1);                                            
   4ac8c:	4e56 fff4      	linkw %fp,#-12                              
   4ac90:	52b9 0005 ee28 	addql #1,5ee28 <rtems_malloc_statistics+0x4>
   4ac96:	48d7 001c      	moveml %d2-%d4,%sp@                         
   4ac9a:	262e 0008      	movel %fp@(8),%d3                           
                                                                      
  /*                                                                  
   *  If some free's have been deferred, then do them now.            
   */                                                                 
  malloc_deferred_frees_process();                                    
   4ac9e:	4eb9 0004 ac4a 	jsr 4ac4a <malloc_deferred_frees_process>   
                                                                      
  /*                                                                  
   * Validate the parameters                                          
   */                                                                 
  if ( !size )                                                        
   4aca4:	4a83           	tstl %d3                                    
   4aca6:	6766           	beqs 4ad0e <malloc+0x82>                    
    return (void *) 0;                                                
                                                                      
  /*                                                                  
   *  Do not attempt to allocate memory if not in correct system state.
   */                                                                 
  if ( _System_state_Is_up(_System_state_Get()) &&                    
   4aca8:	7003           	moveq #3,%d0                                
   4acaa:	b0b9 0005 f100 	cmpl 5f100 <_System_state_Current>,%d0      
   4acb0:	6752           	beqs 4ad04 <malloc+0x78>                    
RTEMS_INLINE_ROUTINE void *_Protected_heap_Allocate(                  
  Heap_Control *heap,                                                 
  uintptr_t size                                                      
)                                                                     
{                                                                     
  return _Protected_heap_Allocate_aligned_with_boundary( heap, size, 0, 0 );
   4acb2:	42a7           	clrl %sp@-                                  
   4acb4:	42a7           	clrl %sp@-                                  
   4acb6:	2f03           	movel %d3,%sp@-                             
   4acb8:	2f39 0005 d720 	movel 5d720 <RTEMS_Malloc_Heap>,%sp@-       
   4acbe:	4eb9 0004 bff8 	jsr 4bff8 <_Protected_heap_Allocate_aligned_with_boundary>
   * If this fails then return a NULL pointer.                        
   */                                                                 
                                                                      
  return_this = _Protected_heap_Allocate( RTEMS_Malloc_Heap, size );  
                                                                      
  if ( !return_this ) {                                               
   4acc4:	4fef 0010      	lea %sp@(16),%sp                            
   4acc8:	2400           	movel %d0,%d2                               
   4acca:	675e           	beqs 4ad2a <malloc+0x9e>                    
    if (rtems_malloc_sbrk_helpers)                                    
      return_this = (*rtems_malloc_sbrk_helpers->extend)( size );     
    if ( !return_this ) {                                             
      errno = ENOMEM;                                                 
      return (void *) 0;                                              
   4accc:	2800           	movel %d0,%d4                               
  }                                                                   
                                                                      
  /*                                                                  
   *  If the user wants us to dirty the allocated memory, then do it. 
   */                                                                 
  if ( rtems_malloc_dirty_helper )                                    
   4acce:	2079 0005 ddae 	moveal 5ddae <rtems_malloc_dirty_helper>,%a0
   4acd4:	4a88           	tstl %a0                                    
   4acd6:	670a           	beqs 4ace2 <malloc+0x56>                    
    (*rtems_malloc_dirty_helper)( return_this, size );                
   4acd8:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4acda:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4acdc:	2050           	moveal %a0@,%a0                             <== NOT EXECUTED
   4acde:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4ace0:	508f           	addql #8,%sp                                <== NOT EXECUTED
                                                                      
  /*                                                                  
   *  If configured, update the statistics                            
   */                                                                 
  if ( rtems_malloc_statistics_helpers )                              
   4ace2:	2079 0005 dda6 	moveal 5dda6 <rtems_malloc_statistics_helpers>,%a0
   4ace8:	4a88           	tstl %a0                                    
   4acea:	6730           	beqs 4ad1c <malloc+0x90>                    
    (*rtems_malloc_statistics_helpers->at_malloc)(return_this);       
   4acec:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4acee:	2068 0004      	moveal %a0@(4),%a0                          <== NOT EXECUTED
   4acf2:	2404           	movel %d4,%d2                               <== NOT EXECUTED
   4acf4:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4acf6:	588f           	addql #4,%sp                                <== NOT EXECUTED
    if (rtems_malloc_boundary_helpers)                                
      (*rtems_malloc_boundary_helpers->at_malloc)(return_this, size); 
  #endif                                                              
                                                                      
  return return_this;                                                 
}                                                                     
   4acf8:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   4acfa:	4cee 001c fff4 	moveml %fp@(-12),%d2-%d4                    <== NOT EXECUTED
   4ad00:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4ad02:	4e75           	rts                                         <== NOT EXECUTED
    return (void *) 0;                                                
                                                                      
  /*                                                                  
   *  Do not attempt to allocate memory if not in correct system state.
   */                                                                 
  if ( _System_state_Is_up(_System_state_Get()) &&                    
   4ad04:	4eb9 0004 abf0 	jsr 4abf0 <malloc_is_system_state_OK>       
   4ad0a:	4a00           	tstb %d0                                    
   4ad0c:	66a4           	bnes 4acb2 <malloc+0x26>                    
                                                                      
  /*                                                                  
   *  If configured, update the statistics                            
   */                                                                 
  if ( rtems_malloc_statistics_helpers )                              
    (*rtems_malloc_statistics_helpers->at_malloc)(return_this);       
   4ad0e:	4282           	clrl %d2                                    <== NOT EXECUTED
    if (rtems_malloc_boundary_helpers)                                
      (*rtems_malloc_boundary_helpers->at_malloc)(return_this, size); 
  #endif                                                              
                                                                      
  return return_this;                                                 
}                                                                     
   4ad10:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   4ad12:	4cee 001c fff4 	moveml %fp@(-12),%d2-%d4                    <== NOT EXECUTED
   4ad18:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4ad1a:	4e75           	rts                                         <== NOT EXECUTED
    (*rtems_malloc_dirty_helper)( return_this, size );                
                                                                      
  /*                                                                  
   *  If configured, update the statistics                            
   */                                                                 
  if ( rtems_malloc_statistics_helpers )                              
   4ad1c:	2404           	movel %d4,%d2                               
    if (rtems_malloc_boundary_helpers)                                
      (*rtems_malloc_boundary_helpers->at_malloc)(return_this, size); 
  #endif                                                              
                                                                      
  return return_this;                                                 
}                                                                     
   4ad1e:	2002           	movel %d2,%d0                               
   4ad20:	4cee 001c fff4 	moveml %fp@(-12),%d2-%d4                    
   4ad26:	4e5e           	unlk %fp                                    
   4ad28:	4e75           	rts                                         
   */                                                                 
                                                                      
  return_this = _Protected_heap_Allocate( RTEMS_Malloc_Heap, size );  
                                                                      
  if ( !return_this ) {                                               
    if (rtems_malloc_sbrk_helpers)                                    
   4ad2a:	2079 0005 ddaa 	moveal 5ddaa <rtems_malloc_sbrk_helpers>,%a0
   4ad30:	4a88           	tstl %a0                                    
   4ad32:	670e           	beqs 4ad42 <malloc+0xb6>                    
      return_this = (*rtems_malloc_sbrk_helpers->extend)( size );     
   4ad34:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4ad36:	2068 0004      	moveal %a0@(4),%a0                          <== NOT EXECUTED
   4ad3a:	4e90           	jsr %a0@                                    <== NOT EXECUTED
    if ( !return_this ) {                                             
   4ad3c:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  return_this = _Protected_heap_Allocate( RTEMS_Malloc_Heap, size );  
                                                                      
  if ( !return_this ) {                                               
    if (rtems_malloc_sbrk_helpers)                                    
      return_this = (*rtems_malloc_sbrk_helpers->extend)( size );     
   4ad3e:	2800           	movel %d0,%d4                               <== NOT EXECUTED
    if ( !return_this ) {                                             
   4ad40:	668c           	bnes 4acce <malloc+0x42>                    <== NOT EXECUTED
      errno = ENOMEM;                                                 
   4ad42:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   4ad48:	2040           	moveal %d0,%a0                              
   4ad4a:	700c           	moveq #12,%d0                               
   4ad4c:	2080           	movel %d0,%a0@                              
    if (rtems_malloc_boundary_helpers)                                
      (*rtems_malloc_boundary_helpers->at_malloc)(return_this, size); 
  #endif                                                              
                                                                      
  return return_this;                                                 
}                                                                     
   4ad4e:	2002           	movel %d2,%d0                               
   4ad50:	4cee 001c fff4 	moveml %fp@(-12),%d2-%d4                    
   4ad56:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      
0004ac30 <malloc_deferred_free>:                                      
}                                                                     
                                                                      
void malloc_deferred_free(                                            
  void *pointer                                                       
)                                                                     
{                                                                     
   4ac30:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4ac34:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4ac38:	4879 0005 f41a 	pea 5f41a <RTEMS_Malloc_GC_list>            <== NOT EXECUTED
   4ac3e:	4eb9 0004 6798 	jsr 46798 <_Chain_Append>                   <== NOT EXECUTED
   4ac44:	508f           	addql #8,%sp                                <== NOT EXECUTED
  rtems_chain_append(&RTEMS_Malloc_GC_list, (rtems_chain_node *)pointer);
}                                                                     
   4ac46:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004ac4a <malloc_deferred_frees_process>:                             
{                                                                     
  rtems_chain_initialize_empty(&RTEMS_Malloc_GC_list);                
}                                                                     
                                                                      
void malloc_deferred_frees_process(void)                              
{                                                                     
   4ac4a:	4e56 0000      	linkw %fp,#0                                
   4ac4e:	2f0b           	movel %a3,%sp@-                             
                                                                      
  /*                                                                  
   *  If some free's have been deferred, then do them now.            
   */                                                                 
  while ((to_be_freed = rtems_chain_get(&RTEMS_Malloc_GC_list)) != NULL)
    free(to_be_freed);                                                
   4ac50:	47f9 0004 a6f4 	lea 4a6f4 <free>,%a3                        
{                                                                     
  rtems_chain_initialize_empty(&RTEMS_Malloc_GC_list);                
}                                                                     
                                                                      
void malloc_deferred_frees_process(void)                              
{                                                                     
   4ac56:	2f0a           	movel %a2,%sp@-                             
 */                                                                   
RTEMS_INLINE_ROUTINE rtems_chain_node *rtems_chain_get(               
  rtems_chain_control *the_chain                                      
)                                                                     
{                                                                     
  return _Chain_Get( the_chain );                                     
   4ac58:	4879 0005 f41a 	pea 5f41a <RTEMS_Malloc_GC_list>            
   4ac5e:	45f9 0004 b9c0 	lea 4b9c0 <_Chain_Get>,%a2                  
   4ac64:	4e92           	jsr %a2@                                    
  rtems_chain_node  *to_be_freed;                                     
                                                                      
  /*                                                                  
   *  If some free's have been deferred, then do them now.            
   */                                                                 
  while ((to_be_freed = rtems_chain_get(&RTEMS_Malloc_GC_list)) != NULL)
   4ac66:	588f           	addql #4,%sp                                
   4ac68:	4a80           	tstl %d0                                    
   4ac6a:	6714           	beqs 4ac80 <malloc_deferred_frees_process+0x36>
    free(to_be_freed);                                                
   4ac6c:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4ac6e:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   4ac70:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4ac72:	4879 0005 f41a 	pea 5f41a <RTEMS_Malloc_GC_list>            <== NOT EXECUTED
   4ac78:	4e92           	jsr %a2@                                    <== NOT EXECUTED
  rtems_chain_node  *to_be_freed;                                     
                                                                      
  /*                                                                  
   *  If some free's have been deferred, then do them now.            
   */                                                                 
  while ((to_be_freed = rtems_chain_get(&RTEMS_Malloc_GC_list)) != NULL)
   4ac7a:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4ac7c:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4ac7e:	66ec           	bnes 4ac6c <malloc_deferred_frees_process+0x22><== NOT EXECUTED
    free(to_be_freed);                                                
}                                                                     
   4ac80:	246e fff8      	moveal %fp@(-8),%a2                         
   4ac84:	266e fffc      	moveal %fp@(-4),%a3                         
   4ac88:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004abf0 <malloc_is_system_state_OK>:                                 
#include "malloc_p.h"                                                 
                                                                      
rtems_chain_control RTEMS_Malloc_GC_list;                             
                                                                      
bool malloc_is_system_state_OK(void)                                  
{                                                                     
   4abf0:	4e56 0000      	linkw %fp,#0                                
  if ( _Thread_Dispatch_disable_level > 0 )                           
   4abf4:	2039 0005 ef78 	movel 5ef78 <_Thread_Dispatch_disable_level>,%d0
   4abfa:	660e           	bnes 4ac0a <malloc_is_system_state_OK+0x1a> 
    return false;                                                     
                                                                      
  if ( _ISR_Nest_level > 0 )                                          
   4abfc:	2039 0005 f012 	movel 5f012 <_ISR_Nest_level>,%d0           
                                                                      
#include "malloc_p.h"                                                 
                                                                      
rtems_chain_control RTEMS_Malloc_GC_list;                             
                                                                      
bool malloc_is_system_state_OK(void)                                  
   4ac02:	57c0           	seq %d0                                     
                                                                      
  if ( _ISR_Nest_level > 0 )                                          
    return false;                                                     
                                                                      
  return true;                                                        
}                                                                     
   4ac04:	4e5e           	unlk %fp                                    
                                                                      
#include "malloc_p.h"                                                 
                                                                      
rtems_chain_control RTEMS_Malloc_GC_list;                             
                                                                      
bool malloc_is_system_state_OK(void)                                  
   4ac06:	4480           	negl %d0                                    
                                                                      
  if ( _ISR_Nest_level > 0 )                                          
    return false;                                                     
                                                                      
  return true;                                                        
}                                                                     
   4ac08:	4e75           	rts                                         
   4ac0a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
rtems_chain_control RTEMS_Malloc_GC_list;                             
                                                                      
bool malloc_is_system_state_OK(void)                                  
{                                                                     
  if ( _Thread_Dispatch_disable_level > 0 )                           
   4ac0c:	4200           	clrb %d0                                    <== NOT EXECUTED
                                                                      
  if ( _ISR_Nest_level > 0 )                                          
    return false;                                                     
                                                                      
  return true;                                                        
}                                                                     
                                                                      
00052424 <memfile_check_rmnod>:                                       
                                                                      
  return memfile_check_rmnod( the_jnode );                            
}                                                                     
                                                                      
                                                                      
int  memfile_check_rmnod( IMFS_jnode_t *the_jnode ){                  
   52424:	4e56 0000      	linkw %fp,#0                                
   52428:	2f0a           	movel %a2,%sp@-                             
   5242a:	246e 0008      	moveal %fp@(8),%a2                          
                                                                      
  /*                                                                  
   * The file cannot be open and the link must be less than 1 to free.
   */                                                                 
                                                                      
  if ( !rtems_libio_is_file_open( the_jnode ) && (the_jnode->st_nlink < 1) ) {
   5242e:	2f0a           	movel %a2,%sp@-                             
   52430:	4eb9 0004 ff3a 	jsr 4ff3a <rtems_libio_is_file_open>        
   52436:	588f           	addql #4,%sp                                
   52438:	4a80           	tstl %d0                                    
   5243a:	662e           	bnes 5246a <memfile_check_rmnod+0x46>       
   5243c:	4a6a 0032      	tstw %a2@(50)                               
   52440:	6628           	bnes 5246a <memfile_check_rmnod+0x46>       
                                                                      
    /*                                                                
     * Is the rtems_filesystem_current is this node?                  
     */                                                               
                                                                      
    if ( rtems_filesystem_current.node_access == the_jnode )          
   52442:	2079 0006 381c 	moveal 6381c <rtems_current_user_env>,%a0   
   52448:	b5e8 0004      	cmpal %a0@(4),%a2                           
   5244c:	6726           	beqs 52474 <memfile_check_rmnod+0x50>       
       rtems_filesystem_current.node_access = NULL;                   
                                                                      
    /*                                                                
     * Free memory associated with a memory file.                     
     */                                                               
    if (the_jnode->type != IMFS_LINEAR_FILE)                          
   5244e:	7006           	moveq #6,%d0                                
   52450:	b0aa 0048      	cmpl %a2@(72),%d0                           
   52454:	670a           	beqs 52460 <memfile_check_rmnod+0x3c>       
      IMFS_memfile_remove( the_jnode );                               
   52456:	2f0a           	movel %a2,%sp@-                             
   52458:	4eb9 0005 22d0 	jsr 522d0 <IMFS_memfile_remove>             
   5245e:	588f           	addql #4,%sp                                
                                                                      
    free( the_jnode );                                                
   52460:	2f0a           	movel %a2,%sp@-                             
   52462:	4eb9 0004 3fd0 	jsr 43fd0 <free>                            
   52468:	588f           	addql #4,%sp                                
  }                                                                   
                                                                      
  return 0;                                                           
}                                                                     
   5246a:	246e fffc      	moveal %fp@(-4),%a2                         
   5246e:	4280           	clrl %d0                                    
   52470:	4e5e           	unlk %fp                                    
   52472:	4e75           	rts                                         
    /*                                                                
     * Is the rtems_filesystem_current is this node?                  
     */                                                               
                                                                      
    if ( rtems_filesystem_current.node_access == the_jnode )          
       rtems_filesystem_current.node_access = NULL;                   
   52474:	42a8 0004      	clrl %a0@(4)                                <== NOT EXECUTED
                                                                      
    /*                                                                
     * Free memory associated with a memory file.                     
     */                                                               
    if (the_jnode->type != IMFS_LINEAR_FILE)                          
   52478:	7006           	moveq #6,%d0                                <== NOT EXECUTED
   5247a:	b0aa 0048      	cmpl %a2@(72),%d0                           <== NOT EXECUTED
   5247e:	66d6           	bnes 52456 <memfile_check_rmnod+0x32>       <== NOT EXECUTED
   52480:	60de           	bras 52460 <memfile_check_rmnod+0x3c>       <== NOT EXECUTED
                                                                      
0005221e <memfile_free_blocks_in_table>:                              
                                                                      
void memfile_free_blocks_in_table(                                    
  block_p **block_table,                                              
  int       entries                                                   
)                                                                     
{                                                                     
   5221e:	4e56 ffec      	linkw %fp,#-20                              
   52222:	48d7 1c0c      	moveml %d2-%d3/%a2-%a4,%sp@                 
   52226:	286e 0008      	moveal %fp@(8),%a4                          
   5222a:	262e 000c      	movel %fp@(12),%d3                          
                                                                      
  /*                                                                  
   *  Perform internal consistency checks                             
   */                                                                 
                                                                      
  assert( block_table );                                              
   5222e:	4a8c           	tstl %a4                                    
   52230:	6736           	beqs 52268 <memfile_free_blocks_in_table+0x4a>
                                                                      
  /*                                                                  
   *  Now go through all the slots in the table and free the memory.  
   */                                                                 
                                                                      
  b = *block_table;                                                   
   52232:	2454           	moveal %a4@,%a2                             
   52234:	47f9 0005 1fe2 	lea 51fe2 <memfile_free_block>,%a3          
                                                                      
  for ( i=0 ; i<entries ; i++ ) {                                     
   5223a:	4a83           	tstl %d3                                    
   5223c:	6f18           	bles 52256 <memfile_free_blocks_in_table+0x38>
   5223e:	4282           	clrl %d2                                    
    if ( b[i] ) {                                                     
   52240:	2012           	movel %a2@,%d0                              
   52242:	6708           	beqs 5224c <memfile_free_blocks_in_table+0x2e>
      memfile_free_block( b[i] );                                     
   52244:	2f00           	movel %d0,%sp@-                             
   52246:	4e93           	jsr %a3@                                    
      b[i] = 0;                                                       
   52248:	588f           	addql #4,%sp                                
   5224a:	4292           	clrl %a2@                                   
   *  Now go through all the slots in the table and free the memory.  
   */                                                                 
                                                                      
  b = *block_table;                                                   
                                                                      
  for ( i=0 ; i<entries ; i++ ) {                                     
   5224c:	5282           	addql #1,%d2                                
   5224e:	588a           	addql #4,%a2                                
   52250:	b483           	cmpl %d3,%d2                                
   52252:	6dec           	blts 52240 <memfile_free_blocks_in_table+0x22>
   52254:	2454           	moveal %a4@,%a2                             
  /*                                                                  
   *  Now that all the blocks in the block table are free, we can     
   *  free the block table itself.                                    
   */                                                                 
                                                                      
  memfile_free_block( *block_table );                                 
   52256:	2f0a           	movel %a2,%sp@-                             
   52258:	4e93           	jsr %a3@                                    
  *block_table = 0;                                                   
   5225a:	588f           	addql #4,%sp                                
   5225c:	4294           	clrl %a4@                                   
}                                                                     
   5225e:	4cee 1c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a4            
   52264:	4e5e           	unlk %fp                                    
   52266:	4e75           	rts                                         
                                                                      
  /*                                                                  
   *  Perform internal consistency checks                             
   */                                                                 
                                                                      
  assert( block_table );                                              
   52268:	4879 0006 2c04 	pea 62c04 <CSWTCH.8+0x84>                   <== NOT EXECUTED
   5226e:	4879 0006 2cc2 	pea 62cc2 <__FUNCTION__.6063>               <== NOT EXECUTED
   52274:	4878 01b3      	pea 1b3 <DBL_MANT_DIG+0x17e>                <== NOT EXECUTED
   52278:	4879 0006 2b9a 	pea 62b9a <CSWTCH.8+0x1a>                   <== NOT EXECUTED
   5227e:	4eb9 0004 fc28 	jsr 4fc28 <__assert_func>                   <== NOT EXECUTED
                                                                      
000526e4 <memfile_ftruncate>:                                         
                                                                      
int memfile_ftruncate(                                                
  rtems_libio_t        *iop,                                          
  rtems_off64_t         length                                        
)                                                                     
{                                                                     
   526e4:	4e56 ffec      	linkw %fp,#-20                              
   526e8:	206e 0008      	moveal %fp@(8),%a0                          
   526ec:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
  IMFS_jnode_t   *the_jnode;                                          
                                                                      
  the_jnode = iop->file_info;                                         
   526f0:	2468 0038      	moveal %a0@(56),%a2                         
                                                                      
int memfile_ftruncate(                                                
  rtems_libio_t        *iop,                                          
  rtems_off64_t         length                                        
)                                                                     
{                                                                     
   526f4:	202e 000c      	movel %fp@(12),%d0                          
   526f8:	222e 0010      	movel %fp@(16),%d1                          
   *  POSIX 1003.1b does not specify what happens if you truncate a file
   *  and the new length is greater than the current size.  We treat this
   *  as an extend operation.                                         
   */                                                                 
                                                                      
  if ( length > the_jnode->info.file.size )                           
   526fc:	242a 004c      	movel %a2@(76),%d2                          
   52700:	262a 0050      	movel %a2@(80),%d3                          
   52704:	9681           	subl %d1,%d3                                
   52706:	9580           	subxl %d0,%d2                               
   52708:	6d30           	blts 5273a <memfile_ftruncate+0x56>         
   *  The in-memory files do not currently reclaim memory until the file is
   *  deleted.  So we leave the previously allocated blocks in place for
   *  future use and just set the length.                             
   */                                                                 
                                                                      
  the_jnode->info.file.size = length;                                 
   5270a:	2540 004c      	movel %d0,%a2@(76)                          
   5270e:	2541 0050      	movel %d1,%a2@(80)                          
  iop->size = the_jnode->info.file.size;                              
   52712:	2140 0004      	movel %d0,%a0@(4)                           
   52716:	2141 0008      	movel %d1,%a0@(8)                           
                                                                      
  IMFS_update_atime( the_jnode );                                     
   5271a:	42a7           	clrl %sp@-                                  
   5271c:	486e fff8      	pea %fp@(-8)                                
   52720:	4eb9 0004 4060 	jsr 44060 <gettimeofday>                    
   52726:	256e fff8 003c 	movel %fp@(-8),%a2@(60)                     
                                                                      
  return 0;                                                           
   5272c:	508f           	addql #8,%sp                                
   */                                                                 
                                                                      
  the_jnode->info.file.size = length;                                 
  iop->size = the_jnode->info.file.size;                              
                                                                      
  IMFS_update_atime( the_jnode );                                     
   5272e:	4280           	clrl %d0                                    
                                                                      
  return 0;                                                           
}                                                                     
   52730:	4cee 040c ffec 	moveml %fp@(-20),%d2-%d3/%a2                
   52736:	4e5e           	unlk %fp                                    
   52738:	4e75           	rts                                         
   *  and the new length is greater than the current size.  We treat this
   *  as an extend operation.                                         
   */                                                                 
                                                                      
  if ( length > the_jnode->info.file.size )                           
    return IMFS_memfile_extend( the_jnode, length );                  
   5273a:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   5273c:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   5273e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   52740:	4eb9 0005 2592 	jsr 52592 <IMFS_memfile_extend>             <== NOT EXECUTED
   52746:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
  iop->size = the_jnode->info.file.size;                              
                                                                      
  IMFS_update_atime( the_jnode );                                     
                                                                      
  return 0;                                                           
}                                                                     
   5274a:	4cee 040c ffec 	moveml %fp@(-20),%d2-%d3/%a2                <== NOT EXECUTED
   52750:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00052754 <memfile_lseek>:                                             
{                                                                     
  IMFS_jnode_t   *the_jnode;                                          
                                                                      
  the_jnode = iop->file_info;                                         
                                                                      
  if (the_jnode->type == IMFS_LINEAR_FILE) {                          
   52754:	7006           	moveq #6,%d0                                
rtems_off64_t memfile_lseek(                                          
  rtems_libio_t   *iop,                                               
  rtems_off64_t    offset,                                            
  int              whence                                             
)                                                                     
{                                                                     
   52756:	4e56 ffe8      	linkw %fp,#-24                              
   5275a:	48d7 0c3c      	moveml %d2-%d5/%a2-%a3,%sp@                 
   5275e:	246e 0008      	moveal %fp@(8),%a2                          
  IMFS_jnode_t   *the_jnode;                                          
                                                                      
  the_jnode = iop->file_info;                                         
   52762:	266a 0038      	moveal %a2@(56),%a3                         
                                                                      
  if (the_jnode->type == IMFS_LINEAR_FILE) {                          
   52766:	b0ab 0048      	cmpl %a3@(72),%d0                           
   5276a:	673e           	beqs 527aa <memfile_lseek+0x56>             
    if (iop->offset > the_jnode->info.linearfile.size)                
      iop->offset = the_jnode->info.linearfile.size;                  
  }                                                                   
  else {  /* Must be a block file (IMFS_MEMORY_FILE). */              
    if (IMFS_memfile_extend( the_jnode, iop->offset ))                
   5276c:	2f2a 0010      	movel %a2@(16),%sp@-                        
   52770:	2f2a 000c      	movel %a2@(12),%sp@-                        
   52774:	2f0b           	movel %a3,%sp@-                             
   52776:	4eb9 0005 2592 	jsr 52592 <IMFS_memfile_extend>             
   5277c:	4fef 000c      	lea %sp@(12),%sp                            
   52780:	4a80           	tstl %d0                                    
   52782:	6668           	bnes 527ec <memfile_lseek+0x98>             
      rtems_set_errno_and_return_minus_one( ENOSPC );                 
                                                                      
    iop->size = the_jnode->info.file.size;                            
   52784:	202b 004c      	movel %a3@(76),%d0                          
   52788:	222b 0050      	movel %a3@(80),%d1                          
   5278c:	242a 000c      	movel %a2@(12),%d2                          
   52790:	262a 0010      	movel %a2@(16),%d3                          
   52794:	2540 0004      	movel %d0,%a2@(4)                           
   52798:	2541 0008      	movel %d1,%a2@(8)                           
  }                                                                   
  return iop->offset;                                                 
}                                                                     
   5279c:	2203           	movel %d3,%d1                               
   5279e:	2002           	movel %d2,%d0                               
   527a0:	4cee 0c3c ffe8 	moveml %fp@(-24),%d2-%d5/%a2-%a3            
   527a6:	4e5e           	unlk %fp                                    
   527a8:	4e75           	rts                                         
  IMFS_jnode_t   *the_jnode;                                          
                                                                      
  the_jnode = iop->file_info;                                         
                                                                      
  if (the_jnode->type == IMFS_LINEAR_FILE) {                          
    if (iop->offset > the_jnode->info.linearfile.size)                
   527aa:	202a 000c      	movel %a2@(12),%d0                          <== NOT EXECUTED
   527ae:	222a 0010      	movel %a2@(16),%d1                          <== NOT EXECUTED
   527b2:	242b 004c      	movel %a3@(76),%d2                          <== NOT EXECUTED
   527b6:	262b 0050      	movel %a3@(80),%d3                          <== NOT EXECUTED
   527ba:	2800           	movel %d0,%d4                               <== NOT EXECUTED
   527bc:	2a01           	movel %d1,%d5                               <== NOT EXECUTED
   527be:	9a83           	subl %d3,%d5                                <== NOT EXECUTED
   527c0:	9982           	subxl %d2,%d4                               <== NOT EXECUTED
   527c2:	6e12           	bgts 527d6 <memfile_lseek+0x82>             <== NOT EXECUTED
   527c4:	2400           	movel %d0,%d2                               <== NOT EXECUTED
   527c6:	2601           	movel %d1,%d3                               <== NOT EXECUTED
      rtems_set_errno_and_return_minus_one( ENOSPC );                 
                                                                      
    iop->size = the_jnode->info.file.size;                            
  }                                                                   
  return iop->offset;                                                 
}                                                                     
   527c8:	2203           	movel %d3,%d1                               <== NOT EXECUTED
   527ca:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   527cc:	4cee 0c3c ffe8 	moveml %fp@(-24),%d2-%d5/%a2-%a3            <== NOT EXECUTED
   527d2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   527d4:	4e75           	rts                                         <== NOT EXECUTED
   527d6:	2203           	movel %d3,%d1                               <== NOT EXECUTED
   527d8:	2002           	movel %d2,%d0                               <== NOT EXECUTED
                                                                      
  the_jnode = iop->file_info;                                         
                                                                      
  if (the_jnode->type == IMFS_LINEAR_FILE) {                          
    if (iop->offset > the_jnode->info.linearfile.size)                
      iop->offset = the_jnode->info.linearfile.size;                  
   527da:	2542 000c      	movel %d2,%a2@(12)                          <== NOT EXECUTED
   527de:	2543 0010      	movel %d3,%a2@(16)                          <== NOT EXECUTED
      rtems_set_errno_and_return_minus_one( ENOSPC );                 
                                                                      
    iop->size = the_jnode->info.file.size;                            
  }                                                                   
  return iop->offset;                                                 
}                                                                     
   527e2:	4cee 0c3c ffe8 	moveml %fp@(-24),%d2-%d5/%a2-%a3            <== NOT EXECUTED
   527e8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   527ea:	4e75           	rts                                         <== NOT EXECUTED
    if (iop->offset > the_jnode->info.linearfile.size)                
      iop->offset = the_jnode->info.linearfile.size;                  
  }                                                                   
  else {  /* Must be a block file (IMFS_MEMORY_FILE). */              
    if (IMFS_memfile_extend( the_jnode, iop->offset ))                
      rtems_set_errno_and_return_minus_one( ENOSPC );                 
   527ec:	4eb9 0005 43b8 	jsr 543b8 <__errno>                         <== NOT EXECUTED
   527f2:	761c           	moveq #28,%d3                               <== NOT EXECUTED
   527f4:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   527f6:	2083           	movel %d3,%a0@                              <== NOT EXECUTED
   527f8:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
   527fa:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
                                                                      
    iop->size = the_jnode->info.file.size;                            
  }                                                                   
  return iop->offset;                                                 
}                                                                     
   527fc:	2203           	movel %d3,%d1                               <== NOT EXECUTED
   527fe:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   52800:	4cee 0c3c ffe8 	moveml %fp@(-24),%d2-%d5/%a2-%a3            <== NOT EXECUTED
   52806:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00052ad4 <memfile_open>:                                              
  rtems_libio_t *iop,                                                 
  const char    *pathname,                                            
  uint32_t       flag,                                                
  uint32_t       mode                                                 
)                                                                     
{                                                                     
   52ad4:	4e56 fff0      	linkw %fp,#-16                              
   52ad8:	48d7 0c0c      	moveml %d2-%d3/%a2-%a3,%sp@                 
   52adc:	246e 0008      	moveal %fp@(8),%a2                          
  the_jnode = iop->file_info;                                         
                                                                      
  /*                                                                  
   * Perform 'copy on write' for linear files                         
   */                                                                 
  if ((iop->flags & (LIBIO_FLAGS_WRITE | LIBIO_FLAGS_APPEND))         
   52ae0:	202a 0014      	movel %a2@(20),%d0                          
   52ae4:	2200           	movel %d0,%d1                               
   52ae6:	0281 0000 0204 	andil #516,%d1                              
  uint32_t       mode                                                 
)                                                                     
{                                                                     
  IMFS_jnode_t  *the_jnode;                                           
                                                                      
  the_jnode = iop->file_info;                                         
   52aec:	266a 0038      	moveal %a2@(56),%a3                         
                                                                      
  /*                                                                  
   * Perform 'copy on write' for linear files                         
   */                                                                 
  if ((iop->flags & (LIBIO_FLAGS_WRITE | LIBIO_FLAGS_APPEND))         
   52af0:	6708           	beqs 52afa <memfile_open+0x26>              
   && (the_jnode->type == IMFS_LINEAR_FILE)) {                        
   52af2:	7206           	moveq #6,%d1                                
   52af4:	b2ab 0048      	cmpl %a3@(72),%d1                           
   52af8:	6732           	beqs 52b2c <memfile_open+0x58>              
    the_jnode->type = IMFS_MEMORY_FILE;                               
    the_jnode->info.file.size            = 0;                         
    the_jnode->info.file.indirect        = 0;                         
    the_jnode->info.file.doubly_indirect = 0;                         
    the_jnode->info.file.triply_indirect = 0;                         
    if ((count != 0)                                                  
   52afa:	222b 004c      	movel %a3@(76),%d1                          
   52afe:	242b 0050      	movel %a3@(80),%d2                          
     && (IMFS_memfile_write(the_jnode, 0, buffer, count) == -1))      
        return -1;                                                    
  }                                                                   
  if (iop->flags & LIBIO_FLAGS_APPEND)                                
   52b02:	0800 0009      	btst #9,%d0                                 
   52b06:	6710           	beqs 52b18 <memfile_open+0x44>              
    iop->offset = the_jnode->info.file.size;                          
   52b08:	2541 000c      	movel %d1,%a2@(12)                          
   52b0c:	2542 0010      	movel %d2,%a2@(16)                          
   52b10:	222b 004c      	movel %a3@(76),%d1                          
   52b14:	242b 0050      	movel %a3@(80),%d2                          
                                                                      
  iop->size = the_jnode->info.file.size;                              
   52b18:	4280           	clrl %d0                                    
   52b1a:	2541 0004      	movel %d1,%a2@(4)                           
   52b1e:	2542 0008      	movel %d2,%a2@(8)                           
  return 0;                                                           
}                                                                     
   52b22:	4cee 0c0c fff0 	moveml %fp@(-16),%d2-%d3/%a2-%a3            
   52b28:	4e5e           	unlk %fp                                    
   52b2a:	4e75           	rts                                         
  /*                                                                  
   * Perform 'copy on write' for linear files                         
   */                                                                 
  if ((iop->flags & (LIBIO_FLAGS_WRITE | LIBIO_FLAGS_APPEND))         
   && (the_jnode->type == IMFS_LINEAR_FILE)) {                        
    uint32_t   count = the_jnode->info.linearfile.size;               
   52b2c:	202b 0050      	movel %a3@(80),%d0                          <== NOT EXECUTED
    const unsigned char *buffer = the_jnode->info.linearfile.direct;  
                                                                      
    the_jnode->type = IMFS_MEMORY_FILE;                               
    the_jnode->info.file.size            = 0;                         
   52b30:	4282           	clrl %d2                                    <== NOT EXECUTED
   52b32:	4283           	clrl %d3                                    <== NOT EXECUTED
   * Perform 'copy on write' for linear files                         
   */                                                                 
  if ((iop->flags & (LIBIO_FLAGS_WRITE | LIBIO_FLAGS_APPEND))         
   && (the_jnode->type == IMFS_LINEAR_FILE)) {                        
    uint32_t   count = the_jnode->info.linearfile.size;               
    const unsigned char *buffer = the_jnode->info.linearfile.direct;  
   52b34:	222b 0054      	movel %a3@(84),%d1                          <== NOT EXECUTED
                                                                      
    the_jnode->type = IMFS_MEMORY_FILE;                               
    the_jnode->info.file.size            = 0;                         
   52b38:	2742 004c      	movel %d2,%a3@(76)                          <== NOT EXECUTED
   52b3c:	2743 0050      	movel %d3,%a3@(80)                          <== NOT EXECUTED
  if ((iop->flags & (LIBIO_FLAGS_WRITE | LIBIO_FLAGS_APPEND))         
   && (the_jnode->type == IMFS_LINEAR_FILE)) {                        
    uint32_t   count = the_jnode->info.linearfile.size;               
    const unsigned char *buffer = the_jnode->info.linearfile.direct;  
                                                                      
    the_jnode->type = IMFS_MEMORY_FILE;                               
   52b40:	7605           	moveq #5,%d3                                <== NOT EXECUTED
    the_jnode->info.file.size            = 0;                         
    the_jnode->info.file.indirect        = 0;                         
   52b42:	42ab 0054      	clrl %a3@(84)                               <== NOT EXECUTED
  if ((iop->flags & (LIBIO_FLAGS_WRITE | LIBIO_FLAGS_APPEND))         
   && (the_jnode->type == IMFS_LINEAR_FILE)) {                        
    uint32_t   count = the_jnode->info.linearfile.size;               
    const unsigned char *buffer = the_jnode->info.linearfile.direct;  
                                                                      
    the_jnode->type = IMFS_MEMORY_FILE;                               
   52b46:	2743 0048      	movel %d3,%a3@(72)                          <== NOT EXECUTED
    the_jnode->info.file.size            = 0;                         
    the_jnode->info.file.indirect        = 0;                         
    the_jnode->info.file.doubly_indirect = 0;                         
   52b4a:	42ab 0058      	clrl %a3@(88)                               <== NOT EXECUTED
    the_jnode->info.file.triply_indirect = 0;                         
   52b4e:	42ab 005c      	clrl %a3@(92)                               <== NOT EXECUTED
    if ((count != 0)                                                  
   52b52:	4a80           	tstl %d0                                    <== NOT EXECUTED
   52b54:	6610           	bnes 52b66 <memfile_open+0x92>              <== NOT EXECUTED
   52b56:	202a 0014      	movel %a2@(20),%d0                          <== NOT EXECUTED
   52b5a:	4281           	clrl %d1                                    <== NOT EXECUTED
   52b5c:	4282           	clrl %d2                                    <== NOT EXECUTED
     && (IMFS_memfile_write(the_jnode, 0, buffer, count) == -1))      
        return -1;                                                    
  }                                                                   
  if (iop->flags & LIBIO_FLAGS_APPEND)                                
   52b5e:	0800 0009      	btst #9,%d0                                 <== NOT EXECUTED
   52b62:	67b4           	beqs 52b18 <memfile_open+0x44>              <== NOT EXECUTED
   52b64:	60a2           	bras 52b08 <memfile_open+0x34>              <== NOT EXECUTED
    the_jnode->info.file.size            = 0;                         
    the_jnode->info.file.indirect        = 0;                         
    the_jnode->info.file.doubly_indirect = 0;                         
    the_jnode->info.file.triply_indirect = 0;                         
    if ((count != 0)                                                  
     && (IMFS_memfile_write(the_jnode, 0, buffer, count) == -1))      
   52b66:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   52b68:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   52b6a:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   52b6c:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   52b6e:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   52b70:	4eb9 0005 280a 	jsr 5280a <IMFS_memfile_write>              <== NOT EXECUTED
    the_jnode->type = IMFS_MEMORY_FILE;                               
    the_jnode->info.file.size            = 0;                         
    the_jnode->info.file.indirect        = 0;                         
    the_jnode->info.file.doubly_indirect = 0;                         
    the_jnode->info.file.triply_indirect = 0;                         
    if ((count != 0)                                                  
   52b76:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   52b7a:	72ff           	moveq #-1,%d1                               <== NOT EXECUTED
   52b7c:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   52b7e:	6710           	beqs 52b90 <memfile_open+0xbc>              <== NOT EXECUTED
   52b80:	202a 0014      	movel %a2@(20),%d0                          <== NOT EXECUTED
   52b84:	222b 004c      	movel %a3@(76),%d1                          <== NOT EXECUTED
   52b88:	242b 0050      	movel %a3@(80),%d2                          <== NOT EXECUTED
   52b8c:	6000 ff74      	braw 52b02 <memfile_open+0x2e>              <== NOT EXECUTED
   52b90:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
  if (iop->flags & LIBIO_FLAGS_APPEND)                                
    iop->offset = the_jnode->info.file.size;                          
                                                                      
  iop->size = the_jnode->info.file.size;                              
  return 0;                                                           
}                                                                     
   52b92:	4cee 0c0c fff0 	moveml %fp@(-16),%d2-%d3/%a2-%a3            <== NOT EXECUTED
   52b98:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000429a8 <mknod>:                                                     
int mknod(                                                            
  const char *pathname,                                               
  mode_t      mode,                                                   
  dev_t       dev                                                     
)                                                                     
{                                                                     
   429a8:	4e56 ffdc      	linkw %fp,#-36                              
   429ac:	226e 0008      	moveal %fp@(8),%a1                          
   429b0:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
   429b4:	242e 000c      	movel %fp@(12),%d2                          
  rtems_filesystem_location_info_t    temp_loc;                       
  int                                 i;                              
  const char                         *name_start;                     
  int                                 result;                         
                                                                      
  if ( !(mode & (S_IFREG|S_IFCHR|S_IFBLK|S_IFIFO) ) )                 
   429b8:	2002           	movel %d2,%d0                               
   429ba:	0280 0000 f000 	andil #61440,%d0                            
   429c0:	6700 0108      	beqw 42aca <mknod+0x122>                    
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  rtems_filesystem_get_start_loc( pathname, &i, &temp_loc );          
   429c4:	762f           	moveq #47,%d3                               
   429c6:	1211           	moveb %a1@,%d1                              
   429c8:	1001           	moveb %d1,%d0                               
   429ca:	49c0           	extbl %d0                                   
   429cc:	b680           	cmpl %d0,%d3                                
   429ce:	670e           	beqs 429de <mknod+0x36>                     
   429d0:	163c 005c      	moveb #92,%d3                               
   429d4:	b680           	cmpl %d0,%d3                                
   429d6:	6706           	beqs 429de <mknod+0x36>                     
   429d8:	4a01           	tstb %d1                                    
   429da:	6600 0096      	bnew 42a72 <mknod+0xca>                     
   429de:	2079 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a0   
   429e4:	45ee ffe8      	lea %fp@(-24),%a2                           
   429e8:	7001           	moveq #1,%d0                                
   429ea:	24a8 0018      	movel %a0@(24),%a2@                         
   429ee:	2d68 001c ffec 	movel %a0@(28),%fp@(-20)                    
   429f4:	2d68 0020 fff0 	movel %a0@(32),%fp@(-16)                    
   429fa:	2d68 0024 fff4 	movel %a0@(36),%fp@(-12)                    
   42a00:	2d68 0028 fff8 	movel %a0@(40),%fp@(-8)                     
                                                                      
  if ( !temp_loc.ops->evalformake_h ) {                               
   42a06:	206e fff4      	moveal %fp@(-12),%a0                        
   42a0a:	2068 0004      	moveal %a0@(4),%a0                          
   42a0e:	4a88           	tstl %a0                                    
   42a10:	6700 008e      	beqw 42aa0 <mknod+0xf8>                     
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*temp_loc.ops->evalformake_h)(                            
   42a14:	486e fffc      	pea %fp@(-4)                                
   42a18:	2f0a           	movel %a2,%sp@-                             
   42a1a:	4871 0800      	pea %a1@(00000000,%d0:l)                    
   42a1e:	4e90           	jsr %a0@                                    
    &pathname[i],                                                     
    &temp_loc,                                                        
    &name_start                                                       
  );                                                                  
  if ( result != 0 )                                                  
   42a20:	4fef 000c      	lea %sp@(12),%sp                            
   42a24:	4a80           	tstl %d0                                    
   42a26:	6600 0094      	bnew 42abc <mknod+0x114>                    
    return -1;                                                        
                                                                      
  if ( !temp_loc.ops->mknod_h ) {                                     
   42a2a:	226e fff4      	moveal %fp@(-12),%a1                        
   42a2e:	2069 0014      	moveal %a1@(20),%a0                         
   42a32:	4a88           	tstl %a0                                    
   42a34:	6700 00ae      	beqw 42ae4 <mknod+0x13c>                    
    rtems_filesystem_freenode( &temp_loc );                           
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result =  (*temp_loc.ops->mknod_h)( name_start, mode, dev, &temp_loc );
   42a38:	2f0a           	movel %a2,%sp@-                             
   42a3a:	2f2e 0014      	movel %fp@(20),%sp@-                        
   42a3e:	2f2e 0010      	movel %fp@(16),%sp@-                        
   42a42:	2f02           	movel %d2,%sp@-                             
   42a44:	2f2e fffc      	movel %fp@(-4),%sp@-                        
   42a48:	4e90           	jsr %a0@                                    
                                                                      
  rtems_filesystem_freenode( &temp_loc );                             
   42a4a:	206e fff4      	moveal %fp@(-12),%a0                        
  if ( !temp_loc.ops->mknod_h ) {                                     
    rtems_filesystem_freenode( &temp_loc );                           
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result =  (*temp_loc.ops->mknod_h)( name_start, mode, dev, &temp_loc );
   42a4e:	2400           	movel %d0,%d2                               
                                                                      
  rtems_filesystem_freenode( &temp_loc );                             
   42a50:	4fef 0014      	lea %sp@(20),%sp                            
   42a54:	4a88           	tstl %a0                                    
   42a56:	670e           	beqs 42a66 <mknod+0xbe>                     
   42a58:	2068 001c      	moveal %a0@(28),%a0                         
   42a5c:	4a88           	tstl %a0                                    
   42a5e:	6706           	beqs 42a66 <mknod+0xbe>                     
   42a60:	2f0a           	movel %a2,%sp@-                             
   42a62:	4e90           	jsr %a0@                                    
   42a64:	588f           	addql #4,%sp                                
                                                                      
  return result;                                                      
}                                                                     
   42a66:	2002           	movel %d2,%d0                               
   42a68:	4cee 040c ffdc 	moveml %fp@(-36),%d2-%d3/%a2                
   42a6e:	4e5e           	unlk %fp                                    
   42a70:	4e75           	rts                                         
  int                                 result;                         
                                                                      
  if ( !(mode & (S_IFREG|S_IFCHR|S_IFBLK|S_IFIFO) ) )                 
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  rtems_filesystem_get_start_loc( pathname, &i, &temp_loc );          
   42a72:	2079 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a0   
   42a78:	45ee ffe8      	lea %fp@(-24),%a2                           
   42a7c:	5888           	addql #4,%a0                                
   42a7e:	4280           	clrl %d0                                    
   42a80:	2498           	movel %a0@+,%a2@                            
   42a82:	2d58 ffec      	movel %a0@+,%fp@(-20)                       
   42a86:	2d58 fff0      	movel %a0@+,%fp@(-16)                       
   42a8a:	2d58 fff4      	movel %a0@+,%fp@(-12)                       
   42a8e:	2d50 fff8      	movel %a0@,%fp@(-8)                         
                                                                      
  if ( !temp_loc.ops->evalformake_h ) {                               
   42a92:	206e fff4      	moveal %fp@(-12),%a0                        
   42a96:	2068 0004      	moveal %a0@(4),%a0                          
   42a9a:	4a88           	tstl %a0                                    
   42a9c:	6600 ff76      	bnew 42a14 <mknod+0x6c>                     
  if ( result != 0 )                                                  
    return -1;                                                        
                                                                      
  if ( !temp_loc.ops->mknod_h ) {                                     
    rtems_filesystem_freenode( &temp_loc );                           
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   42aa0:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   42aa6:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
   42aa8:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   42aaa:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  result =  (*temp_loc.ops->mknod_h)( name_start, mode, dev, &temp_loc );
                                                                      
  rtems_filesystem_freenode( &temp_loc );                             
                                                                      
  return result;                                                      
}                                                                     
   42ab0:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   42ab2:	4cee 040c ffdc 	moveml %fp@(-36),%d2-%d3/%a2                <== NOT EXECUTED
   42ab8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   42aba:	4e75           	rts                                         <== NOT EXECUTED
  result = (*temp_loc.ops->evalformake_h)(                            
    &pathname[i],                                                     
    &temp_loc,                                                        
    &name_start                                                       
  );                                                                  
  if ( result != 0 )                                                  
   42abc:	74ff           	moveq #-1,%d2                               
  result =  (*temp_loc.ops->mknod_h)( name_start, mode, dev, &temp_loc );
                                                                      
  rtems_filesystem_freenode( &temp_loc );                             
                                                                      
  return result;                                                      
}                                                                     
   42abe:	2002           	movel %d2,%d0                               
   42ac0:	4cee 040c ffdc 	moveml %fp@(-36),%d2-%d3/%a2                
   42ac6:	4e5e           	unlk %fp                                    
   42ac8:	4e75           	rts                                         
  int                                 i;                              
  const char                         *name_start;                     
  int                                 result;                         
                                                                      
  if ( !(mode & (S_IFREG|S_IFCHR|S_IFBLK|S_IFIFO) ) )                 
    rtems_set_errno_and_return_minus_one( EINVAL );                   
   42aca:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   42ad0:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
   42ad2:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   42ad4:	7016           	moveq #22,%d0                               <== NOT EXECUTED
   42ad6:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
  result =  (*temp_loc.ops->mknod_h)( name_start, mode, dev, &temp_loc );
                                                                      
  rtems_filesystem_freenode( &temp_loc );                             
                                                                      
  return result;                                                      
}                                                                     
   42ad8:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   42ada:	4cee 040c ffdc 	moveml %fp@(-36),%d2-%d3/%a2                <== NOT EXECUTED
   42ae0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   42ae2:	4e75           	rts                                         <== NOT EXECUTED
  );                                                                  
  if ( result != 0 )                                                  
    return -1;                                                        
                                                                      
  if ( !temp_loc.ops->mknod_h ) {                                     
    rtems_filesystem_freenode( &temp_loc );                           
   42ae4:	2069 001c      	moveal %a1@(28),%a0                         <== NOT EXECUTED
   42ae8:	4a88           	tstl %a0                                    <== NOT EXECUTED
   42aea:	67b4           	beqs 42aa0 <mknod+0xf8>                     <== NOT EXECUTED
   42aec:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   42aee:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
  );                                                                  
  if ( result != 0 )                                                  
    return -1;                                                        
                                                                      
  if ( !temp_loc.ops->mknod_h ) {                                     
    rtems_filesystem_freenode( &temp_loc );                           
   42af0:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   42af2:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   42af4:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   42afa:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   42afc:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
   42b02:	60ac           	bras 42ab0 <mknod+0x108>                    <== NOT EXECUTED
                                                                      
00042b26 <mount>:                                                     
  const rtems_filesystem_operations_table  *fs_ops,                   
  rtems_filesystem_options_t                options,                  
  const char                               *device,                   
  const char                               *mount_point               
)                                                                     
{                                                                     
   42b26:	4e56 ffd0      	linkw %fp,#-48                              
   42b2a:	48d7 1c3c      	moveml %d2-%d5/%a2-%a4,%sp@                 
   42b2e:	286e 0008      	moveal %fp@(8),%a4                          
   42b32:	266e 000c      	moveal %fp@(12),%a3                         
   42b36:	282e 0010      	movel %fp@(16),%d4                          
   42b3a:	242e 0014      	movel %fp@(20),%d2                          
   42b3e:	262e 0018      	movel %fp@(24),%d3                          
                                                                      
  /*                                                                  
   *  Is there a file system operations table?                        
   */                                                                 
                                                                      
  if ( fs_ops == NULL ) {                                             
   42b42:	4a8b           	tstl %a3                                    
   42b44:	6700 01d2      	beqw 42d18 <mount+0x1f2>                    
                                                                      
  /*                                                                  
   *  Are the file system options valid?                              
   */                                                                 
                                                                      
  if ( options != RTEMS_FILESYSTEM_READ_ONLY &&                       
   42b48:	7001           	moveq #1,%d0                                
   42b4a:	b084           	cmpl %d4,%d0                                
   42b4c:	6500 01ca      	bcsw 42d18 <mount+0x1f2>                    
    errno = EINVAL;                                                   
    return -1;                                                        
  }                                                                   
                                                                      
  /* Do they support being mounted at all ? */                        
  if ( !fs_ops->fsmount_me_h ) {                                      
   42b50:	4aab 0024      	tstl %a3@(36)                               
   42b54:	6700 01f4      	beqw 42d4a <mount+0x224>                    
  /*                                                                  
   * Allocate a mount table entry                                     
   */                                                                 
                                                                      
   size = sizeof(rtems_filesystem_mount_table_entry_t);               
   if ( device )                                                      
   42b58:	4a82           	tstl %d2                                    
   42b5a:	6700 0188      	beqw 42ce4 <mount+0x1be>                    
     size += strlen( device ) + 1;                                    
   42b5e:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   42b60:	4eb9 0004 ffc0 	jsr 4ffc0 <strlen>                          <== NOT EXECUTED
   42b66:	588f           	addql #4,%sp                                <== NOT EXECUTED
   42b68:	0680 0000 006d 	addil #109,%d0                              <== NOT EXECUTED
   temp_mt_entry = malloc( size );                                    
   42b6e:	2f00           	movel %d0,%sp@-                             
   42b70:	4eb9 0004 ac8c 	jsr 4ac8c <malloc>                          
                                                                      
   if ( !temp_mt_entry ) {                                            
   42b76:	588f           	addql #4,%sp                                
   */                                                                 
                                                                      
   size = sizeof(rtems_filesystem_mount_table_entry_t);               
   if ( device )                                                      
     size += strlen( device ) + 1;                                    
   temp_mt_entry = malloc( size );                                    
   42b78:	2440           	moveal %d0,%a2                              
   42b7a:	2a00           	movel %d0,%d5                               
                                                                      
   if ( !temp_mt_entry ) {                                            
   42b7c:	6700 020e      	beqw 42d8c <mount+0x266>                    
     errno = ENOMEM;                                                  
     return -1;                                                       
   }                                                                  
                                                                      
   temp_mt_entry->mt_fs_root.mt_entry = temp_mt_entry;                
   temp_mt_entry->options = options;                                  
   42b80:	2544 0030      	movel %d4,%a2@(48)                          
   if ( !temp_mt_entry ) {                                            
     errno = ENOMEM;                                                  
     return -1;                                                       
   }                                                                  
                                                                      
   temp_mt_entry->mt_fs_root.mt_entry = temp_mt_entry;                
   42b84:	2540 002c      	movel %d0,%a2@(44)                          
   temp_mt_entry->options = options;                                  
   if ( device ) {                                                    
   42b88:	4a82           	tstl %d2                                    
   42b8a:	6700 0150      	beqw 42cdc <mount+0x1b6>                    
     temp_mt_entry->dev =                                             
       (char *)temp_mt_entry + sizeof( rtems_filesystem_mount_table_entry_t );
     strcpy( temp_mt_entry->dev, device );                            
   42b8e:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
                                                                      
   temp_mt_entry->mt_fs_root.mt_entry = temp_mt_entry;                
   temp_mt_entry->options = options;                                  
   if ( device ) {                                                    
     temp_mt_entry->dev =                                             
       (char *)temp_mt_entry + sizeof( rtems_filesystem_mount_table_entry_t );
   42b90:	0680 0000 006c 	addil #108,%d0                              <== NOT EXECUTED
     strcpy( temp_mt_entry->dev, device );                            
   42b96:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   }                                                                  
                                                                      
   temp_mt_entry->mt_fs_root.mt_entry = temp_mt_entry;                
   temp_mt_entry->options = options;                                  
   if ( device ) {                                                    
     temp_mt_entry->dev =                                             
   42b98:	2540 0068      	movel %d0,%a2@(104)                         <== NOT EXECUTED
       (char *)temp_mt_entry + sizeof( rtems_filesystem_mount_table_entry_t );
     strcpy( temp_mt_entry->dev, device );                            
   42b9c:	4eb9 0004 fb74 	jsr 4fb74 <strcpy>                          <== NOT EXECUTED
   42ba2:	508f           	addql #8,%sp                                <== NOT EXECUTED
  /*                                                                  
   *  The mount_point should be a directory with read/write/execute   
   *  permissions in the existing tree.                               
   */                                                                 
                                                                      
  if ( mount_point ) {                                                
   42ba4:	4a83           	tstl %d3                                    
   42ba6:	6700 0114      	beqw 42cbc <mount+0x196>                    
                                                                      
    if ( rtems_filesystem_evaluate_path(                              
           mount_point, strlen( mount_point ), RTEMS_LIBIO_PERMS_RWX, &loc, true ) == -1 )
   42baa:	2f03           	movel %d3,%sp@-                             
   *  permissions in the existing tree.                               
   */                                                                 
                                                                      
  if ( mount_point ) {                                                
                                                                      
    if ( rtems_filesystem_evaluate_path(                              
   42bac:	7801           	moveq #1,%d4                                
   42bae:	240e           	movel %fp,%d2                               
   42bb0:	0682 ffff ffec 	addil #-20,%d2                              
           mount_point, strlen( mount_point ), RTEMS_LIBIO_PERMS_RWX, &loc, true ) == -1 )
   42bb6:	4eb9 0004 ffc0 	jsr 4ffc0 <strlen>                          
   *  permissions in the existing tree.                               
   */                                                                 
                                                                      
  if ( mount_point ) {                                                
                                                                      
    if ( rtems_filesystem_evaluate_path(                              
   42bbc:	2e84           	movel %d4,%sp@                              
   42bbe:	2f02           	movel %d2,%sp@-                             
   42bc0:	4878 0007      	pea 7 <TRUNCDFSF>                           
   42bc4:	2f00           	movel %d0,%sp@-                             
   42bc6:	2f03           	movel %d3,%sp@-                             
   42bc8:	4eb9 0004 2720 	jsr 42720 <rtems_filesystem_evaluate_path>  
   42bce:	4fef 0014      	lea %sp@(20),%sp                            
   42bd2:	72ff           	moveq #-1,%d1                               
   42bd4:	b280           	cmpl %d0,%d1                                
   42bd6:	6700 0182      	beqw 42d5a <mount+0x234>                    
                                                                      
    /*                                                                
     * Test for node_type_h                                           
     */                                                               
                                                                      
    if (!loc.ops->node_type_h) {                                      
   42bda:	206e fff8      	moveal %fp@(-8),%a0                         
   42bde:	2068 0010      	moveal %a0@(16),%a0                         
   42be2:	4a88           	tstl %a0                                    
   42be4:	6700 018a      	beqw 42d70 <mount+0x24a>                    
                                                                      
    /*                                                                
     *  Test to see if it is a directory                              
     */                                                               
                                                                      
    if ( loc.ops->node_type_h( &loc ) != RTEMS_FILESYSTEM_DIRECTORY ) {
   42be8:	2f02           	movel %d2,%sp@-                             
   42bea:	4e90           	jsr %a0@                                    
   42bec:	588f           	addql #4,%sp                                
   42bee:	7201           	moveq #1,%d1                                
   42bf0:	b280           	cmpl %d0,%d1                                
   42bf2:	6600 013c      	bnew 42d30 <mount+0x20a>                    
                                                                      
  /*                                                                  
   * For each mount table entry                                       
   */                                                                 
                                                                      
  for ( the_node = rtems_filesystem_mount_table_control.first;        
   42bf6:	2079 0005 ee50 	moveal 5ee50 <rtems_filesystem_mount_table_control>,%a0
   42bfc:	b1fc 0005 ee54 	cmpal #388692,%a0                           
   42c02:	6758           	beqs 42c5c <mount+0x136>                    
        !rtems_chain_is_tail( &rtems_filesystem_mount_table_control, the_node );
        the_node = the_node->next ) {                                 
     the_mount_entry = (rtems_filesystem_mount_table_entry_t *) the_node;
     if ( the_mount_entry->mt_fs_root.node_access  == loc->node_access )
   42c04:	222e ffec      	movel %fp@(-20),%d1                         
   42c08:	b2a8 001c      	cmpl %a0@(28),%d1                           
   42c0c:	6710           	beqs 42c1e <mount+0xf8>                     
   * For each mount table entry                                       
   */                                                                 
                                                                      
  for ( the_node = rtems_filesystem_mount_table_control.first;        
        !rtems_chain_is_tail( &rtems_filesystem_mount_table_control, the_node );
        the_node = the_node->next ) {                                 
   42c0e:	2050           	moveal %a0@,%a0                             
                                                                      
  /*                                                                  
   * For each mount table entry                                       
   */                                                                 
                                                                      
  for ( the_node = rtems_filesystem_mount_table_control.first;        
   42c10:	b1fc 0005 ee54 	cmpal #388692,%a0                           
   42c16:	6748           	beqs 42c60 <mount+0x13a>                    
        !rtems_chain_is_tail( &rtems_filesystem_mount_table_control, the_node );
        the_node = the_node->next ) {                                 
     the_mount_entry = (rtems_filesystem_mount_table_entry_t *) the_node;
     if ( the_mount_entry->mt_fs_root.node_access  == loc->node_access )
   42c18:	b2a8 001c      	cmpl %a0@(28),%d1                           
   42c1c:	66f0           	bnes 42c0e <mount+0xe8>                     
    /*                                                                
     *  You can only mount one file system onto a single mount point. 
     */                                                               
                                                                      
    if ( Is_node_fs_root(  &loc ) ){                                  
      errno = EBUSY;                                                  
   42c1e:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   42c24:	2240           	moveal %d0,%a1                              
   42c26:	7010           	moveq #16,%d0                               
   42c28:	2280           	movel %d0,%a1@                              
                                                                      
  return 0;                                                           
                                                                      
cleanup_and_bail:                                                     
                                                                      
  free( temp_mt_entry );                                              
   42c2a:	2f0a           	movel %a2,%sp@-                             
   42c2c:	4eb9 0004 a6f4 	jsr 4a6f4 <free>                            
   42c32:	588f           	addql #4,%sp                                
                                                                      
  if ( loc_to_free )                                                  
    rtems_filesystem_freenode( loc_to_free );                         
   42c34:	2242           	moveal %d2,%a1                              
   42c36:	2069 000c      	moveal %a1@(12),%a0                         
   42c3a:	4a88           	tstl %a0                                    
   42c3c:	6700 00ce      	beqw 42d0c <mount+0x1e6>                    
   42c40:	2028 001c      	movel %a0@(28),%d0                          
   42c44:	6700 00c6      	beqw 42d0c <mount+0x1e6>                    
   42c48:	2f02           	movel %d2,%sp@-                             
   42c4a:	2040           	moveal %d0,%a0                              
   42c4c:	4e90           	jsr %a0@                                    
   42c4e:	588f           	addql #4,%sp                                
   42c50:	70ff           	moveq #-1,%d0                               
                                                                      
  return -1;                                                          
}                                                                     
   42c52:	4cee 1c3c ffd0 	moveml %fp@(-48),%d2-%d5/%a2-%a4            
   42c58:	4e5e           	unlk %fp                                    
   42c5a:	4e75           	rts                                         
cleanup_and_bail:                                                     
                                                                      
  free( temp_mt_entry );                                              
                                                                      
  if ( loc_to_free )                                                  
    rtems_filesystem_freenode( loc_to_free );                         
   42c5c:	222e ffec      	movel %fp@(-20),%d1                         <== NOT EXECUTED
     *  traverse the tree.                                            
     */                                                               
                                                                      
    temp_mt_entry->mt_point_node.node_access = loc.node_access;       
    temp_mt_entry->mt_point_node.handlers = loc.handlers;             
    temp_mt_entry->mt_point_node.ops = loc.ops;                       
   42c60:	226e fff8      	moveal %fp@(-8),%a1                         
     *  until the system is unmounted.  It may be needed to correctly 
     *  traverse the tree.                                            
     */                                                               
                                                                      
    temp_mt_entry->mt_point_node.node_access = loc.node_access;       
    temp_mt_entry->mt_point_node.handlers = loc.handlers;             
   42c64:	256e fff4 0010 	movel %fp@(-12),%a2@(16)                    
    temp_mt_entry->mt_point_node.ops = loc.ops;                       
    temp_mt_entry->mt_point_node.mt_entry = loc.mt_entry;             
   42c6a:	256e fffc 0018 	movel %fp@(-4),%a2@(24)                     
    /*                                                                
     *  This link to the parent is only done when we are dealing with system
     *  below the base file system                                    
     */                                                               
                                                                      
    if ( !loc.ops->mount_h ){                                         
   42c70:	2069 0020      	moveal %a1@(32),%a0                         
     *  may have been allocated in loc should not be sent to freenode 
     *  until the system is unmounted.  It may be needed to correctly 
     *  traverse the tree.                                            
     */                                                               
                                                                      
    temp_mt_entry->mt_point_node.node_access = loc.node_access;       
   42c74:	2541 0008      	movel %d1,%a2@(8)                           
    temp_mt_entry->mt_point_node.handlers = loc.handlers;             
    temp_mt_entry->mt_point_node.ops = loc.ops;                       
   42c78:	2549 0014      	movel %a1,%a2@(20)                          
    /*                                                                
     *  This link to the parent is only done when we are dealing with system
     *  below the base file system                                    
     */                                                               
                                                                      
    if ( !loc.ops->mount_h ){                                         
   42c7c:	4a88           	tstl %a0                                    
   42c7e:	6700 00f0      	beqw 42d70 <mount+0x24a>                    
      errno = ENOTSUP;                                                
      goto cleanup_and_bail;                                          
    }                                                                 
                                                                      
    if ( loc.ops->mount_h( temp_mt_entry ) ) {                        
   42c82:	2f0a           	movel %a2,%sp@-                             
   42c84:	4e90           	jsr %a0@                                    
   42c86:	588f           	addql #4,%sp                                
   42c88:	4a80           	tstl %d0                                    
   42c8a:	669e           	bnes 42c2a <mount+0x104>                    
    temp_mt_entry->mt_point_node.handlers = NULL;                     
    temp_mt_entry->mt_point_node.ops = NULL;                          
    temp_mt_entry->mt_point_node.mt_entry = NULL;                     
  }                                                                   
                                                                      
  if ( fs_ops->fsmount_me_h( temp_mt_entry ) ) {                      
   42c8c:	2f0a           	movel %a2,%sp@-                             
   42c8e:	206b 0024      	moveal %a3@(36),%a0                         
   42c92:	4e90           	jsr %a0@                                    
   42c94:	588f           	addql #4,%sp                                
   42c96:	4a80           	tstl %d0                                    
   42c98:	6650           	bnes 42cea <mount+0x1c4>                    
RTEMS_INLINE_ROUTINE void rtems_chain_append(                         
  rtems_chain_control *the_chain,                                     
  rtems_chain_node    *the_node                                       
)                                                                     
{                                                                     
  _Chain_Append( the_chain, the_node );                               
   42c9a:	2f0a           	movel %a2,%sp@-                             
   42c9c:	4879 0005 ee50 	pea 5ee50 <rtems_filesystem_mount_table_control>
   42ca2:	4eb9 0004 6798 	jsr 46798 <_Chain_Append>                   
   */                                                                 
                                                                      
  rtems_chain_append( &rtems_filesystem_mount_table_control,          
                      &temp_mt_entry->Node );                         
                                                                      
  if ( mt_entry )                                                     
   42ca8:	508f           	addql #8,%sp                                
   42caa:	4a8c           	tstl %a4                                    
   42cac:	6702           	beqs 42cb0 <mount+0x18a>                    
    *mt_entry = temp_mt_entry;                                        
   42cae:	288a           	movel %a2,%a4@                              
   42cb0:	4280           	clrl %d0                                    
                                                                      
  if ( loc_to_free )                                                  
    rtems_filesystem_freenode( loc_to_free );                         
                                                                      
  return -1;                                                          
}                                                                     
   42cb2:	4cee 1c3c ffd0 	moveml %fp@(-48),%d2-%d5/%a2-%a4            
   42cb8:	4e5e           	unlk %fp                                    
   42cba:	4e75           	rts                                         
     *  This is a mount of the base file system --> The               
     *  mt_point_node.node_access will be set to null to indicate that this
     *  is the root of the entire file system.                        
     */                                                               
                                                                      
    temp_mt_entry->mt_fs_root.node_access = NULL;                     
   42cbc:	42aa 001c      	clrl %a2@(28)                               
    temp_mt_entry->mt_fs_root.ops = NULL;                             
                                                                      
    temp_mt_entry->mt_point_node.node_access = NULL;                  
    temp_mt_entry->mt_point_node.handlers = NULL;                     
    temp_mt_entry->mt_point_node.ops = NULL;                          
    temp_mt_entry->mt_point_node.mt_entry = NULL;                     
   42cc0:	4282           	clrl %d2                                    
     *  mt_point_node.node_access will be set to null to indicate that this
     *  is the root of the entire file system.                        
     */                                                               
                                                                      
    temp_mt_entry->mt_fs_root.node_access = NULL;                     
    temp_mt_entry->mt_fs_root.handlers = NULL;                        
   42cc2:	42aa 0024      	clrl %a2@(36)                               
    temp_mt_entry->mt_fs_root.ops = NULL;                             
   42cc6:	42aa 0028      	clrl %a2@(40)                               
                                                                      
    temp_mt_entry->mt_point_node.node_access = NULL;                  
   42cca:	42aa 0008      	clrl %a2@(8)                                
    temp_mt_entry->mt_point_node.handlers = NULL;                     
   42cce:	42aa 0010      	clrl %a2@(16)                               
    temp_mt_entry->mt_point_node.ops = NULL;                          
   42cd2:	42aa 0014      	clrl %a2@(20)                               
    temp_mt_entry->mt_point_node.mt_entry = NULL;                     
   42cd6:	42aa 0018      	clrl %a2@(24)                               
   42cda:	60b0           	bras 42c8c <mount+0x166>                    
   if ( device ) {                                                    
     temp_mt_entry->dev =                                             
       (char *)temp_mt_entry + sizeof( rtems_filesystem_mount_table_entry_t );
     strcpy( temp_mt_entry->dev, device );                            
   } else                                                             
     temp_mt_entry->dev = 0;                                          
   42cdc:	42aa 0068      	clrl %a2@(104)                              
   42ce0:	6000 fec2      	braw 42ba4 <mount+0x7e>                     
  /*                                                                  
   * Allocate a mount table entry                                     
   */                                                                 
                                                                      
   size = sizeof(rtems_filesystem_mount_table_entry_t);               
   if ( device )                                                      
   42ce4:	706c           	moveq #108,%d0                              
   42ce6:	6000 fe86      	braw 42b6e <mount+0x48>                     
    temp_mt_entry->mt_point_node.mt_entry = NULL;                     
  }                                                                   
                                                                      
  if ( fs_ops->fsmount_me_h( temp_mt_entry ) ) {                      
	/* try to undo the mount operation */                                
	if ( loc.ops->unmount_h ) {                                          
   42cea:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
   42cee:	2068 0028      	moveal %a0@(40),%a0                         <== NOT EXECUTED
   42cf2:	4a88           	tstl %a0                                    <== NOT EXECUTED
   42cf4:	6706           	beqs 42cfc <mount+0x1d6>                    <== NOT EXECUTED
		loc.ops->unmount_h( temp_mt_entry );                                
   42cf6:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   42cf8:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   42cfa:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  return 0;                                                           
                                                                      
cleanup_and_bail:                                                     
                                                                      
  free( temp_mt_entry );                                              
   42cfc:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   42cfe:	4eb9 0004 a6f4 	jsr 4a6f4 <free>                            <== NOT EXECUTED
                                                                      
  if ( loc_to_free )                                                  
   42d04:	588f           	addql #4,%sp                                <== NOT EXECUTED
   42d06:	4a82           	tstl %d2                                    <== NOT EXECUTED
   42d08:	6600 ff2a      	bnew 42c34 <mount+0x10e>                    <== NOT EXECUTED
    rtems_filesystem_freenode( loc_to_free );                         
   42d0c:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  return -1;                                                          
}                                                                     
   42d0e:	4cee 1c3c ffd0 	moveml %fp@(-48),%d2-%d5/%a2-%a4            <== NOT EXECUTED
   42d14:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   42d16:	4e75           	rts                                         <== NOT EXECUTED
   *  Are the file system options valid?                              
   */                                                                 
                                                                      
  if ( options != RTEMS_FILESYSTEM_READ_ONLY &&                       
       options != RTEMS_FILESYSTEM_READ_WRITE ) {                     
    errno = EINVAL;                                                   
   42d18:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   42d1e:	7216           	moveq #22,%d1                               
   42d20:	2040           	moveal %d0,%a0                              
   42d22:	70ff           	moveq #-1,%d0                               
                                                                      
  if ( loc_to_free )                                                  
    rtems_filesystem_freenode( loc_to_free );                         
                                                                      
  return -1;                                                          
}                                                                     
   42d24:	4cee 1c3c ffd0 	moveml %fp@(-48),%d2-%d5/%a2-%a4            
   *  Are the file system options valid?                              
   */                                                                 
                                                                      
  if ( options != RTEMS_FILESYSTEM_READ_ONLY &&                       
       options != RTEMS_FILESYSTEM_READ_WRITE ) {                     
    errno = EINVAL;                                                   
   42d2a:	2081           	movel %d1,%a0@                              
                                                                      
  if ( loc_to_free )                                                  
    rtems_filesystem_freenode( loc_to_free );                         
                                                                      
  return -1;                                                          
}                                                                     
   42d2c:	4e5e           	unlk %fp                                    
   42d2e:	4e75           	rts                                         
    /*                                                                
     *  Test to see if it is a directory                              
     */                                                               
                                                                      
    if ( loc.ops->node_type_h( &loc ) != RTEMS_FILESYSTEM_DIRECTORY ) {
      errno = ENOTDIR;                                                
   42d30:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   42d36:	7214           	moveq #20,%d1                               
   42d38:	2040           	moveal %d0,%a0                              
   42d3a:	2081           	movel %d1,%a0@                              
                                                                      
  return 0;                                                           
                                                                      
cleanup_and_bail:                                                     
                                                                      
  free( temp_mt_entry );                                              
   42d3c:	2f0a           	movel %a2,%sp@-                             
   42d3e:	4eb9 0004 a6f4 	jsr 4a6f4 <free>                            
   42d44:	588f           	addql #4,%sp                                
   42d46:	6000 feec      	braw 42c34 <mount+0x10e>                    
    return -1;                                                        
  }                                                                   
                                                                      
  /* Do they support being mounted at all ? */                        
  if ( !fs_ops->fsmount_me_h ) {                                      
    errno = ENOTSUP;                                                  
   42d4a:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   42d50:	4285           	clrl %d5                                    <== NOT EXECUTED
   42d52:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   42d54:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
                                                                      
  return 0;                                                           
                                                                      
cleanup_and_bail:                                                     
                                                                      
  free( temp_mt_entry );                                              
   42d5a:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   42d5c:	4eb9 0004 a6f4 	jsr 4a6f4 <free>                            <== NOT EXECUTED
   42d62:	588f           	addql #4,%sp                                <== NOT EXECUTED
   42d64:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  if ( loc_to_free )                                                  
    rtems_filesystem_freenode( loc_to_free );                         
                                                                      
  return -1;                                                          
}                                                                     
   42d66:	4cee 1c3c ffd0 	moveml %fp@(-48),%d2-%d5/%a2-%a4            <== NOT EXECUTED
   42d6c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   42d6e:	4e75           	rts                                         <== NOT EXECUTED
     *  This link to the parent is only done when we are dealing with system
     *  below the base file system                                    
     */                                                               
                                                                      
    if ( !loc.ops->mount_h ){                                         
      errno = ENOTSUP;                                                
   42d70:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   42d76:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   42d78:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
                                                                      
  return 0;                                                           
                                                                      
cleanup_and_bail:                                                     
                                                                      
  free( temp_mt_entry );                                              
   42d7e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   42d80:	4eb9 0004 a6f4 	jsr 4a6f4 <free>                            <== NOT EXECUTED
   42d86:	588f           	addql #4,%sp                                <== NOT EXECUTED
   42d88:	6000 feaa      	braw 42c34 <mount+0x10e>                    <== NOT EXECUTED
   if ( device )                                                      
     size += strlen( device ) + 1;                                    
   temp_mt_entry = malloc( size );                                    
                                                                      
   if ( !temp_mt_entry ) {                                            
     errno = ENOMEM;                                                  
   42d8c:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   42d92:	7a0c           	moveq #12,%d5                               <== NOT EXECUTED
   42d94:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   42d96:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   42d98:	2085           	movel %d5,%a0@                              <== NOT EXECUTED
                                                                      
  if ( loc_to_free )                                                  
    rtems_filesystem_freenode( loc_to_free );                         
                                                                      
  return -1;                                                          
}                                                                     
   42d9a:	4cee 1c3c ffd0 	moveml %fp@(-48),%d2-%d5/%a2-%a4            <== NOT EXECUTED
   42da0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00042e98 <newlib_free_buffers>:                                       
 */                                                                   
                                                                      
int newlib_free_buffers(                                              
  FILE *fp                                                            
)                                                                     
{                                                                     
   42e98:	4e56 0000      	linkw %fp,#0                                
   42e9c:	2f0a           	movel %a2,%sp@-                             
   42e9e:	246e 0008      	moveal %fp@(8),%a2                          
  switch ( fileno(fp) ) {                                             
   42ea2:	2f0a           	movel %a2,%sp@-                             
   42ea4:	4eb9 0004 ef88 	jsr 4ef88 <fileno>                          
   42eaa:	588f           	addql #4,%sp                                
   42eac:	7202           	moveq #2,%d1                                
   42eae:	b280           	cmpl %d0,%d1                                
   42eb0:	6414           	bccs 42ec6 <newlib_free_buffers+0x2e>       
        fp->_flags &= ~__SMBF;                                        
        fp->_bf._base = fp->_p = (unsigned char *) NULL;              
      }                                                               
      break;                                                          
    default:                                                          
     fclose(fp);                                                      
   42eb2:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   42eb4:	4eb9 0004 ed32 	jsr 4ed32 <fclose>                          <== NOT EXECUTED
   42eba:	588f           	addql #4,%sp                                <== NOT EXECUTED
  }                                                                   
  return 0;                                                           
}                                                                     
   42ebc:	246e fffc      	moveal %fp@(-4),%a2                         
   42ec0:	4280           	clrl %d0                                    
   42ec2:	4e5e           	unlk %fp                                    
   42ec4:	4e75           	rts                                         
{                                                                     
  switch ( fileno(fp) ) {                                             
    case 0:                                                           
    case 1:                                                           
    case 2:                                                           
      if (fp->_flags & __SMBF) {                                      
   42ec6:	302a 000c      	movew %a2@(12),%d0                          
   42eca:	48c0           	extl %d0                                    
   42ecc:	4a00           	tstb %d0                                    
   42ece:	6cec           	bges 42ebc <newlib_free_buffers+0x24>       
        free( fp->_bf._base );                                        
   42ed0:	2f2a 0010      	movel %a2@(16),%sp@-                        <== NOT EXECUTED
   42ed4:	4eb9 0004 a6f4 	jsr 4a6f4 <free>                            <== NOT EXECUTED
        fp->_flags &= ~__SMBF;                                        
        fp->_bf._base = fp->_p = (unsigned char *) NULL;              
   42eda:	588f           	addql #4,%sp                                <== NOT EXECUTED
    case 0:                                                           
    case 1:                                                           
    case 2:                                                           
      if (fp->_flags & __SMBF) {                                      
        free( fp->_bf._base );                                        
        fp->_flags &= ~__SMBF;                                        
   42edc:	302a 000c      	movew %a2@(12),%d0                          <== NOT EXECUTED
        fp->_bf._base = fp->_p = (unsigned char *) NULL;              
   42ee0:	42aa 0010      	clrl %a2@(16)                               <== NOT EXECUTED
    case 0:                                                           
    case 1:                                                           
    case 2:                                                           
      if (fp->_flags & __SMBF) {                                      
        free( fp->_bf._base );                                        
        fp->_flags &= ~__SMBF;                                        
   42ee4:	0880 0007      	bclr #7,%d0                                 <== NOT EXECUTED
        fp->_bf._base = fp->_p = (unsigned char *) NULL;              
   42ee8:	4292           	clrl %a2@                                   <== NOT EXECUTED
    case 0:                                                           
    case 1:                                                           
    case 2:                                                           
      if (fp->_flags & __SMBF) {                                      
        free( fp->_bf._base );                                        
        fp->_flags &= ~__SMBF;                                        
   42eea:	3540 000c      	movew %d0,%a2@(12)                          <== NOT EXECUTED
      break;                                                          
    default:                                                          
     fclose(fp);                                                      
  }                                                                   
  return 0;                                                           
}                                                                     
   42eee:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   42ef2:	4280           	clrl %d0                                    <== NOT EXECUTED
   42ef4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004333c <null_initialize>:                                           
rtems_device_driver null_initialize(                                  
  rtems_device_major_number major,                                    
  rtems_device_minor_number minor __attribute__((unused)),            
  void *pargp __attribute__((unused))                                 
)                                                                     
{                                                                     
   4333c:	4e56 0000      	linkw %fp,#0                                
   43340:	2f02           	movel %d2,%sp@-                             
   43342:	242e 0008      	movel %fp@(8),%d2                           
  rtems_device_driver status;                                         
                                                                      
  if ( !initialized ) {                                               
   43346:	4a39 0006 00cc 	tstb 600cc <initialized>                    
   4334c:	670a           	beqs 43358 <null_initialize+0x1c>           
                                                                      
    NULL_major = major;                                               
  }                                                                   
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4334e:	242e fffc      	movel %fp@(-4),%d2                          
   43352:	4280           	clrl %d0                                    
   43354:	4e5e           	unlk %fp                                    
   43356:	4e75           	rts                                         
  rtems_device_driver status;                                         
                                                                      
  if ( !initialized ) {                                               
    initialized = 1;                                                  
                                                                      
    status = rtems_io_register_name(                                  
   43358:	42a7           	clrl %sp@-                                  
)                                                                     
{                                                                     
  rtems_device_driver status;                                         
                                                                      
  if ( !initialized ) {                                               
    initialized = 1;                                                  
   4335a:	7001           	moveq #1,%d0                                
   4335c:	13c0 0006 00cc 	moveb %d0,600cc <initialized>               
                                                                      
    status = rtems_io_register_name(                                  
   43362:	2f02           	movel %d2,%sp@-                             
   43364:	4879 0005 dc34 	pea 5dc34 <IntUartPollCallbacks.6602+0x20>  
   4336a:	4eb9 0004 3492 	jsr 43492 <rtems_io_register_name>          
      "/dev/null",                                                    
      major,                                                          
      (rtems_device_minor_number) 0                                   
    );                                                                
                                                                      
    if (status != RTEMS_SUCCESSFUL)                                   
   43370:	4fef 000c      	lea %sp@(12),%sp                            
   43374:	4a80           	tstl %d0                                    
   43376:	6610           	bnes 43388 <null_initialize+0x4c>           
      rtems_fatal_error_occurred(status);                             
                                                                      
    NULL_major = major;                                               
   43378:	23c2 0006 08f0 	movel %d2,608f0 <NULL_major>                
  }                                                                   
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4337e:	242e fffc      	movel %fp@(-4),%d2                          
   43382:	4280           	clrl %d0                                    
   43384:	4e5e           	unlk %fp                                    
   43386:	4e75           	rts                                         
      major,                                                          
      (rtems_device_minor_number) 0                                   
    );                                                                
                                                                      
    if (status != RTEMS_SUCCESSFUL)                                   
      rtems_fatal_error_occurred(status);                             
   43388:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4338a:	4eb9 0004 76e4 	jsr 476e4 <rtems_fatal_error_occurred>      <== NOT EXECUTED
                                                                      
0004331a <null_write>:                                                
rtems_device_driver null_write(                                       
  rtems_device_major_number major __attribute__((unused)),            
  rtems_device_minor_number minor __attribute__((unused)),            
  void *pargp                                                         
)                                                                     
{                                                                     
   4331a:	4e56 0000      	linkw %fp,#0                                
   4331e:	206e 0010      	moveal %fp@(16),%a0                         
  rtems_libio_rw_args_t *rw_args = (rtems_libio_rw_args_t *) pargp;   
                                                                      
  if ( rw_args )                                                      
   43322:	4a88           	tstl %a0                                    
   43324:	6706           	beqs 4332c <null_write+0x12>                
    rw_args->bytes_moved = rw_args->count;                            
   43326:	2168 0010 0018 	movel %a0@(16),%a0@(24)                     <== NOT EXECUTED
                                                                      
  return NULL_SUCCESSFUL;                                             
}                                                                     
   4332c:	4280           	clrl %d0                                    
   4332e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00043124 <open>:                                                      
int open(                                                             
  const char   *pathname,                                             
  int           flags,                                                
  ...                                                                 
)                                                                     
{                                                                     
   43124:	4e56 ffcc      	linkw %fp,#-52                              
   43128:	48d7 3c3c      	moveml %d2-%d5/%a2-%a5,%sp@                 
   4312c:	242e 000c      	movel %fp@(12),%d2                          
  /*                                                                  
   * Set the Evaluation flags                                         
   */                                                                 
                                                                      
  eval_flags = 0;                                                     
  status = flags + 1;                                                 
   43130:	2002           	movel %d2,%d0                               
   43132:	5280           	addql #1,%d0                                
int open(                                                             
  const char   *pathname,                                             
  int           flags,                                                
  ...                                                                 
)                                                                     
{                                                                     
   43134:	282e 0008      	movel %fp@(8),%d4                           
   * Set the Evaluation flags                                         
   */                                                                 
                                                                      
  eval_flags = 0;                                                     
  status = flags + 1;                                                 
  if ( ( status & _FREAD ) == _FREAD )                                
   43138:	0800 0000      	btst #0,%d0                                 
   4313c:	6600 00dc      	bnew 4321a <open+0xf6>                      
   43140:	4283           	clrl %d3                                    
    eval_flags |= RTEMS_LIBIO_PERMS_READ;                             
  if ( ( status & _FWRITE ) == _FWRITE )                              
   43142:	0800 0001      	btst #1,%d0                                 
   43146:	6704           	beqs 4314c <open+0x28>                      
    eval_flags |= RTEMS_LIBIO_PERMS_WRITE;                            
   43148:	7002           	moveq #2,%d0                                
   4314a:	8680           	orl %d0,%d3                                 
                                                                      
                                                                      
  va_start(ap, flags);                                                
                                                                      
  mode = va_arg( ap, int );                                           
   4314c:	2a2e 0010      	movel %fp@(16),%d5                          
   *             code does not require changes here since network file
   *             descriptors are obtained using socket(), not open(). 
   */                                                                 
                                                                      
  /* allocate a file control block */                                 
  iop = rtems_libio_allocate();                                       
   43150:	4eb9 0004 aaf8 	jsr 4aaf8 <rtems_libio_allocate>            
   43156:	2440           	moveal %d0,%a2                              
  if ( iop == 0 ) {                                                   
   43158:	4a80           	tstl %d0                                    
   4315a:	6700 00c4      	beqw 43220 <open+0xfc>                      
  /*                                                                  
   *  See if the file exists.                                         
   */                                                                 
                                                                      
  status = rtems_filesystem_evaluate_path(                            
    pathname, strlen( pathname ), eval_flags, &loc, true );           
   4315e:	2f04           	movel %d4,%sp@-                             
   43160:	4bf9 0004 ffc0 	lea 4ffc0 <strlen>,%a5                      
   43166:	4e95           	jsr %a5@                                    
                                                                      
  /*                                                                  
   *  See if the file exists.                                         
   */                                                                 
                                                                      
  status = rtems_filesystem_evaluate_path(                            
   43168:	47ee ffec      	lea %fp@(-20),%a3                           
   4316c:	7201           	moveq #1,%d1                                
   4316e:	49f9 0004 2720 	lea 42720 <rtems_filesystem_evaluate_path>,%a4
   43174:	2e81           	movel %d1,%sp@                              
   43176:	2f0b           	movel %a3,%sp@-                             
   43178:	2f03           	movel %d3,%sp@-                             
   4317a:	2f00           	movel %d0,%sp@-                             
   4317c:	2f04           	movel %d4,%sp@-                             
   4317e:	4e94           	jsr %a4@                                    
    pathname, strlen( pathname ), eval_flags, &loc, true );           
                                                                      
  if ( status == -1 ) {                                               
   43180:	4fef 0014      	lea %sp@(20),%sp                            
   43184:	72ff           	moveq #-1,%d1                               
   43186:	b280           	cmpl %d0,%d1                                
   43188:	6700 016c      	beqw 432f6 <open+0x1d2>                     
    if ( status != 0 ) {   /* The file did not exist */               
      rc = EACCES;                                                    
      goto done;                                                      
    }                                                                 
                                                                      
  } else if ((flags & (O_EXCL|O_CREAT)) == (O_EXCL|O_CREAT)) {        
   4318c:	2002           	movel %d2,%d0                               
   4318e:	0280 0000 0a00 	andil #2560,%d0                             
   43194:	0c80 0000 0a00 	cmpil #2560,%d0                             
   4319a:	6700 00a0      	beqw 4323c <open+0x118>                     
   *  returned by successful path evaluation.                         
   */                                                                 
                                                                      
  iop->handlers   = loc.handlers;                                     
  iop->file_info  = loc.node_access;                                  
  iop->flags     |= rtems_libio_fcntl_flags( flags );                 
   4319e:	262a 0014      	movel %a2@(20),%d3                          
  /*                                                                  
   *  Fill in the file control block based on the loc structure       
   *  returned by successful path evaluation.                         
   */                                                                 
                                                                      
  iop->handlers   = loc.handlers;                                     
   431a2:	256e fff4 003c 	movel %fp@(-12),%a2@(60)                    
  iop->file_info  = loc.node_access;                                  
   431a8:	256e ffec 0038 	movel %fp@(-20),%a2@(56)                    
  iop->flags     |= rtems_libio_fcntl_flags( flags );                 
   431ae:	2f02           	movel %d2,%sp@-                             
   431b0:	4eb9 0004 abb0 	jsr 4abb0 <rtems_libio_fcntl_flags>         
  iop->pathinfo   = loc;                                              
   431b6:	2553 0018      	movel %a3@,%a2@(24)                         
                                                                      
  if ( !iop->handlers || !iop->handlers->open_h ) {                   
   431ba:	588f           	addql #4,%sp                                
   */                                                                 
                                                                      
  iop->handlers   = loc.handlers;                                     
  iop->file_info  = loc.node_access;                                  
  iop->flags     |= rtems_libio_fcntl_flags( flags );                 
  iop->pathinfo   = loc;                                              
   431bc:	256e fff0 001c 	movel %fp@(-16),%a2@(28)                    
   431c2:	256e fff4 0020 	movel %fp@(-12),%a2@(32)                    
   431c8:	256e fff8 0024 	movel %fp@(-8),%a2@(36)                     
                                                                      
  if ( !iop->handlers || !iop->handlers->open_h ) {                   
   431ce:	206a 003c      	moveal %a2@(60),%a0                         
   *  returned by successful path evaluation.                         
   */                                                                 
                                                                      
  iop->handlers   = loc.handlers;                                     
  iop->file_info  = loc.node_access;                                  
  iop->flags     |= rtems_libio_fcntl_flags( flags );                 
   431d2:	8083           	orl %d3,%d0                                 
  iop->pathinfo   = loc;                                              
   431d4:	256e fffc 0028 	movel %fp@(-4),%a2@(40)                     
   *  returned by successful path evaluation.                         
   */                                                                 
                                                                      
  iop->handlers   = loc.handlers;                                     
  iop->file_info  = loc.node_access;                                  
  iop->flags     |= rtems_libio_fcntl_flags( flags );                 
   431da:	2540 0014      	movel %d0,%a2@(20)                          
  iop->pathinfo   = loc;                                              
                                                                      
  if ( !iop->handlers || !iop->handlers->open_h ) {                   
   431de:	4a88           	tstl %a0                                    
   431e0:	6700 0104      	beqw 432e6 <open+0x1c2>                     
   431e4:	2050           	moveal %a0@,%a0                             
   431e6:	4a88           	tstl %a0                                    
   431e8:	6700 00fc      	beqw 432e6 <open+0x1c2>                     
    rc = ENOTSUP;                                                     
    goto done;                                                        
  }                                                                   
                                                                      
  rc = (*iop->handlers->open_h)( iop, pathname, flags, mode );        
   431ec:	2f05           	movel %d5,%sp@-                             
   431ee:	2f02           	movel %d2,%sp@-                             
   431f0:	2f04           	movel %d4,%sp@-                             
   431f2:	2f0a           	movel %a2,%sp@-                             
   431f4:	4e90           	jsr %a0@                                    
  if ( rc ) {                                                         
   431f6:	4fef 0010      	lea %sp@(16),%sp                            
   431fa:	4a80           	tstl %d0                                    
   431fc:	667a           	bnes 43278 <open+0x154>                     
                                                                      
  /*                                                                  
   *  Optionally truncate the file.                                   
   */                                                                 
                                                                      
  if ( (flags & O_TRUNC) == O_TRUNC ) {                               
   431fe:	0802 000a      	btst #10,%d2                                
   43202:	6600 0092      	bnew 43296 <open+0x172>                     
    if ( loc_to_free )                                                
      rtems_filesystem_freenode( loc_to_free );                       
    rtems_set_errno_and_return_minus_one( rc );                       
  }                                                                   
                                                                      
  return iop - rtems_libio_iops;                                      
   43206:	200a           	movel %a2,%d0                               
   43208:	90b9 0005 ee18 	subl 5ee18 <rtems_libio_iops>,%d0           
   4320e:	ec80           	asrl #6,%d0                                 
}                                                                     
   43210:	4cee 3c3c ffcc 	moveml %fp@(-52),%d2-%d5/%a2-%a5            
   43216:	4e5e           	unlk %fp                                    
   43218:	4e75           	rts                                         
   * Set the Evaluation flags                                         
   */                                                                 
                                                                      
  eval_flags = 0;                                                     
  status = flags + 1;                                                 
  if ( ( status & _FREAD ) == _FREAD )                                
   4321a:	7604           	moveq #4,%d3                                
   4321c:	6000 ff24      	braw 43142 <open+0x1e>                      
   *             descriptors are obtained using socket(), not open(). 
   */                                                                 
                                                                      
  /* allocate a file control block */                                 
  iop = rtems_libio_allocate();                                       
  if ( iop == 0 ) {                                                   
   43220:	7417           	moveq #23,%d2                               
   43222:	263c 0004 ebf4 	movel #322548,%d3                           
  if ( rc ) {                                                         
    if ( iop )                                                        
      rtems_libio_free( iop );                                        
    if ( loc_to_free )                                                
      rtems_filesystem_freenode( loc_to_free );                       
    rtems_set_errno_and_return_minus_one( rc );                       
   43228:	2043           	moveal %d3,%a0                              
   4322a:	4e90           	jsr %a0@                                    
   4322c:	2040           	moveal %d0,%a0                              
   4322e:	70ff           	moveq #-1,%d0                               
   43230:	2082           	movel %d2,%a0@                              
  }                                                                   
                                                                      
  return iop - rtems_libio_iops;                                      
}                                                                     
   43232:	4cee 3c3c ffcc 	moveml %fp@(-52),%d2-%d5/%a2-%a5            
   43238:	4e5e           	unlk %fp                                    
   4323a:	4e75           	rts                                         
    if ( status != 0 ) {   /* The file did not exist */               
      rc = EACCES;                                                    
      goto done;                                                      
    }                                                                 
                                                                      
  } else if ((flags & (O_EXCL|O_CREAT)) == (O_EXCL|O_CREAT)) {        
   4323c:	7411           	moveq #17,%d2                               
   4323e:	263c 0004 ebf4 	movel #322548,%d3                           
                                                                      
done:                                                                 
  va_end(ap);                                                         
                                                                      
  if ( rc ) {                                                         
    if ( iop )                                                        
   43244:	4a8a           	tstl %a2                                    
   43246:	670a           	beqs 43252 <open+0x12e>                     
      rtems_libio_free( iop );                                        
   43248:	2f0a           	movel %a2,%sp@-                             
   4324a:	4eb9 0004 aa6a 	jsr 4aa6a <rtems_libio_free>                
   43250:	588f           	addql #4,%sp                                
    if ( loc_to_free )                                                
   43252:	4a8b           	tstl %a3                                    
   43254:	67d2           	beqs 43228 <open+0x104>                     
      rtems_filesystem_freenode( loc_to_free );                       
   43256:	206b 000c      	moveal %a3@(12),%a0                         
   4325a:	4a88           	tstl %a0                                    
   4325c:	67ca           	beqs 43228 <open+0x104>                     
   4325e:	2068 001c      	moveal %a0@(28),%a0                         
   43262:	4a88           	tstl %a0                                    
   43264:	67c2           	beqs 43228 <open+0x104>                     
   43266:	2f0b           	movel %a3,%sp@-                             
   43268:	4e90           	jsr %a0@                                    
   4326a:	588f           	addql #4,%sp                                
    rtems_set_errno_and_return_minus_one( rc );                       
   4326c:	2043           	moveal %d3,%a0                              
   4326e:	4e90           	jsr %a0@                                    
   43270:	2040           	moveal %d0,%a0                              
   43272:	70ff           	moveq #-1,%d0                               
   43274:	2082           	movel %d2,%a0@                              
   43276:	60ba           	bras 43232 <open+0x10e>                     
    goto done;                                                        
  }                                                                   
                                                                      
  rc = (*iop->handlers->open_h)( iop, pathname, flags, mode );        
  if ( rc ) {                                                         
    rc = errno;                                                       
   43278:	263c 0004 ebf4 	movel #322548,%d3                           
   4327e:	2043           	moveal %d3,%a0                              
   43280:	4e90           	jsr %a0@                                    
   43282:	2040           	moveal %d0,%a0                              
   43284:	2410           	movel %a0@,%d2                              
   */                                                                 
                                                                      
done:                                                                 
  va_end(ap);                                                         
                                                                      
  if ( rc ) {                                                         
   43286:	66bc           	bnes 43244 <open+0x120>                     
    if ( loc_to_free )                                                
      rtems_filesystem_freenode( loc_to_free );                       
    rtems_set_errno_and_return_minus_one( rc );                       
  }                                                                   
                                                                      
  return iop - rtems_libio_iops;                                      
   43288:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   4328a:	90b9 0005 ee18 	subl 5ee18 <rtems_libio_iops>,%d0           <== NOT EXECUTED
   43290:	ec80           	asrl #6,%d0                                 <== NOT EXECUTED
   43292:	6000 ff7c      	braw 43210 <open+0xec>                      <== NOT EXECUTED
  /*                                                                  
   *  Optionally truncate the file.                                   
   */                                                                 
                                                                      
  if ( (flags & O_TRUNC) == O_TRUNC ) {                               
    rc = ftruncate( iop - rtems_libio_iops, 0 );                      
   43296:	200a           	movel %a2,%d0                               
   43298:	90b9 0005 ee18 	subl 5ee18 <rtems_libio_iops>,%d0           
   4329e:	ec80           	asrl #6,%d0                                 
   432a0:	42a7           	clrl %sp@-                                  
   432a2:	42a7           	clrl %sp@-                                  
   432a4:	2f00           	movel %d0,%sp@-                             
   432a6:	4eb9 0004 a784 	jsr 4a784 <ftruncate>                       
    if ( rc ) {                                                       
   432ac:	4fef 000c      	lea %sp@(12),%sp                            
  /*                                                                  
   *  Optionally truncate the file.                                   
   */                                                                 
                                                                      
  if ( (flags & O_TRUNC) == O_TRUNC ) {                               
    rc = ftruncate( iop - rtems_libio_iops, 0 );                      
   432b0:	2400           	movel %d0,%d2                               
    if ( rc ) {                                                       
   432b2:	6700 ff52      	beqw 43206 <open+0xe2>                      
      if(errno) rc = errno;                                           
   432b6:	263c 0004 ebf4 	movel #322548,%d3                           <== NOT EXECUTED
   432bc:	2043           	moveal %d3,%a0                              <== NOT EXECUTED
   432be:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   432c0:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   432c2:	4a90           	tstl %a0@                                   <== NOT EXECUTED
   432c4:	6662           	bnes 43328 <open+0x204>                     <== NOT EXECUTED
      close( iop - rtems_libio_iops );                                
   432c6:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   432c8:	90b9 0005 ee18 	subl 5ee18 <rtems_libio_iops>,%d0           <== NOT EXECUTED
   432ce:	97cb           	subal %a3,%a3                               <== NOT EXECUTED
   432d0:	ec80           	asrl #6,%d0                                 <== NOT EXECUTED
   432d2:	95ca           	subal %a2,%a2                               <== NOT EXECUTED
   432d4:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   432d6:	4eb9 0004 a654 	jsr 4a654 <close>                           <== NOT EXECUTED
   432dc:	588f           	addql #4,%sp                                <== NOT EXECUTED
   */                                                                 
                                                                      
done:                                                                 
  va_end(ap);                                                         
                                                                      
  if ( rc ) {                                                         
   432de:	4a82           	tstl %d2                                    <== NOT EXECUTED
   432e0:	67a6           	beqs 43288 <open+0x164>                     <== NOT EXECUTED
   432e2:	6000 ff60      	braw 43244 <open+0x120>                     <== NOT EXECUTED
    if ( loc_to_free )                                                
      rtems_filesystem_freenode( loc_to_free );                       
    rtems_set_errno_and_return_minus_one( rc );                       
  }                                                                   
                                                                      
  return iop - rtems_libio_iops;                                      
   432e6:	243c 0000 0086 	movel #134,%d2                              <== NOT EXECUTED
   432ec:	263c 0004 ebf4 	movel #322548,%d3                           <== NOT EXECUTED
   432f2:	6000 ff50      	braw 43244 <open+0x120>                     <== NOT EXECUTED
                                                                      
  status = rtems_filesystem_evaluate_path(                            
    pathname, strlen( pathname ), eval_flags, &loc, true );           
                                                                      
  if ( status == -1 ) {                                               
    if ( errno != ENOENT ) {                                          
   432f6:	263c 0004 ebf4 	movel #322548,%d3                           
   432fc:	2043           	moveal %d3,%a0                              
   432fe:	4e90           	jsr %a0@                                    
   43300:	7202           	moveq #2,%d1                                
   43302:	2040           	moveal %d0,%a0                              
   43304:	b290           	cmpl %a0@,%d1                               
   43306:	6712           	beqs 4331a <open+0x1f6>                     
    }                                                                 
                                                                      
    /* Create the node for the new regular file */                    
    rc = mknod( pathname, S_IFREG | mode, 0LL );                      
    if ( rc ) {                                                       
      rc = errno;                                                     
   43308:	2043           	moveal %d3,%a0                              
   4330a:	97cb           	subal %a3,%a3                               
   4330c:	4e90           	jsr %a0@                                    
   4330e:	2040           	moveal %d0,%a0                              
   43310:	2410           	movel %a0@,%d2                              
   */                                                                 
                                                                      
done:                                                                 
  va_end(ap);                                                         
                                                                      
  if ( rc ) {                                                         
   43312:	6700 ff74      	beqw 43288 <open+0x164>                     
   43316:	6000 ff2c      	braw 43244 <open+0x120>                     
      rc = errno;                                                     
      goto done;                                                      
    }                                                                 
                                                                      
    /* If the file does not exist and we are not trying to create it--> error */
    if ( !(flags & O_CREAT) ) {                                       
   4331a:	0802 0009      	btst #9,%d2                                 
   4331e:	662a           	bnes 4334a <open+0x226>                     
   43320:	97cb           	subal %a3,%a3                               
   43322:	7402           	moveq #2,%d2                                
   43324:	6000 ff1e      	braw 43244 <open+0x120>                     
   */                                                                 
                                                                      
  if ( (flags & O_TRUNC) == O_TRUNC ) {                               
    rc = ftruncate( iop - rtems_libio_iops, 0 );                      
    if ( rc ) {                                                       
      if(errno) rc = errno;                                           
   43328:	2043           	moveal %d3,%a0                              <== NOT EXECUTED
      close( iop - rtems_libio_iops );                                
   4332a:	97cb           	subal %a3,%a3                               <== NOT EXECUTED
   */                                                                 
                                                                      
  if ( (flags & O_TRUNC) == O_TRUNC ) {                               
    rc = ftruncate( iop - rtems_libio_iops, 0 );                      
    if ( rc ) {                                                       
      if(errno) rc = errno;                                           
   4332c:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4332e:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
      close( iop - rtems_libio_iops );                                
   43330:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   43332:	90b9 0005 ee18 	subl 5ee18 <rtems_libio_iops>,%d0           <== NOT EXECUTED
   43338:	95ca           	subal %a2,%a2                               <== NOT EXECUTED
   4333a:	ec80           	asrl #6,%d0                                 <== NOT EXECUTED
   */                                                                 
                                                                      
  if ( (flags & O_TRUNC) == O_TRUNC ) {                               
    rc = ftruncate( iop - rtems_libio_iops, 0 );                      
    if ( rc ) {                                                       
      if(errno) rc = errno;                                           
   4333c:	2410           	movel %a0@,%d2                              <== NOT EXECUTED
      close( iop - rtems_libio_iops );                                
   4333e:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   43340:	4eb9 0004 a654 	jsr 4a654 <close>                           <== NOT EXECUTED
   43346:	588f           	addql #4,%sp                                <== NOT EXECUTED
   43348:	6094           	bras 432de <open+0x1ba>                     <== NOT EXECUTED
      rc = ENOENT;                                                    
      goto done;                                                      
    }                                                                 
                                                                      
    /* Create the node for the new regular file */                    
    rc = mknod( pathname, S_IFREG | mode, 0LL );                      
   4334a:	42a7           	clrl %sp@-                                  
   4334c:	2005           	movel %d5,%d0                               
   4334e:	42a7           	clrl %sp@-                                  
   43350:	08c0 000f      	bset #15,%d0                                
   43354:	2f00           	movel %d0,%sp@-                             
   43356:	2f04           	movel %d4,%sp@-                             
   43358:	4eb9 0004 29a8 	jsr 429a8 <mknod>                           
    if ( rc ) {                                                       
   4335e:	4fef 0010      	lea %sp@(16),%sp                            
   43362:	4a80           	tstl %d0                                    
   43364:	66a2           	bnes 43308 <open+0x1e4>                     
      rc = errno;                                                     
      goto done;                                                      
    }                                                                 
                                                                      
    /* Sanity check to see if the file name exists after the mknod() */
    status = rtems_filesystem_evaluate_path( pathname, strlen( pathname ), 0x0, &loc, true );
   43366:	2f04           	movel %d4,%sp@-                             
   43368:	4e95           	jsr %a5@                                    
   4336a:	7201           	moveq #1,%d1                                
   4336c:	2e81           	movel %d1,%sp@                              
   4336e:	2f0b           	movel %a3,%sp@-                             
   43370:	42a7           	clrl %sp@-                                  
   43372:	2f00           	movel %d0,%sp@-                             
   43374:	2f04           	movel %d4,%sp@-                             
   43376:	4e94           	jsr %a4@                                    
    if ( status != 0 ) {   /* The file did not exist */               
   43378:	4fef 0014      	lea %sp@(20),%sp                            
   4337c:	4a80           	tstl %d0                                    
   4337e:	6700 fe1e      	beqw 4319e <open+0x7a>                      
   43382:	97cb           	subal %a3,%a3                               <== NOT EXECUTED
   43384:	740d           	moveq #13,%d2                               <== NOT EXECUTED
   43386:	6000 febc      	braw 43244 <open+0x120>                     <== NOT EXECUTED
                                                                      
000430b0 <open_dev_console>:                                          
                                                                      
/*                                                                    
 *  This is a replaceable stub which opens the console, if present.   
 */                                                                   
void open_dev_console(void)                                           
{                                                                     
   430b0:	4e56 0000      	linkw %fp,#0                                
   430b4:	2f0a           	movel %a2,%sp@-                             
  int      stderr_fd;                                                 
                                                                      
  /*                                                                  
   * Attempt to open /dev/console.                                    
   */                                                                 
  if ((stdin_fd = open("/dev/console", O_RDONLY, 0)) == -1) {         
   430b6:	45f9 0004 3124 	lea 43124 <open>,%a2                        
   430bc:	42a7           	clrl %sp@-                                  
   430be:	42a7           	clrl %sp@-                                  
   430c0:	4879 0005 c15c 	pea 5c15c <CSWTCH.59+0x100>                 
   430c6:	4e92           	jsr %a2@                                    
   430c8:	4fef 000c      	lea %sp@(12),%sp                            
   430cc:	72ff           	moveq #-1,%d1                               
   430ce:	b280           	cmpl %d0,%d1                                
   430d0:	6730           	beqs 43102 <open_dev_console+0x52>          
                                                                      
  /*                                                                  
   *  But if we find /dev/console once, we better find it twice more  
   *  or something is REALLY wrong.                                   
   */                                                                 
  if ((stdout_fd = open("/dev/console", O_WRONLY, 0)) == -1)          
   430d2:	42a7           	clrl %sp@-                                  
   430d4:	4878 0001      	pea 1 <ADD>                                 
   430d8:	4879 0005 c15c 	pea 5c15c <CSWTCH.59+0x100>                 
   430de:	4e92           	jsr %a2@                                    
   430e0:	4fef 000c      	lea %sp@(12),%sp                            
   430e4:	72ff           	moveq #-1,%d1                               
   430e6:	b280           	cmpl %d0,%d1                                
   430e8:	672c           	beqs 43116 <open_dev_console+0x66>          
    rtems_fatal_error_occurred( 0x55544431 );  /* error STD1 */       
                                                                      
  if ((stderr_fd = open("/dev/console", O_WRONLY, 0)) == -1)          
   430ea:	42a7           	clrl %sp@-                                  
   430ec:	4878 0001      	pea 1 <ADD>                                 
   430f0:	4879 0005 c15c 	pea 5c15c <CSWTCH.59+0x100>                 
   430f6:	4e92           	jsr %a2@                                    
   430f8:	4fef 000c      	lea %sp@(12),%sp                            
   430fc:	72ff           	moveq #-1,%d1                               
   430fe:	b280           	cmpl %d0,%d1                                
   43100:	6708           	beqs 4310a <open_dev_console+0x5a>          
    rtems_fatal_error_occurred( 0x55544432 );  /* error STD2 */       
}                                                                     
   43102:	246e fffc      	moveal %fp@(-4),%a2                         
   43106:	4e5e           	unlk %fp                                    
   43108:	4e75           	rts                                         
   */                                                                 
  if ((stdout_fd = open("/dev/console", O_WRONLY, 0)) == -1)          
    rtems_fatal_error_occurred( 0x55544431 );  /* error STD1 */       
                                                                      
  if ((stderr_fd = open("/dev/console", O_WRONLY, 0)) == -1)          
    rtems_fatal_error_occurred( 0x55544432 );  /* error STD2 */       
   4310a:	2f3c 5554 4432 	movel #1431585842,%sp@-                     <== NOT EXECUTED
   43110:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
  /*                                                                  
   *  But if we find /dev/console once, we better find it twice more  
   *  or something is REALLY wrong.                                   
   */                                                                 
  if ((stdout_fd = open("/dev/console", O_WRONLY, 0)) == -1)          
    rtems_fatal_error_occurred( 0x55544431 );  /* error STD1 */       
   43116:	2f3c 5554 4431 	movel #1431585841,%sp@-                     <== NOT EXECUTED
   4311c:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
	...                                                                  
                                                                      
00043bec <oproc>:                                                     
/*                                                                    
 * Handle output processing                                           
 */                                                                   
static void                                                           
oproc (unsigned char c, struct rtems_termios_tty *tty)                
{                                                                     
   43bec:	4e56 fff0      	linkw %fp,#-16                              
   43bf0:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     
   43bf4:	246e 000c      	moveal %fp@(12),%a2                         
   43bf8:	47f9 0004 3ac4 	lea 43ac4 <rtems_termios_puts>,%a3          
   43bfe:	202e 0008      	movel %fp@(8),%d0                           
	int	i;                                                               
                                                                      
	if (tty->termios.c_oflag & OPOST) {                                  
   43c02:	222a 0034      	movel %a2@(52),%d1                          
/*                                                                    
 * Handle output processing                                           
 */                                                                   
static void                                                           
oproc (unsigned char c, struct rtems_termios_tty *tty)                
{                                                                     
   43c06:	1d40 fffe      	moveb %d0,%fp@(-2)                          
	int	i;                                                               
                                                                      
	if (tty->termios.c_oflag & OPOST) {                                  
   43c0a:	0801 0000      	btst #0,%d1                                 
   43c0e:	6744           	beqs 43c54 <oproc+0x68>                     
		switch (c) {                                                        
   43c10:	7409           	moveq #9,%d2                                
   43c12:	0280 0000 00ff 	andil #255,%d0                              
   43c18:	b480           	cmpl %d0,%d2                                
   43c1a:	6700 00f8      	beqw 43d14 <oproc+0x128>                    
   43c1e:	644e           	bccs 43c6e <oproc+0x82>                     
   43c20:	740a           	moveq #10,%d2                               
   43c22:	b480           	cmpl %d0,%d2                                
   43c24:	6774           	beqs 43c9a <oproc+0xae>                     
   43c26:	143c 000d      	moveb #13,%d2                               
   43c2a:	b480           	cmpl %d0,%d2                                
   43c2c:	6700 00a8      	beqw 43cd6 <oproc+0xea>                     
			if (tty->column > 0)                                               
				tty->column--;                                                    
			break;                                                             
                                                                      
		default:                                                            
			if (tty->termios.c_oflag & OLCUC)                                  
   43c30:	0801 0001      	btst #1,%d1                                 
   43c34:	6600 011a      	bnew 43d50 <oproc+0x164>                    
   43c38:	2079 0005 d8ec 	moveal 5d8ec <__ctype_ptr__>,%a0            
   43c3e:	47f9 0004 3ac4 	lea 43ac4 <rtems_termios_puts>,%a3          
				c = toupper(c);                                                   
			if (!iscntrl(c))                                                   
   43c44:	1030 0801      	moveb %a0@(00000001,%d0:l),%d0              
   43c48:	49c0           	extbl %d0                                   
   43c4a:	0800 0005      	btst #5,%d0                                 
   43c4e:	6604           	bnes 43c54 <oproc+0x68>                     
				tty->column++;                                                    
   43c50:	52aa 0028      	addql #1,%a2@(40)                           
			break;                                                             
		}                                                                   
	}                                                                    
	rtems_termios_puts (&c, 1, tty);                                     
   43c54:	2f0a           	movel %a2,%sp@-                             
   43c56:	4878 0001      	pea 1 <ADD>                                 
   43c5a:	486e fffe      	pea %fp@(-2)                                
   43c5e:	4e93           	jsr %a3@                                    
   43c60:	4fef 000c      	lea %sp@(12),%sp                            
}                                                                     
   43c64:	4cee 0c04 fff0 	moveml %fp@(-16),%d2/%a2-%a3                
   43c6a:	4e5e           	unlk %fp                                    
   43c6c:	4e75           	rts                                         
oproc (unsigned char c, struct rtems_termios_tty *tty)                
{                                                                     
	int	i;                                                               
                                                                      
	if (tty->termios.c_oflag & OPOST) {                                  
		switch (c) {                                                        
   43c6e:	143c 0008      	moveb #8,%d2                                
   43c72:	b480           	cmpl %d0,%d2                                
   43c74:	66ba           	bnes 43c30 <oproc+0x44>                     
			}                                                                  
			tty->column += i;                                                  
			break;                                                             
                                                                      
		case '\b':                                                          
			if (tty->column > 0)                                               
   43c76:	202a 0028      	movel %a2@(40),%d0                          <== NOT EXECUTED
   43c7a:	47f9 0004 3ac4 	lea 43ac4 <rtems_termios_puts>,%a3          <== NOT EXECUTED
   43c80:	6fd2           	bles 43c54 <oproc+0x68>                     <== NOT EXECUTED
				tty->column--;                                                    
   43c82:	5380           	subql #1,%d0                                <== NOT EXECUTED
   43c84:	2540 0028      	movel %d0,%a2@(40)                          <== NOT EXECUTED
			if (!iscntrl(c))                                                   
				tty->column++;                                                    
			break;                                                             
		}                                                                   
	}                                                                    
	rtems_termios_puts (&c, 1, tty);                                     
   43c88:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   43c8a:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   43c8e:	486e fffe      	pea %fp@(-2)                                <== NOT EXECUTED
   43c92:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   43c94:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   43c98:	60ca           	bras 43c64 <oproc+0x78>                     <== NOT EXECUTED
	int	i;                                                               
                                                                      
	if (tty->termios.c_oflag & OPOST) {                                  
		switch (c) {                                                        
		case '\n':                                                          
			if (tty->termios.c_oflag & ONLRET)                                 
   43c9a:	0801 0005      	btst #5,%d1                                 
   43c9e:	6704           	beqs 43ca4 <oproc+0xb8>                     
				tty->column = 0;                                                  
   43ca0:	42aa 0028      	clrl %a2@(40)                               <== NOT EXECUTED
   43ca4:	47f9 0004 3ac4 	lea 43ac4 <rtems_termios_puts>,%a3          
			if (tty->termios.c_oflag & ONLCR) {                                
   43caa:	44c1           	movew %d1,%ccr                              
   43cac:	66a6           	bnes 43c54 <oproc+0x68>                     
				rtems_termios_puts ("\r", 1, tty);                                
   43cae:	2f0a           	movel %a2,%sp@-                             
   43cb0:	4878 0001      	pea 1 <ADD>                                 
   43cb4:	4879 0005 c670 	pea 5c670 <rtems_status_assoc+0x16a>        
   43cba:	4e93           	jsr %a3@                                    
				tty->column = 0;                                                  
   43cbc:	4fef 000c      	lea %sp@(12),%sp                            
   43cc0:	42aa 0028      	clrl %a2@(40)                               
			if (!iscntrl(c))                                                   
				tty->column++;                                                    
			break;                                                             
		}                                                                   
	}                                                                    
	rtems_termios_puts (&c, 1, tty);                                     
   43cc4:	2f0a           	movel %a2,%sp@-                             
   43cc6:	4878 0001      	pea 1 <ADD>                                 
   43cca:	486e fffe      	pea %fp@(-2)                                
   43cce:	4e93           	jsr %a3@                                    
   43cd0:	4fef 000c      	lea %sp@(12),%sp                            
   43cd4:	608e           	bras 43c64 <oproc+0x78>                     
				tty->column = 0;                                                  
			}                                                                  
			break;                                                             
                                                                      
		case '\r':                                                          
			if ((tty->termios.c_oflag & ONOCR) && (tty->column == 0))          
   43cd6:	0801 0004      	btst #4,%d1                                 <== NOT EXECUTED
   43cda:	6706           	beqs 43ce2 <oproc+0xf6>                     <== NOT EXECUTED
   43cdc:	4aaa 0028      	tstl %a2@(40)                               <== NOT EXECUTED
   43ce0:	6782           	beqs 43c64 <oproc+0x78>                     <== NOT EXECUTED
				return;                                                           
			if (tty->termios.c_oflag & OCRNL) {                                
   43ce2:	44c1           	movew %d1,%ccr                              <== NOT EXECUTED
   43ce4:	6a00 0090      	bplw 43d76 <oproc+0x18a>                    <== NOT EXECUTED
   43ce8:	47f9 0004 3ac4 	lea 43ac4 <rtems_termios_puts>,%a3          <== NOT EXECUTED
				c = '\n';                                                         
   43cee:	700a           	moveq #10,%d0                               <== NOT EXECUTED
   43cf0:	1d40 fffe      	moveb %d0,%fp@(-2)                          <== NOT EXECUTED
				if (tty->termios.c_oflag & ONLRET)                                
   43cf4:	0801 0005      	btst #5,%d1                                 <== NOT EXECUTED
   43cf8:	6700 ff5a      	beqw 43c54 <oproc+0x68>                     <== NOT EXECUTED
					tty->column = 0;                                                 
   43cfc:	42aa 0028      	clrl %a2@(40)                               <== NOT EXECUTED
			if (!iscntrl(c))                                                   
				tty->column++;                                                    
			break;                                                             
		}                                                                   
	}                                                                    
	rtems_termios_puts (&c, 1, tty);                                     
   43d00:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   43d02:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   43d06:	486e fffe      	pea %fp@(-2)                                <== NOT EXECUTED
   43d0a:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   43d0c:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   43d10:	6000 ff52      	braw 43c64 <oproc+0x78>                     <== NOT EXECUTED
			}                                                                  
			tty->column = 0;                                                   
			break;                                                             
                                                                      
		case '\t':                                                          
			i = 8 - (tty->column & 7);                                         
   43d14:	202a 0028      	movel %a2@(40),%d0                          
   43d18:	7407           	moveq #7,%d2                                
   43d1a:	307c 0008      	moveaw #8,%a0                               
   43d1e:	c480           	andl %d0,%d2                                
			if ((tty->termios.c_oflag & TABDLY) == XTABS) {                    
   43d20:	0281 0000 1800 	andil #6144,%d1                             
			}                                                                  
			tty->column = 0;                                                   
			break;                                                             
                                                                      
		case '\t':                                                          
			i = 8 - (tty->column & 7);                                         
   43d26:	91c2           	subal %d2,%a0                               
			if ((tty->termios.c_oflag & TABDLY) == XTABS) {                    
   43d28:	0c81 0000 1800 	cmpil #6144,%d1                             
   43d2e:	6778           	beqs 43da8 <oproc+0x1bc>                    
				tty->column += i;                                                 
				rtems_termios_puts ( "        ",  i, tty);                        
				return;                                                           
			}                                                                  
			tty->column += i;                                                  
   43d30:	d1c0           	addal %d0,%a0                               <== NOT EXECUTED
   43d32:	47f9 0004 3ac4 	lea 43ac4 <rtems_termios_puts>,%a3          <== NOT EXECUTED
   43d38:	2548 0028      	movel %a0,%a2@(40)                          <== NOT EXECUTED
			if (!iscntrl(c))                                                   
				tty->column++;                                                    
			break;                                                             
		}                                                                   
	}                                                                    
	rtems_termios_puts (&c, 1, tty);                                     
   43d3c:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   43d3e:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   43d42:	486e fffe      	pea %fp@(-2)                                <== NOT EXECUTED
   43d46:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   43d48:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   43d4c:	6000 ff16      	braw 43c64 <oproc+0x78>                     <== NOT EXECUTED
				tty->column--;                                                    
			break;                                                             
                                                                      
		default:                                                            
			if (tty->termios.c_oflag & OLCUC)                                  
				c = toupper(c);                                                   
   43d50:	2079 0005 d8ec 	moveal 5d8ec <__ctype_ptr__>,%a0            <== NOT EXECUTED
   43d56:	7403           	moveq #3,%d2                                <== NOT EXECUTED
   43d58:	1230 0801      	moveb %a0@(00000001,%d0:l),%d1              <== NOT EXECUTED
   43d5c:	49c1           	extbl %d1                                   <== NOT EXECUTED
   43d5e:	c282           	andl %d2,%d1                                <== NOT EXECUTED
   43d60:	143c 0002      	moveb #2,%d2                                <== NOT EXECUTED
   43d64:	b481           	cmpl %d1,%d2                                <== NOT EXECUTED
   43d66:	672c           	beqs 43d94 <oproc+0x1a8>                    <== NOT EXECUTED
   43d68:	1d40 fffe      	moveb %d0,%fp@(-2)                          <== NOT EXECUTED
   43d6c:	0280 0000 00ff 	andil #255,%d0                              <== NOT EXECUTED
   43d72:	6000 feca      	braw 43c3e <oproc+0x52>                     <== NOT EXECUTED
				c = '\n';                                                         
				if (tty->termios.c_oflag & ONLRET)                                
					tty->column = 0;                                                 
				break;                                                            
			}                                                                  
			tty->column = 0;                                                   
   43d76:	42aa 0028      	clrl %a2@(40)                               <== NOT EXECUTED
   43d7a:	47f9 0004 3ac4 	lea 43ac4 <rtems_termios_puts>,%a3          <== NOT EXECUTED
			if (!iscntrl(c))                                                   
				tty->column++;                                                    
			break;                                                             
		}                                                                   
	}                                                                    
	rtems_termios_puts (&c, 1, tty);                                     
   43d80:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   43d82:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   43d86:	486e fffe      	pea %fp@(-2)                                <== NOT EXECUTED
   43d8a:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   43d8c:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   43d90:	6000 fed2      	braw 43c64 <oproc+0x78>                     <== NOT EXECUTED
				tty->column--;                                                    
			break;                                                             
                                                                      
		default:                                                            
			if (tty->termios.c_oflag & OLCUC)                                  
				c = toupper(c);                                                   
   43d94:	0680 ffff ffe0 	addil #-32,%d0                              <== NOT EXECUTED
   43d9a:	1d40 fffe      	moveb %d0,%fp@(-2)                          <== NOT EXECUTED
   43d9e:	0280 0000 00ff 	andil #255,%d0                              <== NOT EXECUTED
   43da4:	6000 fe98      	braw 43c3e <oproc+0x52>                     <== NOT EXECUTED
                                                                      
		case '\t':                                                          
			i = 8 - (tty->column & 7);                                         
			if ((tty->termios.c_oflag & TABDLY) == XTABS) {                    
				tty->column += i;                                                 
				rtems_termios_puts ( "        ",  i, tty);                        
   43da8:	2f0a           	movel %a2,%sp@-                             
			break;                                                             
                                                                      
		case '\t':                                                          
			i = 8 - (tty->column & 7);                                         
			if ((tty->termios.c_oflag & TABDLY) == XTABS) {                    
				tty->column += i;                                                 
   43daa:	d088           	addl %a0,%d0                                
   43dac:	2540 0028      	movel %d0,%a2@(40)                          
				rtems_termios_puts ( "        ",  i, tty);                        
   43db0:	2f08           	movel %a0,%sp@-                             
   43db2:	4879 0005 c672 	pea 5c672 <rtems_status_assoc+0x16c>        
   43db8:	4eb9 0004 3ac4 	jsr 43ac4 <rtems_termios_puts>              
				return;                                                           
   43dbe:	4fef 000c      	lea %sp@(12),%sp                            
				tty->column++;                                                    
			break;                                                             
		}                                                                   
	}                                                                    
	rtems_termios_puts (&c, 1, tty);                                     
}                                                                     
   43dc2:	4cee 0c04 fff0 	moveml %fp@(-16),%d2/%a2-%a3                
   43dc8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004e178 <pipe_create>:                                               
 * Called by pipe() to create an anonymous pipe.                      
 */                                                                   
int pipe_create(                                                      
  int filsdes[2]                                                      
)                                                                     
{                                                                     
   4e178:	4e56 ffcc      	linkw %fp,#-52                              
   4e17c:	48d7 3c00      	moveml %a2-%a5,%sp@                         
  rtems_filesystem_location_info_t loc;                               
  rtems_libio_t *iop;                                                 
  int err = 0;                                                        
  /* Create /tmp if not exists */                                     
  if (rtems_filesystem_evaluate_path("/tmp", 3, RTEMS_LIBIO_PERMS_RWX, &loc, TRUE)
   4e180:	4878 0001      	pea 1 <ADD>                                 
   4e184:	45ee ffdc      	lea %fp@(-36),%a2                           
 * Called by pipe() to create an anonymous pipe.                      
 */                                                                   
int pipe_create(                                                      
  int filsdes[2]                                                      
)                                                                     
{                                                                     
   4e188:	286e 0008      	moveal %fp@(8),%a4                          
  rtems_filesystem_location_info_t loc;                               
  rtems_libio_t *iop;                                                 
  int err = 0;                                                        
  /* Create /tmp if not exists */                                     
  if (rtems_filesystem_evaluate_path("/tmp", 3, RTEMS_LIBIO_PERMS_RWX, &loc, TRUE)
   4e18c:	2f0a           	movel %a2,%sp@-                             
   4e18e:	4878 0007      	pea 7 <TRUNCDFSF>                           
   4e192:	4878 0003      	pea 3 <DIVIDE>                              
   4e196:	4879 0005 cd12 	pea 5cd12 <__FUNCTION__.5853+0x11>          
   4e19c:	4eb9 0004 2720 	jsr 42720 <rtems_filesystem_evaluate_path>  
   4e1a2:	4fef 0014      	lea %sp@(20),%sp                            
   4e1a6:	4a80           	tstl %d0                                    
   4e1a8:	6600 00e0      	bnew 4e28a <pipe_create+0x112>              
      return -1;                                                      
    if (mkdir("/tmp", S_IRWXU|S_IRWXG|S_IRWXO|S_ISVTX) != 0)          
      return -1;                                                      
  }                                                                   
  else                                                                
    rtems_filesystem_freenode(&loc);                                  
   4e1ac:	206e ffe8      	moveal %fp@(-24),%a0                        <== NOT EXECUTED
   4e1b0:	47f9 0004 ebf4 	lea 4ebf4 <__errno>,%a3                     <== NOT EXECUTED
   4e1b6:	4a88           	tstl %a0                                    <== NOT EXECUTED
   4e1b8:	670e           	beqs 4e1c8 <pipe_create+0x50>               <== NOT EXECUTED
   4e1ba:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   4e1be:	4a88           	tstl %a0                                    <== NOT EXECUTED
   4e1c0:	6706           	beqs 4e1c8 <pipe_create+0x50>               <== NOT EXECUTED
   4e1c2:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4e1c4:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4e1c6:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  /* /tmp/.fifoXXXX */                                                
  char fifopath[15];                                                  
  memcpy(fifopath, "/tmp/.fifo", 10);                                 
   4e1c8:	45ee fff1      	lea %fp@(-15),%a2                           <== NOT EXECUTED
  sprintf(fifopath + 10, "%04x", rtems_pipe_no ++);                   
   4e1cc:	3039 0005 e72c 	movew 5e72c <rtems_pipe_no>,%d0             <== NOT EXECUTED
  else                                                                
    rtems_filesystem_freenode(&loc);                                  
                                                                      
  /* /tmp/.fifoXXXX */                                                
  char fifopath[15];                                                  
  memcpy(fifopath, "/tmp/.fifo", 10);                                 
   4e1d2:	24bc 2f74 6d70 	movel #796159344,%a2@                       <== NOT EXECUTED
  sprintf(fifopath + 10, "%04x", rtems_pipe_no ++);                   
   4e1d8:	2200           	movel %d0,%d1                               <== NOT EXECUTED
   4e1da:	5281           	addql #1,%d1                                <== NOT EXECUTED
   4e1dc:	3f00           	movew %d0,%sp@-                             <== NOT EXECUTED
  else                                                                
    rtems_filesystem_freenode(&loc);                                  
                                                                      
  /* /tmp/.fifoXXXX */                                                
  char fifopath[15];                                                  
  memcpy(fifopath, "/tmp/.fifo", 10);                                 
   4e1de:	203c 2f2e 6669 	movel #791570025,%d0                        <== NOT EXECUTED
   4e1e4:	2d40 fff5      	movel %d0,%fp@(-11)                         <== NOT EXECUTED
  sprintf(fifopath + 10, "%04x", rtems_pipe_no ++);                   
   4e1e8:	4267           	clrw %sp@-                                  <== NOT EXECUTED
   4e1ea:	33c1 0005 e72c 	movew %d1,5e72c <rtems_pipe_no>             <== NOT EXECUTED
  else                                                                
    rtems_filesystem_freenode(&loc);                                  
                                                                      
  /* /tmp/.fifoXXXX */                                                
  char fifopath[15];                                                  
  memcpy(fifopath, "/tmp/.fifo", 10);                                 
   4e1f0:	323c 666f      	movew #26223,%d1                            <== NOT EXECUTED
  sprintf(fifopath + 10, "%04x", rtems_pipe_no ++);                   
   4e1f4:	4879 0005 cd17 	pea 5cd17 <__FUNCTION__.5853+0x16>          <== NOT EXECUTED
   4e1fa:	486e fffb      	pea %fp@(-5)                                <== NOT EXECUTED
  else                                                                
    rtems_filesystem_freenode(&loc);                                  
                                                                      
  /* /tmp/.fifoXXXX */                                                
  char fifopath[15];                                                  
  memcpy(fifopath, "/tmp/.fifo", 10);                                 
   4e1fe:	3d41 fff9      	movew %d1,%fp@(-7)                          <== NOT EXECUTED
  sprintf(fifopath + 10, "%04x", rtems_pipe_no ++);                   
   4e202:	4eb9 0004 f8ec 	jsr 4f8ec <sprintf>                         <== NOT EXECUTED
                                                                      
  /* Try creating FIFO file until find an available file name */      
  while (mkfifo(fifopath, S_IRUSR|S_IWUSR) != 0) {                    
   4e208:	4878 0180      	pea 180 <DBL_MANT_DIG+0x14b>                <== NOT EXECUTED
   4e20c:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4e20e:	4eb9 0004 e3a8 	jsr 4e3a8 <mkfifo>                          <== NOT EXECUTED
   4e214:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   4e218:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4e21a:	6660           	bnes 4e27c <pipe_create+0x104>              <== NOT EXECUTED
    return -1;                                                        
    sprintf(fifopath + 10, "%04x", rtems_pipe_no ++);                 
  }                                                                   
                                                                      
  /* Non-blocking open to avoid waiting for writers */                
  filsdes[0] = open(fifopath, O_RDONLY | O_NONBLOCK);                 
   4e21c:	4878 4000      	pea 4000 <D_MAX_EXP+0x3801>                 
   4e220:	4bf9 0004 3124 	lea 43124 <open>,%a5                        
   4e226:	2f0a           	movel %a2,%sp@-                             
   4e228:	4e95           	jsr %a5@                                    
  if (filsdes[0] < 0) {                                               
   4e22a:	508f           	addql #8,%sp                                
    return -1;                                                        
    sprintf(fifopath + 10, "%04x", rtems_pipe_no ++);                 
  }                                                                   
                                                                      
  /* Non-blocking open to avoid waiting for writers */                
  filsdes[0] = open(fifopath, O_RDONLY | O_NONBLOCK);                 
   4e22c:	2880           	movel %d0,%a4@                              
  if (filsdes[0] < 0) {                                               
   4e22e:	6d00 00e0      	bltw 4e310 <pipe_create+0x198>              
     the file node will be deleted after it is closed by all. */      
    unlink(fifopath);                                                 
  }                                                                   
  else {                                                              
  /* Reset open file to blocking mode */                              
    iop = rtems_libio_iop(filsdes[0]);                                
   4e232:	b0b9 0005 d714 	cmpl 5d714 <rtems_libio_number_iops>,%d0    <== NOT EXECUTED
   4e238:	6400 00d0      	bccw 4e30a <pipe_create+0x192>              <== NOT EXECUTED
   4e23c:	2079 0005 ee18 	moveal 5ee18 <rtems_libio_iops>,%a0         <== NOT EXECUTED
   4e242:	ed88           	lsll #6,%d0                                 <== NOT EXECUTED
   4e244:	d1c0           	addal %d0,%a0                               <== NOT EXECUTED
    iop->flags &= ~LIBIO_FLAGS_NO_DELAY;                              
   4e246:	70fe           	moveq #-2,%d0                               <== NOT EXECUTED
   4e248:	c1a8 0014      	andl %d0,%a0@(20)                           <== NOT EXECUTED
                                                                      
    filsdes[1] = open(fifopath, O_WRONLY);                            
   4e24c:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   4e250:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4e252:	4e95           	jsr %a5@                                    <== NOT EXECUTED
                                                                      
    if (filsdes[1] < 0) {                                             
   4e254:	508f           	addql #8,%sp                                <== NOT EXECUTED
  else {                                                              
  /* Reset open file to blocking mode */                              
    iop = rtems_libio_iop(filsdes[0]);                                
    iop->flags &= ~LIBIO_FLAGS_NO_DELAY;                              
                                                                      
    filsdes[1] = open(fifopath, O_WRONLY);                            
   4e256:	2940 0004      	movel %d0,%a4@(4)                           <== NOT EXECUTED
                                                                      
    if (filsdes[1] < 0) {                                             
   4e25a:	6d00 00ce      	bltw 4e32a <pipe_create+0x1b2>              <== NOT EXECUTED
    err = errno;                                                      
    close(filsdes[0]);                                                
    }                                                                 
  unlink(fifopath);                                                   
   4e25e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
    iop = rtems_libio_iop(filsdes[0]);                                
    iop->flags &= ~LIBIO_FLAGS_NO_DELAY;                              
                                                                      
    filsdes[1] = open(fifopath, O_WRONLY);                            
                                                                      
    if (filsdes[1] < 0) {                                             
   4e260:	9bcd           	subal %a5,%a5                               <== NOT EXECUTED
    err = errno;                                                      
    close(filsdes[0]);                                                
    }                                                                 
  unlink(fifopath);                                                   
   4e262:	4eb9 0004 e3c8 	jsr 4e3c8 <unlink>                          <== NOT EXECUTED
   4e268:	588f           	addql #4,%sp                                <== NOT EXECUTED
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one(err);                          
   4e26a:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   4e26c:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4e26e:	208d           	movel %a5,%a0@                              <== NOT EXECUTED
}                                                                     
   4e270:	70ff           	moveq #-1,%d0                               
   4e272:	4cee 3c00 ffcc 	moveml %fp@(-52),%a2-%a5                    
   4e278:	4e5e           	unlk %fp                                    
   4e27a:	4e75           	rts                                         
  memcpy(fifopath, "/tmp/.fifo", 10);                                 
  sprintf(fifopath + 10, "%04x", rtems_pipe_no ++);                   
                                                                      
  /* Try creating FIFO file until find an available file name */      
  while (mkfifo(fifopath, S_IRUSR|S_IWUSR) != 0) {                    
    if (errno != EEXIST){                                             
   4e27c:	4e93           	jsr %a3@                                    <== NOT EXECUTED
    }                                                                 
  unlink(fifopath);                                                   
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one(err);                          
}                                                                     
   4e27e:	4cee 3c00 ffcc 	moveml %fp@(-52),%a2-%a5                    <== NOT EXECUTED
   4e284:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   4e286:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4e288:	4e75           	rts                                         <== NOT EXECUTED
  rtems_libio_t *iop;                                                 
  int err = 0;                                                        
  /* Create /tmp if not exists */                                     
  if (rtems_filesystem_evaluate_path("/tmp", 3, RTEMS_LIBIO_PERMS_RWX, &loc, TRUE)
      != 0) {                                                         
    if (errno != ENOENT)                                              
   4e28a:	47f9 0004 ebf4 	lea 4ebf4 <__errno>,%a3                     
   4e290:	4e93           	jsr %a3@                                    
   4e292:	7202           	moveq #2,%d1                                
   4e294:	2040           	moveal %d0,%a0                              
   4e296:	b290           	cmpl %a0@,%d1                               
   4e298:	66d6           	bnes 4e270 <pipe_create+0xf8>               
      return -1;                                                      
    if (mkdir("/tmp", S_IRWXU|S_IRWXG|S_IRWXO|S_ISVTX) != 0)          
   4e29a:	4878 03ff      	pea 3ff <D_BIAS+0x1>                        
   4e29e:	4879 0005 cd12 	pea 5cd12 <__FUNCTION__.5853+0x11>          
   4e2a4:	4eb9 0004 2988 	jsr 42988 <mkdir>                           
   4e2aa:	508f           	addql #8,%sp                                
   4e2ac:	4a80           	tstl %d0                                    
   4e2ae:	66c0           	bnes 4e270 <pipe_create+0xf8>               
  else                                                                
    rtems_filesystem_freenode(&loc);                                  
                                                                      
  /* /tmp/.fifoXXXX */                                                
  char fifopath[15];                                                  
  memcpy(fifopath, "/tmp/.fifo", 10);                                 
   4e2b0:	45ee fff1      	lea %fp@(-15),%a2                           
  sprintf(fifopath + 10, "%04x", rtems_pipe_no ++);                   
   4e2b4:	3039 0005 e72c 	movew 5e72c <rtems_pipe_no>,%d0             
  else                                                                
    rtems_filesystem_freenode(&loc);                                  
                                                                      
  /* /tmp/.fifoXXXX */                                                
  char fifopath[15];                                                  
  memcpy(fifopath, "/tmp/.fifo", 10);                                 
   4e2ba:	24bc 2f74 6d70 	movel #796159344,%a2@                       
  sprintf(fifopath + 10, "%04x", rtems_pipe_no ++);                   
   4e2c0:	2200           	movel %d0,%d1                               
   4e2c2:	5281           	addql #1,%d1                                
   4e2c4:	3f00           	movew %d0,%sp@-                             
  else                                                                
    rtems_filesystem_freenode(&loc);                                  
                                                                      
  /* /tmp/.fifoXXXX */                                                
  char fifopath[15];                                                  
  memcpy(fifopath, "/tmp/.fifo", 10);                                 
   4e2c6:	203c 2f2e 6669 	movel #791570025,%d0                        
   4e2cc:	2d40 fff5      	movel %d0,%fp@(-11)                         
  sprintf(fifopath + 10, "%04x", rtems_pipe_no ++);                   
   4e2d0:	4267           	clrw %sp@-                                  
   4e2d2:	33c1 0005 e72c 	movew %d1,5e72c <rtems_pipe_no>             
  else                                                                
    rtems_filesystem_freenode(&loc);                                  
                                                                      
  /* /tmp/.fifoXXXX */                                                
  char fifopath[15];                                                  
  memcpy(fifopath, "/tmp/.fifo", 10);                                 
   4e2d8:	323c 666f      	movew #26223,%d1                            
  sprintf(fifopath + 10, "%04x", rtems_pipe_no ++);                   
   4e2dc:	4879 0005 cd17 	pea 5cd17 <__FUNCTION__.5853+0x16>          
   4e2e2:	486e fffb      	pea %fp@(-5)                                
  else                                                                
    rtems_filesystem_freenode(&loc);                                  
                                                                      
  /* /tmp/.fifoXXXX */                                                
  char fifopath[15];                                                  
  memcpy(fifopath, "/tmp/.fifo", 10);                                 
   4e2e6:	3d41 fff9      	movew %d1,%fp@(-7)                          
  sprintf(fifopath + 10, "%04x", rtems_pipe_no ++);                   
   4e2ea:	4eb9 0004 f8ec 	jsr 4f8ec <sprintf>                         
                                                                      
  /* Try creating FIFO file until find an available file name */      
  while (mkfifo(fifopath, S_IRUSR|S_IWUSR) != 0) {                    
   4e2f0:	4878 0180      	pea 180 <DBL_MANT_DIG+0x14b>                
   4e2f4:	2f0a           	movel %a2,%sp@-                             
   4e2f6:	4eb9 0004 e3a8 	jsr 4e3a8 <mkfifo>                          
   4e2fc:	4fef 0014      	lea %sp@(20),%sp                            
   4e300:	4a80           	tstl %d0                                    
   4e302:	6700 ff18      	beqw 4e21c <pipe_create+0xa4>               
   4e306:	6000 ff74      	braw 4e27c <pipe_create+0x104>              <== NOT EXECUTED
     the file node will be deleted after it is closed by all. */      
    unlink(fifopath);                                                 
  }                                                                   
  else {                                                              
  /* Reset open file to blocking mode */                              
    iop = rtems_libio_iop(filsdes[0]);                                
   4e30a:	91c8           	subal %a0,%a0                               <== NOT EXECUTED
   4e30c:	6000 ff38      	braw 4e246 <pipe_create+0xce>               <== NOT EXECUTED
  }                                                                   
                                                                      
  /* Non-blocking open to avoid waiting for writers */                
  filsdes[0] = open(fifopath, O_RDONLY | O_NONBLOCK);                 
  if (filsdes[0] < 0) {                                               
    err = errno;                                                      
   4e310:	4e93           	jsr %a3@                                    
   4e312:	2040           	moveal %d0,%a0                              
   4e314:	2a50           	moveal %a0@,%a5                             
    /* Delete file at errors, or else if pipe is successfully created 
     the file node will be deleted after it is closed by all. */      
    unlink(fifopath);                                                 
   4e316:	2f0a           	movel %a2,%sp@-                             
   4e318:	4eb9 0004 e3c8 	jsr 4e3c8 <unlink>                          
   4e31e:	588f           	addql #4,%sp                                
    close(filsdes[0]);                                                
    }                                                                 
  unlink(fifopath);                                                   
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one(err);                          
   4e320:	4e93           	jsr %a3@                                    
   4e322:	2040           	moveal %d0,%a0                              
   4e324:	208d           	movel %a5,%a0@                              
   4e326:	6000 ff48      	braw 4e270 <pipe_create+0xf8>               
    iop->flags &= ~LIBIO_FLAGS_NO_DELAY;                              
                                                                      
    filsdes[1] = open(fifopath, O_WRONLY);                            
                                                                      
    if (filsdes[1] < 0) {                                             
    err = errno;                                                      
   4e32a:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   4e32c:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4e32e:	2a50           	moveal %a0@,%a5                             <== NOT EXECUTED
    close(filsdes[0]);                                                
   4e330:	2f14           	movel %a4@,%sp@-                            <== NOT EXECUTED
   4e332:	4eb9 0004 a654 	jsr 4a654 <close>                           <== NOT EXECUTED
   4e338:	588f           	addql #4,%sp                                <== NOT EXECUTED
    }                                                                 
  unlink(fifopath);                                                   
   4e33a:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4e33c:	4eb9 0004 e3c8 	jsr 4e3c8 <unlink>                          <== NOT EXECUTED
   4e342:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4e344:	6000 ff24      	braw 4e26a <pipe_create+0xf2>               <== NOT EXECUTED
                                                                      
0004c762 <pipe_ioctl>:                                                
  pipe_control_t *pipe,                                               
  uint32_t        cmd,                                                
  void           *buffer,                                             
  rtems_libio_t  *iop                                                 
)                                                                     
{                                                                     
   4c762:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  if (cmd == FIONREAD) {                                              
   4c766:	203c 4004 667f 	movel #1074030207,%d0                       <== NOT EXECUTED
   4c76c:	b0ae 000c      	cmpl %fp@(12),%d0                           <== NOT EXECUTED
   4c770:	6706           	beqs 4c778 <pipe_ioctl+0x16>                <== NOT EXECUTED
   4c772:	70ea           	moveq #-22,%d0                              <== NOT EXECUTED
    PIPE_UNLOCK(pipe);                                                
    return 0;                                                         
  }                                                                   
                                                                      
  return -EINVAL;                                                     
}                                                                     
   4c774:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4c776:	4e75           	rts                                         <== NOT EXECUTED
  void           *buffer,                                             
  rtems_libio_t  *iop                                                 
)                                                                     
{                                                                     
  if (cmd == FIONREAD) {                                              
    if (buffer == NULL)                                               
   4c778:	4aae 0010      	tstl %fp@(16)                               <== NOT EXECUTED
   4c77c:	6606           	bnes 4c784 <pipe_ioctl+0x22>                <== NOT EXECUTED
   4c77e:	70f2           	moveq #-14,%d0                              <== NOT EXECUTED
    PIPE_UNLOCK(pipe);                                                
    return 0;                                                         
  }                                                                   
                                                                      
  return -EINVAL;                                                     
}                                                                     
   4c780:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4c782:	4e75           	rts                                         <== NOT EXECUTED
{                                                                     
  if (cmd == FIONREAD) {                                              
    if (buffer == NULL)                                               
      return -EFAULT;                                                 
                                                                      
    if (! PIPE_LOCK(pipe))                                            
   4c784:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4c786:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4c788:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
   4c78c:	2f28 0028      	movel %a0@(40),%sp@-                        <== NOT EXECUTED
   4c790:	4eb9 0004 5d2c 	jsr 45d2c <rtems_semaphore_obtain>          <== NOT EXECUTED
   4c796:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4c79a:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4c79c:	6706           	beqs 4c7a4 <pipe_ioctl+0x42>                <== NOT EXECUTED
   4c79e:	70fc           	moveq #-4,%d0                               <== NOT EXECUTED
    PIPE_UNLOCK(pipe);                                                
    return 0;                                                         
  }                                                                   
                                                                      
  return -EINVAL;                                                     
}                                                                     
   4c7a0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4c7a2:	4e75           	rts                                         <== NOT EXECUTED
    if (! PIPE_LOCK(pipe))                                            
      return -EINTR;                                                  
                                                                      
    /* Return length of pipe */                                       
    *(uint *)buffer = pipe->Length;                                   
    PIPE_UNLOCK(pipe);                                                
   4c7a4:	226e 0008      	moveal %fp@(8),%a1                          <== NOT EXECUTED
   4c7a8:	2f29 0028      	movel %a1@(40),%sp@-                        <== NOT EXECUTED
                                                                      
    if (! PIPE_LOCK(pipe))                                            
      return -EINTR;                                                  
                                                                      
    /* Return length of pipe */                                       
    *(uint *)buffer = pipe->Length;                                   
   4c7ac:	206e 0010      	moveal %fp@(16),%a0                         <== NOT EXECUTED
   4c7b0:	20a9 000c      	movel %a1@(12),%a0@                         <== NOT EXECUTED
    PIPE_UNLOCK(pipe);                                                
   4c7b4:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
    return 0;                                                         
   4c7ba:	588f           	addql #4,%sp                                <== NOT EXECUTED
    if (! PIPE_LOCK(pipe))                                            
      return -EINTR;                                                  
                                                                      
    /* Return length of pipe */                                       
    *(uint *)buffer = pipe->Length;                                   
    PIPE_UNLOCK(pipe);                                                
   4c7bc:	4280           	clrl %d0                                    <== NOT EXECUTED
    return 0;                                                         
  }                                                                   
                                                                      
  return -EINVAL;                                                     
}                                                                     
   4c7be:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004c704 <pipe_lseek>:                                                
  rtems_libio_t  *iop                                                 
)                                                                     
{                                                                     
  /* Seek on pipe is not supported */                                 
  return -ESPIPE;                                                     
}                                                                     
   4c704:	70e3           	moveq #-29,%d0                              <== NOT EXECUTED
  pipe_control_t *pipe,                                               
  off_t           offset,                                             
  int             whence,                                             
  rtems_libio_t  *iop                                                 
)                                                                     
{                                                                     
   4c706:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  /* Seek on pipe is not supported */                                 
  return -ESPIPE;                                                     
}                                                                     
   4c70a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004c7c2 <pipe_read>:                                                 
  pipe_control_t *pipe,                                               
  void           *buffer,                                             
  size_t          count,                                              
  rtems_libio_t  *iop                                                 
)                                                                     
{                                                                     
   4c7c2:	4e56 ffc8      	linkw %fp,#-56                              <== NOT EXECUTED
   4c7c6:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 <== NOT EXECUTED
  int chunk, chunk1, read = 0, ret = 0;                               
                                                                      
  if (! PIPE_LOCK(pipe))                                              
   4c7ca:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
  pipe_control_t *pipe,                                               
  void           *buffer,                                             
  size_t          count,                                              
  rtems_libio_t  *iop                                                 
)                                                                     
{                                                                     
   4c7cc:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
  int chunk, chunk1, read = 0, ret = 0;                               
                                                                      
  if (! PIPE_LOCK(pipe))                                              
   4c7d0:	47f9 0004 5d2c 	lea 45d2c <rtems_semaphore_obtain>,%a3      <== NOT EXECUTED
   4c7d6:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4c7d8:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
  pipe_control_t *pipe,                                               
  void           *buffer,                                             
  size_t          count,                                              
  rtems_libio_t  *iop                                                 
)                                                                     
{                                                                     
   4c7dc:	282e 0010      	movel %fp@(16),%d4                          <== NOT EXECUTED
   4c7e0:	2a6e 0014      	moveal %fp@(20),%a5                         <== NOT EXECUTED
  int chunk, chunk1, read = 0, ret = 0;                               
                                                                      
  if (! PIPE_LOCK(pipe))                                              
   4c7e4:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   4c7e6:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4c7ea:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4c7ec:	6600 00ac      	bnew 4c89a <pipe_read+0xd8>                 <== NOT EXECUTED
    return -EINTR;                                                    
                                                                      
  while (read < count) {                                              
   4c7f0:	4a84           	tstl %d4                                    <== NOT EXECUTED
   4c7f2:	6700 01ac      	beqw 4c9a0 <pipe_read+0x1de>                <== NOT EXECUTED
        /* WARN waitingReaders not restored! */                       
        ret = -EINTR;                                                 
        goto out_nolock;                                              
      }                                                               
      pipe->waitingReaders --;                                        
      if (ret != 0)                                                   
   4c7f6:	4285           	clrl %d5                                    <== NOT EXECUTED
   4c7f8:	4283           	clrl %d3                                    <== NOT EXECUTED
   4c7fa:	49f9 0004 5e68 	lea 45e68 <rtems_semaphore_release>,%a4     <== NOT EXECUTED
      }                                                               
                                                                      
      /* Wait until pipe is no more empty or no writer exists */      
      pipe->waitingReaders ++;                                        
      PIPE_UNLOCK(pipe);                                              
      if (! PIPE_READWAIT(pipe))                                      
   4c800:	243c 0004 dafc 	movel #318204,%d2                           <== NOT EXECUTED
    /* For buffering optimization */                                  
    if (PIPE_EMPTY(pipe))                                             
      pipe->Start = 0;                                                
                                                                      
    if (pipe->waitingWriters > 0)                                     
      PIPE_WAKEUPWRITERS(pipe);                                       
   4c806:	2e3c 0004 da84 	movel #318084,%d7                           <== NOT EXECUTED
    if (chunk > chunk1) {                                             
      memcpy(buffer + read, pipe->Buffer + pipe->Start, chunk1);      
      memcpy(buffer + read + chunk1, pipe->Buffer, chunk - chunk1);   
    }                                                                 
    else                                                              
      memcpy(buffer + read, pipe->Buffer + pipe->Start, chunk);       
   4c80c:	2c3c 0004 f414 	movel #324628,%d6                           <== NOT EXECUTED
                                                                      
  if (! PIPE_LOCK(pipe))                                              
    return -EINTR;                                                    
                                                                      
  while (read < count) {                                              
    while (PIPE_EMPTY(pipe)) {                                        
   4c812:	222a 000c      	movel %a2@(12),%d1                          <== NOT EXECUTED
   4c816:	6600 0090      	bnew 4c8a8 <pipe_read+0xe6>                 <== NOT EXECUTED
      /* Not an error */                                              
      if (pipe->Writers == 0)                                         
   4c81a:	4aaa 0014      	tstl %a2@(20)                               <== NOT EXECUTED
   4c81e:	6700 010a      	beqw 4c92a <pipe_read+0x168>                <== NOT EXECUTED
        goto out_locked;                                              
                                                                      
      if (LIBIO_NODELAY(iop)) {                                       
   4c822:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4c824:	c0ad 0014      	andl %a5@(20),%d0                           <== NOT EXECUTED
   4c828:	6600 0110      	bnew 4c93a <pipe_read+0x178>                <== NOT EXECUTED
        goto out_locked;                                              
      }                                                               
                                                                      
      /* Wait until pipe is no more empty or no writer exists */      
      pipe->waitingReaders ++;                                        
      PIPE_UNLOCK(pipe);                                              
   4c82c:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
        ret = -EAGAIN;                                                
        goto out_locked;                                              
      }                                                               
                                                                      
      /* Wait until pipe is no more empty or no writer exists */      
      pipe->waitingReaders ++;                                        
   4c830:	52aa 0018      	addql #1,%a2@(24)                           <== NOT EXECUTED
      PIPE_UNLOCK(pipe);                                              
   4c834:	4e94           	jsr %a4@                                    <== NOT EXECUTED
      if (! PIPE_READWAIT(pipe))                                      
   4c836:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4c838:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4c83a:	2f2a 002c      	movel %a2@(44),%sp@-                        <== NOT EXECUTED
   4c83e:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4c840:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4c844:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4c846:	673c           	beqs 4c884 <pipe_read+0xc2>                 <== NOT EXECUTED
   4c848:	70fc           	moveq #-4,%d0                               <== NOT EXECUTED
   4c84a:	2d40 fff8      	movel %d0,%fp@(-8)                          <== NOT EXECUTED
        ret = -EINTR;                                                 
      if (! PIPE_LOCK(pipe)) {                                        
   4c84e:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4c850:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4c852:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4c856:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   4c858:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4c85c:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4c85e:	6600 00ec      	bnew 4c94c <pipe_read+0x18a>                <== NOT EXECUTED
        /* WARN waitingReaders not restored! */                       
        ret = -EINTR;                                                 
        goto out_nolock;                                              
      }                                                               
      pipe->waitingReaders --;                                        
   4c862:	53aa 0018      	subql #1,%a2@(24)                           <== NOT EXECUTED
      if (ret != 0)                                                   
   4c866:	4aae fff8      	tstl %fp@(-8)                               <== NOT EXECUTED
   4c86a:	67a6           	beqs 4c812 <pipe_read+0x50>                 <== NOT EXECUTED
      PIPE_WAKEUPWRITERS(pipe);                                       
    read += chunk;                                                    
  }                                                                   
                                                                      
out_locked:                                                           
  PIPE_UNLOCK(pipe);                                                  
   4c86c:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4c870:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   4c872:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
out_nolock:                                                           
  if (read > 0)                                                       
   4c874:	4a83           	tstl %d3                                    <== NOT EXECUTED
   4c876:	6f12           	bles 4c88a <pipe_read+0xc8>                 <== NOT EXECUTED
    return read;                                                      
  return ret;                                                         
}                                                                     
   4c878:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   4c87a:	4cee 3cfc ffc8 	moveml %fp@(-56),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   4c880:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4c882:	4e75           	rts                                         <== NOT EXECUTED
      }                                                               
                                                                      
      /* Wait until pipe is no more empty or no writer exists */      
      pipe->waitingReaders ++;                                        
      PIPE_UNLOCK(pipe);                                              
      if (! PIPE_READWAIT(pipe))                                      
   4c884:	42ae fff8      	clrl %fp@(-8)                               <== NOT EXECUTED
   4c888:	60c4           	bras 4c84e <pipe_read+0x8c>                 <== NOT EXECUTED
                                                                      
out_locked:                                                           
  PIPE_UNLOCK(pipe);                                                  
                                                                      
out_nolock:                                                           
  if (read > 0)                                                       
   4c88a:	262e fff8      	movel %fp@(-8),%d3                          <== NOT EXECUTED
    return read;                                                      
  return ret;                                                         
}                                                                     
   4c88e:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   4c890:	4cee 3cfc ffc8 	moveml %fp@(-56),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   4c896:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4c898:	4e75           	rts                                         <== NOT EXECUTED
  rtems_libio_t  *iop                                                 
)                                                                     
{                                                                     
  int chunk, chunk1, read = 0, ret = 0;                               
                                                                      
  if (! PIPE_LOCK(pipe))                                              
   4c89a:	76fc           	moveq #-4,%d3                               <== NOT EXECUTED
                                                                      
out_nolock:                                                           
  if (read > 0)                                                       
    return read;                                                      
  return ret;                                                         
}                                                                     
   4c89c:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   4c89e:	4cee 3cfc ffc8 	moveml %fp@(-56),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   4c8a4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4c8a6:	4e75           	rts                                         <== NOT EXECUTED
      if (ret != 0)                                                   
        goto out_locked;                                              
    }                                                                 
                                                                      
    /* Read chunk bytes */                                            
    chunk = MIN(count - read,  pipe->Length);                         
   4c8a8:	2004           	movel %d4,%d0                               <== NOT EXECUTED
   4c8aa:	9085           	subl %d5,%d0                                <== NOT EXECUTED
   4c8ac:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   4c8ae:	6402           	bccs 4c8b2 <pipe_read+0xf0>                 <== NOT EXECUTED
   4c8b0:	2200           	movel %d0,%d1                               <== NOT EXECUTED
    chunk1 = pipe->Size - pipe->Start;                                
   4c8b2:	202a 0008      	movel %a2@(8),%d0                           <== NOT EXECUTED
   4c8b6:	206a 0004      	moveal %a2@(4),%a0                          <== NOT EXECUTED
   4c8ba:	91c0           	subal %d0,%a0                               <== NOT EXECUTED
    if (chunk > chunk1) {                                             
   4c8bc:	b1c1           	cmpal %d1,%a0                               <== NOT EXECUTED
   4c8be:	6d00 009c      	bltw 4c95c <pipe_read+0x19a>                <== NOT EXECUTED
      memcpy(buffer + read, pipe->Buffer + pipe->Start, chunk1);      
      memcpy(buffer + read + chunk1, pipe->Buffer, chunk - chunk1);   
    }                                                                 
    else                                                              
      memcpy(buffer + read, pipe->Buffer + pipe->Start, chunk);       
   4c8c2:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   4c8c4:	d092           	addl %a2@,%d0                               <== NOT EXECUTED
   4c8c6:	2246           	moveal %d6,%a1                              <== NOT EXECUTED
   4c8c8:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4c8ca:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
   4c8ce:	4870 5800      	pea %a0@(00000000,%d5:l)                    <== NOT EXECUTED
   4c8d2:	2d41 fff4      	movel %d1,%fp@(-12)                         <== NOT EXECUTED
   4c8d6:	4e91           	jsr %a1@                                    <== NOT EXECUTED
   4c8d8:	222e fff4      	movel %fp@(-12),%d1                         <== NOT EXECUTED
   4c8dc:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
                                                                      
    pipe->Start += chunk;                                             
   4c8e0:	2041           	moveal %d1,%a0                              <== NOT EXECUTED
   4c8e2:	d1ea 0008      	addal %a2@(8),%a0                           <== NOT EXECUTED
    pipe->Start %= pipe->Size;                                        
   4c8e6:	2008           	movel %a0,%d0                               <== NOT EXECUTED
    pipe->Length -= chunk;                                            
   4c8e8:	226a 000c      	moveal %a2@(12),%a1                         <== NOT EXECUTED
   4c8ec:	93c1           	subal %d1,%a1                               <== NOT EXECUTED
    }                                                                 
    else                                                              
      memcpy(buffer + read, pipe->Buffer + pipe->Start, chunk);       
                                                                      
    pipe->Start += chunk;                                             
    pipe->Start %= pipe->Size;                                        
   4c8ee:	4c6a 0005 0004 	remul %a2@(4),%d5,%d0                       <== NOT EXECUTED
    pipe->Length -= chunk;                                            
   4c8f4:	2549 000c      	movel %a1,%a2@(12)                          <== NOT EXECUTED
    }                                                                 
    else                                                              
      memcpy(buffer + read, pipe->Buffer + pipe->Start, chunk);       
                                                                      
    pipe->Start += chunk;                                             
    pipe->Start %= pipe->Size;                                        
   4c8f8:	2545 0008      	movel %d5,%a2@(8)                           <== NOT EXECUTED
    pipe->Length -= chunk;                                            
    /* For buffering optimization */                                  
    if (PIPE_EMPTY(pipe))                                             
   4c8fc:	4a89           	tstl %a1                                    <== NOT EXECUTED
   4c8fe:	6604           	bnes 4c904 <pipe_read+0x142>                <== NOT EXECUTED
      pipe->Start = 0;                                                
   4c900:	42aa 0008      	clrl %a2@(8)                                <== NOT EXECUTED
                                                                      
    if (pipe->waitingWriters > 0)                                     
   4c904:	4aaa 001c      	tstl %a2@(28)                               <== NOT EXECUTED
   4c908:	6716           	beqs 4c920 <pipe_read+0x15e>                <== NOT EXECUTED
      PIPE_WAKEUPWRITERS(pipe);                                       
   4c90a:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4c90e:	2047           	moveal %d7,%a0                              <== NOT EXECUTED
   4c910:	2f2a 0030      	movel %a2@(48),%sp@-                        <== NOT EXECUTED
   4c914:	2d41 fff4      	movel %d1,%fp@(-12)                         <== NOT EXECUTED
   4c918:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4c91a:	222e fff4      	movel %fp@(-12),%d1                         <== NOT EXECUTED
   4c91e:	508f           	addql #8,%sp                                <== NOT EXECUTED
    read += chunk;                                                    
   4c920:	d681           	addl %d1,%d3                                <== NOT EXECUTED
  int chunk, chunk1, read = 0, ret = 0;                               
                                                                      
  if (! PIPE_LOCK(pipe))                                              
    return -EINTR;                                                    
                                                                      
  while (read < count) {                                              
   4c922:	2a03           	movel %d3,%d5                               <== NOT EXECUTED
   4c924:	b883           	cmpl %d3,%d4                                <== NOT EXECUTED
   4c926:	6200 feea      	bhiw 4c812 <pipe_read+0x50>                 <== NOT EXECUTED
   4c92a:	42ae fff8      	clrl %fp@(-8)                               <== NOT EXECUTED
      PIPE_WAKEUPWRITERS(pipe);                                       
    read += chunk;                                                    
  }                                                                   
                                                                      
out_locked:                                                           
  PIPE_UNLOCK(pipe);                                                  
   4c92e:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4c932:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   4c934:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4c936:	6000 ff3c      	braw 4c874 <pipe_read+0xb2>                 <== NOT EXECUTED
    while (PIPE_EMPTY(pipe)) {                                        
      /* Not an error */                                              
      if (pipe->Writers == 0)                                         
        goto out_locked;                                              
                                                                      
      if (LIBIO_NODELAY(iop)) {                                       
   4c93a:	70f5           	moveq #-11,%d0                              <== NOT EXECUTED
   4c93c:	2d40 fff8      	movel %d0,%fp@(-8)                          <== NOT EXECUTED
      PIPE_WAKEUPWRITERS(pipe);                                       
    read += chunk;                                                    
  }                                                                   
                                                                      
out_locked:                                                           
  PIPE_UNLOCK(pipe);                                                  
   4c940:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4c944:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   4c946:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4c948:	6000 ff2a      	braw 4c874 <pipe_read+0xb2>                 <== NOT EXECUTED
      /* Wait until pipe is no more empty or no writer exists */      
      pipe->waitingReaders ++;                                        
      PIPE_UNLOCK(pipe);                                              
      if (! PIPE_READWAIT(pipe))                                      
        ret = -EINTR;                                                 
      if (! PIPE_LOCK(pipe)) {                                        
   4c94c:	7afc           	moveq #-4,%d5                               <== NOT EXECUTED
   4c94e:	2d45 fff8      	movel %d5,%fp@(-8)                          <== NOT EXECUTED
                                                                      
out_locked:                                                           
  PIPE_UNLOCK(pipe);                                                  
                                                                      
out_nolock:                                                           
  if (read > 0)                                                       
   4c952:	4a83           	tstl %d3                                    <== NOT EXECUTED
   4c954:	6e00 ff22      	bgtw 4c878 <pipe_read+0xb6>                 <== NOT EXECUTED
   4c958:	6000 ff30      	braw 4c88a <pipe_read+0xc8>                 <== NOT EXECUTED
                                                                      
    /* Read chunk bytes */                                            
    chunk = MIN(count - read,  pipe->Length);                         
    chunk1 = pipe->Size - pipe->Start;                                
    if (chunk > chunk1) {                                             
      memcpy(buffer + read, pipe->Buffer + pipe->Start, chunk1);      
   4c95c:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   4c95e:	d092           	addl %a2@,%d0                               <== NOT EXECUTED
   4c960:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4c962:	226e 000c      	moveal %fp@(12),%a1                         <== NOT EXECUTED
   4c966:	4871 5800      	pea %a1@(00000000,%d5:l)                    <== NOT EXECUTED
   4c96a:	2246           	moveal %d6,%a1                              <== NOT EXECUTED
   4c96c:	2d41 fff4      	movel %d1,%fp@(-12)                         <== NOT EXECUTED
   4c970:	2d48 fff0      	movel %a0,%fp@(-16)                         <== NOT EXECUTED
   4c974:	4e91           	jsr %a1@                                    <== NOT EXECUTED
      memcpy(buffer + read + chunk1, pipe->Buffer, chunk - chunk1);   
   4c976:	222e fff4      	movel %fp@(-12),%d1                         <== NOT EXECUTED
   4c97a:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   4c97c:	2246           	moveal %d6,%a1                              <== NOT EXECUTED
   4c97e:	206e fff0      	moveal %fp@(-16),%a0                        <== NOT EXECUTED
   4c982:	9088           	subl %a0,%d0                                <== NOT EXECUTED
   4c984:	da88           	addl %a0,%d5                                <== NOT EXECUTED
   4c986:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4c988:	2f12           	movel %a2@,%sp@-                            <== NOT EXECUTED
   4c98a:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
   4c98e:	4870 5800      	pea %a0@(00000000,%d5:l)                    <== NOT EXECUTED
   4c992:	4e91           	jsr %a1@                                    <== NOT EXECUTED
   4c994:	222e fff4      	movel %fp@(-12),%d1                         <== NOT EXECUTED
   4c998:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
   4c99c:	6000 ff42      	braw 4c8e0 <pipe_read+0x11e>                <== NOT EXECUTED
  int chunk, chunk1, read = 0, ret = 0;                               
                                                                      
  if (! PIPE_LOCK(pipe))                                              
    return -EINTR;                                                    
                                                                      
  while (read < count) {                                              
   4c9a0:	42ae fff8      	clrl %fp@(-8)                               <== NOT EXECUTED
      PIPE_WAKEUPWRITERS(pipe);                                       
    read += chunk;                                                    
  }                                                                   
                                                                      
out_locked:                                                           
  PIPE_UNLOCK(pipe);                                                  
   4c9a4:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4c9a8:	49f9 0004 5e68 	lea 45e68 <rtems_semaphore_release>,%a4     <== NOT EXECUTED
   4c9ae:	4e94           	jsr %a4@                                    <== NOT EXECUTED
  int chunk, chunk1, read = 0, ret = 0;                               
                                                                      
  if (! PIPE_LOCK(pipe))                                              
    return -EINTR;                                                    
                                                                      
  while (read < count) {                                              
   4c9b0:	4283           	clrl %d3                                    <== NOT EXECUTED
      PIPE_WAKEUPWRITERS(pipe);                                       
    read += chunk;                                                    
  }                                                                   
                                                                      
out_locked:                                                           
  PIPE_UNLOCK(pipe);                                                  
   4c9b2:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4c9b4:	6000 febe      	braw 4c874 <pipe_read+0xb2>                 <== NOT EXECUTED
                                                                      
0004cbc8 <pipe_release>:                                              
 */                                                                   
int pipe_release(                                                     
  pipe_control_t **pipep,                                             
  rtems_libio_t *iop                                                  
)                                                                     
{                                                                     
   4cbc8:	4e56 ffe8      	linkw %fp,#-24                              <== NOT EXECUTED
   4cbcc:	48d7 3c04      	moveml %d2/%a2-%a5,%sp@                     <== NOT EXECUTED
   4cbd0:	286e 0008      	moveal %fp@(8),%a4                          <== NOT EXECUTED
  pipe_control_t *pipe = *pipep;                                      
  uint32_t mode;                                                      
                                                                      
  rtems_status_code sc;                                               
  sc = rtems_semaphore_obtain(pipe->Semaphore,                        
   4cbd4:	47f9 0004 5d2c 	lea 45d2c <rtems_semaphore_obtain>,%a3      <== NOT EXECUTED
   4cbda:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
int pipe_release(                                                     
  pipe_control_t **pipep,                                             
  rtems_libio_t *iop                                                  
)                                                                     
{                                                                     
  pipe_control_t *pipe = *pipep;                                      
   4cbdc:	2454           	moveal %a4@,%a2                             <== NOT EXECUTED
  uint32_t mode;                                                      
                                                                      
  rtems_status_code sc;                                               
  sc = rtems_semaphore_obtain(pipe->Semaphore,                        
   4cbde:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4cbe0:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4cbe4:	4e93           	jsr %a3@                                    <== NOT EXECUTED
                              RTEMS_WAIT, RTEMS_NO_TIMEOUT);          
  /* WARN pipe not released! */                                       
  if(sc != RTEMS_SUCCESSFUL)                                          
   4cbe6:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4cbea:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4cbec:	6600 00f2      	bnew 4cce0 <pipe_release+0x118>             <== NOT EXECUTED
    rtems_fatal_error_occurred(sc);                                   
                                                                      
  mode = LIBIO_ACCMODE(iop);                                          
   4cbf0:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
   4cbf4:	7406           	moveq #6,%d2                                <== NOT EXECUTED
   4cbf6:	c4a8 0014      	andl %a0@(20),%d2                           <== NOT EXECUTED
  if (mode & LIBIO_FLAGS_READ)                                        
   4cbfa:	0802 0001      	btst #1,%d2                                 <== NOT EXECUTED
   4cbfe:	6704           	beqs 4cc04 <pipe_release+0x3c>              <== NOT EXECUTED
     pipe->Readers --;                                                
   4cc00:	53aa 0010      	subql #1,%a2@(16)                           <== NOT EXECUTED
  if (mode & LIBIO_FLAGS_WRITE)                                       
   4cc04:	44c2           	movew %d2,%ccr                              <== NOT EXECUTED
   4cc06:	675a           	beqs 4cc62 <pipe_release+0x9a>              <== NOT EXECUTED
     pipe->Writers --;                                                
                                                                      
  sc = rtems_semaphore_obtain(rtems_pipe_semaphore,                   
   4cc08:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4cc0a:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4cc0c:	2f39 0005 e724 	movel 5e724 <rtems_pipe_semaphore>,%sp@-    <== NOT EXECUTED
   4cc12:	4e93           	jsr %a3@                                    <== NOT EXECUTED
                              RTEMS_WAIT, RTEMS_NO_TIMEOUT);          
  /* WARN pipe not freed and pipep not set to NULL! */                
  if(sc != RTEMS_SUCCESSFUL)                                          
   4cc14:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4cc18:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4cc1a:	6600 00c4      	bnew 4cce0 <pipe_release+0x118>             <== NOT EXECUTED
    rtems_fatal_error_occurred(sc);                                   
                                                                      
  PIPE_UNLOCK(pipe);                                                  
   4cc1e:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4cc22:	47f9 0004 5e68 	lea 45e68 <rtems_semaphore_release>,%a3     <== NOT EXECUTED
   4cc28:	4e93           	jsr %a3@                                    <== NOT EXECUTED
                                                                      
  if (pipe->Readers == 0 && pipe->Writers == 0) {                     
   4cc2a:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4cc2c:	4aaa 0010      	tstl %a2@(16)                               <== NOT EXECUTED
   4cc30:	6736           	beqs 4cc68 <pipe_release+0xa0>              <== NOT EXECUTED
    *pipep = NULL;                                                    
  }                                                                   
  else if (pipe->Readers == 0 && mode != LIBIO_FLAGS_WRITE)           
    /* Notify waiting Writers that all their partners left */         
    PIPE_WAKEUPWRITERS(pipe);                                         
  else if (pipe->Writers == 0 && mode != LIBIO_FLAGS_READ)            
   4cc32:	4aaa 0014      	tstl %a2@(20)                               <== NOT EXECUTED
   4cc36:	6616           	bnes 4cc4e <pipe_release+0x86>              <== NOT EXECUTED
   4cc38:	7002           	moveq #2,%d0                                <== NOT EXECUTED
   4cc3a:	b082           	cmpl %d2,%d0                                <== NOT EXECUTED
   4cc3c:	6710           	beqs 4cc4e <pipe_release+0x86>              <== NOT EXECUTED
    PIPE_WAKEUPREADERS(pipe);                                         
   4cc3e:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4cc42:	2f2a 002c      	movel %a2@(44),%sp@-                        <== NOT EXECUTED
   4cc46:	4eb9 0004 da84 	jsr 4da84 <rtems_barrier_release>           <== NOT EXECUTED
   4cc4c:	508f           	addql #8,%sp                                <== NOT EXECUTED
                                                                      
  rtems_semaphore_release(rtems_pipe_semaphore);                      
   4cc4e:	2f39 0005 e724 	movel 5e724 <rtems_pipe_semaphore>,%sp@-    <== NOT EXECUTED
   4cc54:	4e93           	jsr %a3@                                    <== NOT EXECUTED
  if(iop->pathinfo.ops->unlink_h(&iop->pathinfo))                     
    return -errno;                                                    
#endif                                                                
                                                                      
  return 0;                                                           
}                                                                     
   4cc56:	4cee 3c04 ffe8 	moveml %fp@(-24),%d2/%a2-%a5                <== NOT EXECUTED
   4cc5c:	4280           	clrl %d0                                    <== NOT EXECUTED
   4cc5e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4cc60:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  mode = LIBIO_ACCMODE(iop);                                          
  if (mode & LIBIO_FLAGS_READ)                                        
     pipe->Readers --;                                                
  if (mode & LIBIO_FLAGS_WRITE)                                       
     pipe->Writers --;                                                
   4cc62:	53aa 0014      	subql #1,%a2@(20)                           <== NOT EXECUTED
   4cc66:	60a0           	bras 4cc08 <pipe_release+0x40>              <== NOT EXECUTED
  if(sc != RTEMS_SUCCESSFUL)                                          
    rtems_fatal_error_occurred(sc);                                   
                                                                      
  PIPE_UNLOCK(pipe);                                                  
                                                                      
  if (pipe->Readers == 0 && pipe->Writers == 0) {                     
   4cc68:	4aaa 0014      	tstl %a2@(20)                               <== NOT EXECUTED
   4cc6c:	672a           	beqs 4cc98 <pipe_release+0xd0>              <== NOT EXECUTED
      delfile = TRUE;                                                 
#endif                                                                
    pipe_free(pipe);                                                  
    *pipep = NULL;                                                    
  }                                                                   
  else if (pipe->Readers == 0 && mode != LIBIO_FLAGS_WRITE)           
   4cc6e:	7004           	moveq #4,%d0                                <== NOT EXECUTED
   4cc70:	b082           	cmpl %d2,%d0                                <== NOT EXECUTED
   4cc72:	67da           	beqs 4cc4e <pipe_release+0x86>              <== NOT EXECUTED
    /* Notify waiting Writers that all their partners left */         
    PIPE_WAKEUPWRITERS(pipe);                                         
   4cc74:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4cc78:	2f2a 0030      	movel %a2@(48),%sp@-                        <== NOT EXECUTED
   4cc7c:	4eb9 0004 da84 	jsr 4da84 <rtems_barrier_release>           <== NOT EXECUTED
      delfile = TRUE;                                                 
#endif                                                                
    pipe_free(pipe);                                                  
    *pipep = NULL;                                                    
  }                                                                   
  else if (pipe->Readers == 0 && mode != LIBIO_FLAGS_WRITE)           
   4cc82:	508f           	addql #8,%sp                                <== NOT EXECUTED
    /* Notify waiting Writers that all their partners left */         
    PIPE_WAKEUPWRITERS(pipe);                                         
  else if (pipe->Writers == 0 && mode != LIBIO_FLAGS_READ)            
    PIPE_WAKEUPREADERS(pipe);                                         
                                                                      
  rtems_semaphore_release(rtems_pipe_semaphore);                      
   4cc84:	2f39 0005 e724 	movel 5e724 <rtems_pipe_semaphore>,%sp@-    <== NOT EXECUTED
   4cc8a:	4e93           	jsr %a3@                                    <== NOT EXECUTED
  if(iop->pathinfo.ops->unlink_h(&iop->pathinfo))                     
    return -errno;                                                    
#endif                                                                
                                                                      
  return 0;                                                           
}                                                                     
   4cc8c:	4cee 3c04 ffe8 	moveml %fp@(-24),%d2/%a2-%a5                <== NOT EXECUTED
   4cc92:	4280           	clrl %d0                                    <== NOT EXECUTED
   4cc94:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4cc96:	4e75           	rts                                         <== NOT EXECUTED
/* Called with rtems_pipe_semaphore held. */                          
static inline void pipe_free(                                         
  pipe_control_t *pipe                                                
)                                                                     
{                                                                     
  rtems_barrier_delete(pipe->readBarrier);                            
   4cc98:	2f2a 002c      	movel %a2@(44),%sp@-                        <== NOT EXECUTED
  rtems_barrier_delete(pipe->writeBarrier);                           
  rtems_semaphore_delete(pipe->Semaphore);                            
  free(pipe->Buffer);                                                 
   4cc9c:	4bf9 0004 a6f4 	lea 4a6f4 <free>,%a5                        <== NOT EXECUTED
/* Called with rtems_pipe_semaphore held. */                          
static inline void pipe_free(                                         
  pipe_control_t *pipe                                                
)                                                                     
{                                                                     
  rtems_barrier_delete(pipe->readBarrier);                            
   4cca2:	243c 0004 da14 	movel #317972,%d2                           <== NOT EXECUTED
   4cca8:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4ccaa:	4e90           	jsr %a0@                                    <== NOT EXECUTED
  rtems_barrier_delete(pipe->writeBarrier);                           
   4ccac:	2f2a 0030      	movel %a2@(48),%sp@-                        <== NOT EXECUTED
   4ccb0:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4ccb2:	4e90           	jsr %a0@                                    <== NOT EXECUTED
  rtems_semaphore_delete(pipe->Semaphore);                            
   4ccb4:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4ccb8:	4eb9 0004 5c54 	jsr 45c54 <rtems_semaphore_delete>          <== NOT EXECUTED
  free(pipe->Buffer);                                                 
   4ccbe:	2f12           	movel %a2@,%sp@-                            <== NOT EXECUTED
   4ccc0:	4e95           	jsr %a5@                                    <== NOT EXECUTED
  free(pipe);                                                         
   4ccc2:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4ccc4:	4e95           	jsr %a5@                                    <== NOT EXECUTED
  if(sc != RTEMS_SUCCESSFUL)                                          
    rtems_fatal_error_occurred(sc);                                   
                                                                      
  PIPE_UNLOCK(pipe);                                                  
                                                                      
  if (pipe->Readers == 0 && pipe->Writers == 0) {                     
   4ccc6:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
    /* To delete an anonymous pipe file when all users closed it */   
    if (pipe->Anonymous)                                              
      delfile = TRUE;                                                 
#endif                                                                
    pipe_free(pipe);                                                  
    *pipep = NULL;                                                    
   4ccca:	4294           	clrl %a4@                                   <== NOT EXECUTED
    /* Notify waiting Writers that all their partners left */         
    PIPE_WAKEUPWRITERS(pipe);                                         
  else if (pipe->Writers == 0 && mode != LIBIO_FLAGS_READ)            
    PIPE_WAKEUPREADERS(pipe);                                         
                                                                      
  rtems_semaphore_release(rtems_pipe_semaphore);                      
   4cccc:	2f39 0005 e724 	movel 5e724 <rtems_pipe_semaphore>,%sp@-    <== NOT EXECUTED
   4ccd2:	4e93           	jsr %a3@                                    <== NOT EXECUTED
  if(iop->pathinfo.ops->unlink_h(&iop->pathinfo))                     
    return -errno;                                                    
#endif                                                                
                                                                      
  return 0;                                                           
}                                                                     
   4ccd4:	4cee 3c04 ffe8 	moveml %fp@(-24),%d2/%a2-%a5                <== NOT EXECUTED
   4ccda:	4280           	clrl %d0                                    <== NOT EXECUTED
   4ccdc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4ccde:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  sc = rtems_semaphore_obtain(rtems_pipe_semaphore,                   
                              RTEMS_WAIT, RTEMS_NO_TIMEOUT);          
  /* WARN pipe not freed and pipep not set to NULL! */                
  if(sc != RTEMS_SUCCESSFUL)                                          
    rtems_fatal_error_occurred(sc);                                   
   4cce0:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4cce2:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
                                                                      
0004c9b8 <pipe_write>:                                                
  pipe_control_t *pipe,                                               
  const void     *buffer,                                             
  size_t          count,                                              
  rtems_libio_t  *iop                                                 
)                                                                     
{                                                                     
   4c9b8:	4e56 ffd4      	linkw %fp,#-44                              <== NOT EXECUTED
   4c9bc:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 <== NOT EXECUTED
   4c9c0:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
   4c9c4:	262e 0010      	movel %fp@(16),%d3                          <== NOT EXECUTED
  int chunk, chunk1, written = 0, ret = 0;                            
                                                                      
  /* Write nothing */                                                 
  if (count == 0)                                                     
   4c9c8:	660e           	bnes 4c9d8 <pipe_write+0x20>                <== NOT EXECUTED
   4c9ca:	4282           	clrl %d2                                    <== NOT EXECUTED
#endif                                                                
                                                                      
  if (written > 0)                                                    
    return written;                                                   
  return ret;                                                         
}                                                                     
   4c9cc:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   4c9ce:	4cee 3cfc ffd4 	moveml %fp@(-44),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   4c9d4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4c9d6:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  /* Write nothing */                                                 
  if (count == 0)                                                     
    return 0;                                                         
                                                                      
  if (! PIPE_LOCK(pipe))                                              
   4c9d8:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4c9da:	47f9 0004 5d2c 	lea 45d2c <rtems_semaphore_obtain>,%a3      <== NOT EXECUTED
   4c9e0:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4c9e2:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4c9e6:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   4c9e8:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4c9ec:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4c9ee:	6600 00d2      	bnew 4cac2 <pipe_write+0x10a>               <== NOT EXECUTED
    return -EINTR;                                                    
                                                                      
  if (pipe->Readers == 0) {                                           
   4c9f2:	4aaa 0010      	tstl %a2@(16)                               <== NOT EXECUTED
   4c9f6:	6700 0088      	beqw 4ca80 <pipe_write+0xc8>                <== NOT EXECUTED
    ret = -EPIPE;                                                     
    goto out_locked;                                                  
  }                                                                   
                                                                      
  /* Write of PIPE_BUF bytes or less shall not be interleaved */      
  chunk = count <= pipe->Size ? count : 1;                            
   4c9fa:	202a 0004      	movel %a2@(4),%d0                           <== NOT EXECUTED
   4c9fe:	b083           	cmpl %d3,%d0                                <== NOT EXECUTED
   4ca00:	6500 00e0      	bcsw 4cae2 <pipe_write+0x12a>               <== NOT EXECUTED
   4ca04:	2a03           	movel %d3,%d5                               <== NOT EXECUTED
      }                                                               
      pipe->waitingWriters --;                                        
      if (ret != 0)                                                   
        goto out_locked;                                              
                                                                      
      if (pipe->Readers == 0) {                                       
   4ca06:	4286           	clrl %d6                                    <== NOT EXECUTED
   4ca08:	4282           	clrl %d2                                    <== NOT EXECUTED
   4ca0a:	49f9 0004 5e68 	lea 45e68 <rtems_semaphore_release>,%a4     <== NOT EXECUTED
      }                                                               
                                                                      
      /* Wait until there is chunk bytes space or no reader exists */ 
      pipe->waitingWriters ++;                                        
      PIPE_UNLOCK(pipe);                                              
      if (! PIPE_WRITEWAIT(pipe))                                     
   4ca10:	4bf9 0004 dafc 	lea 4dafc <rtems_barrier_wait>,%a5          <== NOT EXECUTED
    if (chunk > chunk1) {                                             
      memcpy(pipe->Buffer + PIPE_WSTART(pipe), buffer + written, chunk1);
      memcpy(pipe->Buffer, buffer + written + chunk1, chunk - chunk1);
    }                                                                 
    else                                                              
      memcpy(pipe->Buffer + PIPE_WSTART(pipe), buffer + written, chunk);
   4ca16:	2e3c 0004 f414 	movel #324628,%d7                           <== NOT EXECUTED
                                                                      
  /* Write of PIPE_BUF bytes or less shall not be interleaved */      
  chunk = count <= pipe->Size ? count : 1;                            
                                                                      
  while (written < count) {                                           
    while (PIPE_SPACE(pipe) < chunk) {                                
   4ca1c:	222a 000c      	movel %a2@(12),%d1                          <== NOT EXECUTED
   4ca20:	2800           	movel %d0,%d4                               <== NOT EXECUTED
   4ca22:	9881           	subl %d1,%d4                                <== NOT EXECUTED
   4ca24:	ba84           	cmpl %d4,%d5                                <== NOT EXECUTED
   4ca26:	6300 00d6      	blsw 4cafe <pipe_write+0x146>               <== NOT EXECUTED
      if (LIBIO_NODELAY(iop)) {                                       
   4ca2a:	206e 0014      	moveal %fp@(20),%a0                         <== NOT EXECUTED
   4ca2e:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4ca30:	c0a8 0014      	andl %a0@(20),%d0                           <== NOT EXECUTED
   4ca34:	6600 0144      	bnew 4cb7a <pipe_write+0x1c2>               <== NOT EXECUTED
        goto out_locked;                                              
      }                                                               
                                                                      
      /* Wait until there is chunk bytes space or no reader exists */ 
      pipe->waitingWriters ++;                                        
      PIPE_UNLOCK(pipe);                                              
   4ca38:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
        ret = -EAGAIN;                                                
        goto out_locked;                                              
      }                                                               
                                                                      
      /* Wait until there is chunk bytes space or no reader exists */ 
      pipe->waitingWriters ++;                                        
   4ca3c:	52aa 001c      	addql #1,%a2@(28)                           <== NOT EXECUTED
      PIPE_UNLOCK(pipe);                                              
   4ca40:	4e94           	jsr %a4@                                    <== NOT EXECUTED
      if (! PIPE_WRITEWAIT(pipe))                                     
   4ca42:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4ca44:	2f2a 0030      	movel %a2@(48),%sp@-                        <== NOT EXECUTED
   4ca48:	4e95           	jsr %a5@                                    <== NOT EXECUTED
   4ca4a:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4ca4e:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4ca50:	672a           	beqs 4ca7c <pipe_write+0xc4>                <== NOT EXECUTED
   4ca52:	78fc           	moveq #-4,%d4                               <== NOT EXECUTED
        ret = -EINTR;                                                 
      if (! PIPE_LOCK(pipe)) {                                        
   4ca54:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4ca56:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4ca58:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4ca5c:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   4ca5e:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4ca62:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4ca64:	6600 010e      	bnew 4cb74 <pipe_write+0x1bc>               <== NOT EXECUTED
        /* WARN waitingWriters not restored! */                       
        ret = -EINTR;                                                 
        goto out_nolock;                                              
      }                                                               
      pipe->waitingWriters --;                                        
   4ca68:	53aa 001c      	subql #1,%a2@(28)                           <== NOT EXECUTED
      if (ret != 0)                                                   
   4ca6c:	4a84           	tstl %d4                                    <== NOT EXECUTED
   4ca6e:	661a           	bnes 4ca8a <pipe_write+0xd2>                <== NOT EXECUTED
        goto out_locked;                                              
                                                                      
      if (pipe->Readers == 0) {                                       
   4ca70:	4aaa 0010      	tstl %a2@(16)                               <== NOT EXECUTED
   4ca74:	675a           	beqs 4cad0 <pipe_write+0x118>               <== NOT EXECUTED
   4ca76:	202a 0004      	movel %a2@(4),%d0                           <== NOT EXECUTED
   4ca7a:	60a0           	bras 4ca1c <pipe_write+0x64>                <== NOT EXECUTED
      }                                                               
                                                                      
      /* Wait until there is chunk bytes space or no reader exists */ 
      pipe->waitingWriters ++;                                        
      PIPE_UNLOCK(pipe);                                              
      if (! PIPE_WRITEWAIT(pipe))                                     
   4ca7c:	4284           	clrl %d4                                    <== NOT EXECUTED
   4ca7e:	60d4           	bras 4ca54 <pipe_write+0x9c>                <== NOT EXECUTED
  }                                                                   
                                                                      
  /* Write of PIPE_BUF bytes or less shall not be interleaved */      
  chunk = count <= pipe->Size ? count : 1;                            
                                                                      
  while (written < count) {                                           
   4ca80:	78e0           	moveq #-32,%d4                              <== NOT EXECUTED
   4ca82:	4282           	clrl %d2                                    <== NOT EXECUTED
   4ca84:	49f9 0004 5e68 	lea 45e68 <rtems_semaphore_release>,%a4     <== NOT EXECUTED
    /* Write of more than PIPE_BUF bytes can be interleaved */        
    chunk = 1;                                                        
  }                                                                   
                                                                      
out_locked:                                                           
  PIPE_UNLOCK(pipe);                                                  
   4ca8a:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
   4ca8e:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   4ca90:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
out_nolock:                                                           
#ifdef RTEMS_POSIX_API                                                
  /* Signal SIGPIPE */                                                
  if (ret == -EPIPE)                                                  
   4ca92:	70e0           	moveq #-32,%d0                              <== NOT EXECUTED
   4ca94:	b084           	cmpl %d4,%d0                                <== NOT EXECUTED
   4ca96:	6714           	beqs 4caac <pipe_write+0xf4>                <== NOT EXECUTED
    kill(getpid(), SIGPIPE);                                          
#endif                                                                
                                                                      
  if (written > 0)                                                    
   4ca98:	4a82           	tstl %d2                                    <== NOT EXECUTED
   4ca9a:	6e00 ff30      	bgtw 4c9cc <pipe_write+0x14>                <== NOT EXECUTED
   4ca9e:	2404           	movel %d4,%d2                               <== NOT EXECUTED
    return written;                                                   
  return ret;                                                         
}                                                                     
   4caa0:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   4caa2:	4cee 3cfc ffd4 	moveml %fp@(-44),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   4caa8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4caaa:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
out_nolock:                                                           
#ifdef RTEMS_POSIX_API                                                
  /* Signal SIGPIPE */                                                
  if (ret == -EPIPE)                                                  
    kill(getpid(), SIGPIPE);                                          
   4caac:	4eb9 0004 d5a4 	jsr 4d5a4 <getpid>                          <== NOT EXECUTED
   4cab2:	4878 000d      	pea d <OPER1+0x1>                           <== NOT EXECUTED
   4cab6:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4cab8:	4eb9 0004 d6ac 	jsr 4d6ac <kill>                            <== NOT EXECUTED
   4cabe:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4cac0:	60d6           	bras 4ca98 <pipe_write+0xe0>                <== NOT EXECUTED
                                                                      
  /* Write nothing */                                                 
  if (count == 0)                                                     
    return 0;                                                         
                                                                      
  if (! PIPE_LOCK(pipe))                                              
   4cac2:	74fc           	moveq #-4,%d2                               <== NOT EXECUTED
#endif                                                                
                                                                      
  if (written > 0)                                                    
    return written;                                                   
  return ret;                                                         
}                                                                     
   4cac4:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   4cac6:	4cee 3cfc ffd4 	moveml %fp@(-44),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   4cacc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4cace:	4e75           	rts                                         <== NOT EXECUTED
    /* Write of more than PIPE_BUF bytes can be interleaved */        
    chunk = 1;                                                        
  }                                                                   
                                                                      
out_locked:                                                           
  PIPE_UNLOCK(pipe);                                                  
   4cad0:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
      }                                                               
      pipe->waitingWriters --;                                        
      if (ret != 0)                                                   
        goto out_locked;                                              
                                                                      
      if (pipe->Readers == 0) {                                       
   4cad4:	78e0           	moveq #-32,%d4                              <== NOT EXECUTED
    /* Write of more than PIPE_BUF bytes can be interleaved */        
    chunk = 1;                                                        
  }                                                                   
                                                                      
out_locked:                                                           
  PIPE_UNLOCK(pipe);                                                  
   4cad6:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   4cad8:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
out_nolock:                                                           
#ifdef RTEMS_POSIX_API                                                
  /* Signal SIGPIPE */                                                
  if (ret == -EPIPE)                                                  
   4cada:	70e0           	moveq #-32,%d0                              <== NOT EXECUTED
   4cadc:	b084           	cmpl %d4,%d0                                <== NOT EXECUTED
   4cade:	66b8           	bnes 4ca98 <pipe_write+0xe0>                <== NOT EXECUTED
   4cae0:	60ca           	bras 4caac <pipe_write+0xf4>                <== NOT EXECUTED
      }                                                               
      pipe->waitingWriters --;                                        
      if (ret != 0)                                                   
        goto out_locked;                                              
                                                                      
      if (pipe->Readers == 0) {                                       
   4cae2:	7a01           	moveq #1,%d5                                <== NOT EXECUTED
   4cae4:	4286           	clrl %d6                                    <== NOT EXECUTED
   4cae6:	4282           	clrl %d2                                    <== NOT EXECUTED
   4cae8:	49f9 0004 5e68 	lea 45e68 <rtems_semaphore_release>,%a4     <== NOT EXECUTED
      }                                                               
                                                                      
      /* Wait until there is chunk bytes space or no reader exists */ 
      pipe->waitingWriters ++;                                        
      PIPE_UNLOCK(pipe);                                              
      if (! PIPE_WRITEWAIT(pipe))                                     
   4caee:	4bf9 0004 dafc 	lea 4dafc <rtems_barrier_wait>,%a5          <== NOT EXECUTED
    if (chunk > chunk1) {                                             
      memcpy(pipe->Buffer + PIPE_WSTART(pipe), buffer + written, chunk1);
      memcpy(pipe->Buffer, buffer + written + chunk1, chunk - chunk1);
    }                                                                 
    else                                                              
      memcpy(pipe->Buffer + PIPE_WSTART(pipe), buffer + written, chunk);
   4caf4:	2e3c 0004 f414 	movel #324628,%d7                           <== NOT EXECUTED
   4cafa:	6000 ff20      	braw 4ca1c <pipe_write+0x64>                <== NOT EXECUTED
        ret = -EPIPE;                                                 
        goto out_locked;                                              
      }                                                               
    }                                                                 
                                                                      
    chunk = MIN(count - written, PIPE_SPACE(pipe));                   
   4cafe:	2043           	moveal %d3,%a0                              <== NOT EXECUTED
   4cb00:	91c6           	subal %d6,%a0                               <== NOT EXECUTED
   4cb02:	b1c4           	cmpal %d4,%a0                               <== NOT EXECUTED
   4cb04:	6402           	bccs 4cb08 <pipe_write+0x150>               <== NOT EXECUTED
   4cb06:	2808           	movel %a0,%d4                               <== NOT EXECUTED
    chunk1 = pipe->Size - PIPE_WSTART(pipe);                          
   4cb08:	2a01           	movel %d1,%d5                               <== NOT EXECUTED
   4cb0a:	daaa 0008      	addl %a2@(8),%d5                            <== NOT EXECUTED
   4cb0e:	4c40 5001      	remul %d0,%d1,%d5                           <== NOT EXECUTED
   4cb12:	2a00           	movel %d0,%d5                               <== NOT EXECUTED
   4cb14:	9a81           	subl %d1,%d5                                <== NOT EXECUTED
    if (chunk > chunk1) {                                             
   4cb16:	ba84           	cmpl %d4,%d5                                <== NOT EXECUTED
   4cb18:	6c76           	bges 4cb90 <pipe_write+0x1d8>               <== NOT EXECUTED
      memcpy(pipe->Buffer + PIPE_WSTART(pipe), buffer + written, chunk1);
   4cb1a:	2f05           	movel %d5,%sp@-                             <== NOT EXECUTED
   4cb1c:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
   4cb20:	4870 6800      	pea %a0@(00000000,%d6:l)                    <== NOT EXECUTED
   4cb24:	d292           	addl %a2@,%d1                               <== NOT EXECUTED
   4cb26:	2047           	moveal %d7,%a0                              <== NOT EXECUTED
      memcpy(pipe->Buffer, buffer + written + chunk1, chunk - chunk1);
   4cb28:	dc85           	addl %d5,%d6                                <== NOT EXECUTED
    }                                                                 
                                                                      
    chunk = MIN(count - written, PIPE_SPACE(pipe));                   
    chunk1 = pipe->Size - PIPE_WSTART(pipe);                          
    if (chunk > chunk1) {                                             
      memcpy(pipe->Buffer + PIPE_WSTART(pipe), buffer + written, chunk1);
   4cb2a:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   4cb2c:	4e90           	jsr %a0@                                    <== NOT EXECUTED
      memcpy(pipe->Buffer, buffer + written + chunk1, chunk - chunk1);
   4cb2e:	2004           	movel %d4,%d0                               <== NOT EXECUTED
   4cb30:	9085           	subl %d5,%d0                                <== NOT EXECUTED
   4cb32:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4cb34:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
   4cb38:	4870 6800      	pea %a0@(00000000,%d6:l)                    <== NOT EXECUTED
   4cb3c:	2047           	moveal %d7,%a0                              <== NOT EXECUTED
   4cb3e:	2f12           	movel %a2@,%sp@-                            <== NOT EXECUTED
   4cb40:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4cb42:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
    }                                                                 
    else                                                              
      memcpy(pipe->Buffer + PIPE_WSTART(pipe), buffer + written, chunk);
                                                                      
    pipe->Length += chunk;                                            
   4cb46:	d9aa 000c      	addl %d4,%a2@(12)                           <== NOT EXECUTED
    if (pipe->waitingReaders > 0)                                     
   4cb4a:	4aaa 0018      	tstl %a2@(24)                               <== NOT EXECUTED
   4cb4e:	6612           	bnes 4cb62 <pipe_write+0x1aa>               <== NOT EXECUTED
      PIPE_WAKEUPREADERS(pipe);                                       
    written += chunk;                                                 
   4cb50:	d484           	addl %d4,%d2                                <== NOT EXECUTED
  }                                                                   
                                                                      
  /* Write of PIPE_BUF bytes or less shall not be interleaved */      
  chunk = count <= pipe->Size ? count : 1;                            
                                                                      
  while (written < count) {                                           
   4cb52:	2c02           	movel %d2,%d6                               <== NOT EXECUTED
   4cb54:	b483           	cmpl %d3,%d2                                <== NOT EXECUTED
   4cb56:	645a           	bccs 4cbb2 <pipe_write+0x1fa>               <== NOT EXECUTED
   4cb58:	202a 0004      	movel %a2@(4),%d0                           <== NOT EXECUTED
   4cb5c:	7a01           	moveq #1,%d5                                <== NOT EXECUTED
   4cb5e:	6000 febc      	braw 4ca1c <pipe_write+0x64>                <== NOT EXECUTED
    else                                                              
      memcpy(pipe->Buffer + PIPE_WSTART(pipe), buffer + written, chunk);
                                                                      
    pipe->Length += chunk;                                            
    if (pipe->waitingReaders > 0)                                     
      PIPE_WAKEUPREADERS(pipe);                                       
   4cb62:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   4cb66:	2f2a 002c      	movel %a2@(44),%sp@-                        <== NOT EXECUTED
   4cb6a:	4eb9 0004 da84 	jsr 4da84 <rtems_barrier_release>           <== NOT EXECUTED
   4cb70:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4cb72:	60dc           	bras 4cb50 <pipe_write+0x198>               <== NOT EXECUTED
      /* Wait until there is chunk bytes space or no reader exists */ 
      pipe->waitingWriters ++;                                        
      PIPE_UNLOCK(pipe);                                              
      if (! PIPE_WRITEWAIT(pipe))                                     
        ret = -EINTR;                                                 
      if (! PIPE_LOCK(pipe)) {                                        
   4cb74:	78fc           	moveq #-4,%d4                               <== NOT EXECUTED
   4cb76:	6000 ff20      	braw 4ca98 <pipe_write+0xe0>                <== NOT EXECUTED
    /* Write of more than PIPE_BUF bytes can be interleaved */        
    chunk = 1;                                                        
  }                                                                   
                                                                      
out_locked:                                                           
  PIPE_UNLOCK(pipe);                                                  
   4cb7a:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
  /* Write of PIPE_BUF bytes or less shall not be interleaved */      
  chunk = count <= pipe->Size ? count : 1;                            
                                                                      
  while (written < count) {                                           
    while (PIPE_SPACE(pipe) < chunk) {                                
      if (LIBIO_NODELAY(iop)) {                                       
   4cb7e:	78f5           	moveq #-11,%d4                              <== NOT EXECUTED
    /* Write of more than PIPE_BUF bytes can be interleaved */        
    chunk = 1;                                                        
  }                                                                   
                                                                      
out_locked:                                                           
  PIPE_UNLOCK(pipe);                                                  
   4cb80:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   4cb82:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
out_nolock:                                                           
#ifdef RTEMS_POSIX_API                                                
  /* Signal SIGPIPE */                                                
  if (ret == -EPIPE)                                                  
   4cb84:	70e0           	moveq #-32,%d0                              <== NOT EXECUTED
   4cb86:	b084           	cmpl %d4,%d0                                <== NOT EXECUTED
   4cb88:	6600 ff0e      	bnew 4ca98 <pipe_write+0xe0>                <== NOT EXECUTED
   4cb8c:	6000 ff1e      	braw 4caac <pipe_write+0xf4>                <== NOT EXECUTED
    if (chunk > chunk1) {                                             
      memcpy(pipe->Buffer + PIPE_WSTART(pipe), buffer + written, chunk1);
      memcpy(pipe->Buffer, buffer + written + chunk1, chunk - chunk1);
    }                                                                 
    else                                                              
      memcpy(pipe->Buffer + PIPE_WSTART(pipe), buffer + written, chunk);
   4cb90:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4cb92:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
   4cb96:	4870 6800      	pea %a0@(00000000,%d6:l)                    <== NOT EXECUTED
   4cb9a:	d292           	addl %a2@,%d1                               <== NOT EXECUTED
   4cb9c:	2047           	moveal %d7,%a0                              <== NOT EXECUTED
   4cb9e:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   4cba0:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4cba2:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
                                                                      
    pipe->Length += chunk;                                            
   4cba6:	d9aa 000c      	addl %d4,%a2@(12)                           <== NOT EXECUTED
    if (pipe->waitingReaders > 0)                                     
   4cbaa:	4aaa 0018      	tstl %a2@(24)                               <== NOT EXECUTED
   4cbae:	67a0           	beqs 4cb50 <pipe_write+0x198>               <== NOT EXECUTED
   4cbb0:	60b0           	bras 4cb62 <pipe_write+0x1aa>               <== NOT EXECUTED
    /* Write of more than PIPE_BUF bytes can be interleaved */        
    chunk = 1;                                                        
  }                                                                   
                                                                      
out_locked:                                                           
  PIPE_UNLOCK(pipe);                                                  
   4cbb2:	2f2a 0028      	movel %a2@(40),%sp@-                        <== NOT EXECUTED
  }                                                                   
                                                                      
  /* Write of PIPE_BUF bytes or less shall not be interleaved */      
  chunk = count <= pipe->Size ? count : 1;                            
                                                                      
  while (written < count) {                                           
   4cbb6:	4284           	clrl %d4                                    <== NOT EXECUTED
    /* Write of more than PIPE_BUF bytes can be interleaved */        
    chunk = 1;                                                        
  }                                                                   
                                                                      
out_locked:                                                           
  PIPE_UNLOCK(pipe);                                                  
   4cbb8:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   4cbba:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
out_nolock:                                                           
#ifdef RTEMS_POSIX_API                                                
  /* Signal SIGPIPE */                                                
  if (ret == -EPIPE)                                                  
   4cbbc:	70e0           	moveq #-32,%d0                              <== NOT EXECUTED
   4cbbe:	b084           	cmpl %d4,%d0                                <== NOT EXECUTED
   4cbc0:	6600 fed6      	bnew 4ca98 <pipe_write+0xe0>                <== NOT EXECUTED
   4cbc4:	6000 fee6      	braw 4caac <pipe_write+0xf4>                <== NOT EXECUTED
                                                                      
000460fc <pthread_barrier_init>:                                      
int pthread_barrier_init(                                             
  pthread_barrier_t           *barrier,                               
  const pthread_barrierattr_t *attr,                                  
  unsigned int                 count                                  
)                                                                     
{                                                                     
   460fc:	4e56 ffe0      	linkw %fp,#-32                              
   46100:	48d7 0c0c      	moveml %d2-%d3/%a2-%a3,%sp@                 
   46104:	246e 0008      	moveal %fp@(8),%a2                          
   46108:	262e 000c      	movel %fp@(12),%d3                          
   4610c:	242e 0010      	movel %fp@(16),%d2                          
  const pthread_barrierattr_t   *the_attr;                            
                                                                      
  /*                                                                  
   *  Error check parameters                                          
   */                                                                 
  if ( !barrier )                                                     
   46110:	4a8a           	tstl %a2                                    
   46112:	677a           	beqs 4618e <pthread_barrier_init+0x92>      
    return EINVAL;                                                    
                                                                      
  if ( count == 0 )                                                   
   46114:	4a82           	tstl %d2                                    
   46116:	6776           	beqs 4618e <pthread_barrier_init+0x92>      
    return EINVAL;                                                    
                                                                      
  /*                                                                  
   * If the user passed in NULL, use the default attributes           
   */                                                                 
  if ( attr ) {                                                       
   46118:	4a83           	tstl %d3                                    
   4611a:	6700 0090      	beqw 461ac <pthread_barrier_init+0xb0>      
   4611e:	2043           	moveal %d3,%a0                              
  }                                                                   
                                                                      
  /*                                                                  
   * Now start error checking the attributes that we are going to use 
   */                                                                 
  if ( !the_attr->is_initialized )                                    
   46120:	4a90           	tstl %a0@                                   
   46122:	676a           	beqs 4618e <pthread_barrier_init+0x92>      
    return EINVAL;                                                    
                                                                      
  switch ( the_attr->process_shared ) {                               
   46124:	4aa8 0004      	tstl %a0@(4)                                
   46128:	6664           	bnes 4618e <pthread_barrier_init+0x92>      
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   4612a:	2039 0006 06fc 	movel 606fc <_Thread_Dispatch_disable_level>,%d0
   46130:	5280           	addql #1,%d0                                
                                                                      
  /*                                                                  
   * Convert from POSIX attributes to Core Barrier attributes         
   */                                                                 
  the_attributes.discipline    = CORE_BARRIER_AUTOMATIC_RELEASE;      
  the_attributes.maximum_count = count;                               
   46132:	2d42 fffc      	movel %d2,%fp@(-4)                          
   46136:	23c0 0006 06fc 	movel %d0,606fc <_Thread_Dispatch_disable_level>
  }                                                                   
                                                                      
  /*                                                                  
   * Convert from POSIX attributes to Core Barrier attributes         
   */                                                                 
  the_attributes.discipline    = CORE_BARRIER_AUTOMATIC_RELEASE;      
   4613c:	42ae fff8      	clrl %fp@(-8)                               
 *  This function allocates a barrier control block from              
 *  the inactive chain of free barrier control blocks.                
 */                                                                   
RTEMS_INLINE_ROUTINE POSIX_Barrier_Control *_POSIX_Barrier_Allocate( void )
{                                                                     
  return (POSIX_Barrier_Control *)                                    
   46140:	4879 0006 0a3e 	pea 60a3e <_POSIX_Barrier_Information>      
   46146:	4eb9 0004 83e0 	jsr 483e0 <_Objects_Allocate>               
   */                                                                 
  _Thread_Disable_dispatch();             /* prevents deletion */     
                                                                      
  the_barrier = _POSIX_Barrier_Allocate();                            
                                                                      
  if ( !the_barrier ) {                                               
   4614c:	588f           	addql #4,%sp                                
   4614e:	2640           	moveal %d0,%a3                              
   46150:	4a80           	tstl %d0                                    
   46152:	6746           	beqs 4619a <pthread_barrier_init+0x9e>      
    _Thread_Enable_dispatch();                                        
    return EAGAIN;                                                    
  }                                                                   
                                                                      
  _CORE_barrier_Initialize( &the_barrier->Barrier, &the_attributes ); 
   46154:	486e fff8      	pea %fp@(-8)                                
   46158:	486b 0010      	pea %a3@(16)                                
   4615c:	4eb9 0004 7a50 	jsr 47a50 <_CORE_barrier_Initialize>        
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   46162:	202b 0008      	movel %a3@(8),%d0                           
   46166:	4281           	clrl %d1                                    
   46168:	2079 0006 0a56 	moveal 60a56 <_POSIX_Barrier_Information+0x18>,%a0
   4616e:	3200           	movew %d0,%d1                               
   46170:	218b 1c00      	movel %a3,%a0@(00000000,%d1:l:4)            
    _Objects_Get_index( the_object->id ),                             
    the_object                                                        
  );                                                                  
                                                                      
  /* ASSERT: information->is_string == false */                       
  the_object->name.name_u32 = name;                                   
   46174:	42ab 000c      	clrl %a3@(12)                               
  );                                                                  
                                                                      
  /*                                                                  
   * Exit the critical section and return the user an operational barrier
   */                                                                 
  *barrier = the_barrier->Object.id;                                  
   46178:	2480           	movel %d0,%a2@                              
  _Thread_Enable_dispatch();                                          
   4617a:	4eb9 0004 908c 	jsr 4908c <_Thread_Enable_dispatch>         
  return 0;                                                           
   46180:	508f           	addql #8,%sp                                
                                                                      
  /*                                                                  
   * Exit the critical section and return the user an operational barrier
   */                                                                 
  *barrier = the_barrier->Object.id;                                  
  _Thread_Enable_dispatch();                                          
   46182:	4280           	clrl %d0                                    
  return 0;                                                           
}                                                                     
   46184:	4cee 0c0c ffe0 	moveml %fp@(-32),%d2-%d3/%a2-%a3            
   4618a:	4e5e           	unlk %fp                                    
   4618c:	4e75           	rts                                         
  /*                                                                  
   * Exit the critical section and return the user an operational barrier
   */                                                                 
  *barrier = the_barrier->Object.id;                                  
  _Thread_Enable_dispatch();                                          
  return 0;                                                           
   4618e:	7016           	moveq #22,%d0                               
}                                                                     
   46190:	4cee 0c0c ffe0 	moveml %fp@(-32),%d2-%d3/%a2-%a3            
   46196:	4e5e           	unlk %fp                                    
   46198:	4e75           	rts                                         
  _Thread_Disable_dispatch();             /* prevents deletion */     
                                                                      
  the_barrier = _POSIX_Barrier_Allocate();                            
                                                                      
  if ( !the_barrier ) {                                               
    _Thread_Enable_dispatch();                                        
   4619a:	4eb9 0004 908c 	jsr 4908c <_Thread_Enable_dispatch>         
   461a0:	700b           	moveq #11,%d0                               
   * Exit the critical section and return the user an operational barrier
   */                                                                 
  *barrier = the_barrier->Object.id;                                  
  _Thread_Enable_dispatch();                                          
  return 0;                                                           
}                                                                     
   461a2:	4cee 0c0c ffe0 	moveml %fp@(-32),%d2-%d3/%a2-%a3            
   461a8:	4e5e           	unlk %fp                                    
   461aa:	4e75           	rts                                         
   * If the user passed in NULL, use the default attributes           
   */                                                                 
  if ( attr ) {                                                       
    the_attr = attr;                                                  
  } else {                                                            
    (void) pthread_barrierattr_init( &my_attr );                      
   461ac:	260e           	movel %fp,%d3                               
   461ae:	0683 ffff fff0 	addil #-16,%d3                              
   461b4:	2f03           	movel %d3,%sp@-                             
   461b6:	4eb9 0004 6038 	jsr 46038 <pthread_barrierattr_init>        
   461bc:	588f           	addql #4,%sp                                
   461be:	2043           	moveal %d3,%a0                              
  }                                                                   
                                                                      
  /*                                                                  
   * Now start error checking the attributes that we are going to use 
   */                                                                 
  if ( !the_attr->is_initialized )                                    
   461c0:	4a90           	tstl %a0@                                   
   461c2:	6600 ff60      	bnew 46124 <pthread_barrier_init+0x28>      
   461c6:	60c6           	bras 4618e <pthread_barrier_init+0x92>      <== NOT EXECUTED
                                                                      
0004d8fc <pthread_exit>:                                              
}                                                                     
                                                                      
void pthread_exit(                                                    
  void  *value_ptr                                                    
)                                                                     
{                                                                     
   4d8fc:	4e56 0000      	linkw %fp,#0                                
  _POSIX_Thread_Exit( _Thread_Executing, value_ptr );                 
   4d900:	2f2e 0008      	movel %fp@(8),%sp@-                         
   4d904:	2f39 0005 f032 	movel 5f032 <_Thread_Executing>,%sp@-       
   4d90a:	4eb9 0004 d88c 	jsr 4d88c <_POSIX_Thread_Exit>              
   4d910:	508f           	addql #8,%sp                                <== NOT EXECUTED
}                                                                     
   4d912:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
00046768 <pthread_once>:                                              
                                                                      
int pthread_once(                                                     
  pthread_once_t  *once_control,                                      
  void           (*init_routine)(void)                                
)                                                                     
{                                                                     
   46768:	4e56 ffec      	linkw %fp,#-20                              
   4676c:	48d7 1c04      	moveml %d2/%a2-%a4,%sp@                     
   46770:	246e 0008      	moveal %fp@(8),%a2                          
   46774:	266e 000c      	moveal %fp@(12),%a3                         
  if ( !once_control || !init_routine )                               
   46778:	4a8a           	tstl %a2                                    
   4677a:	6766           	beqs 467e2 <pthread_once+0x7a>              
   4677c:	4a8b           	tstl %a3                                    
   4677e:	6762           	beqs 467e2 <pthread_once+0x7a>              
    return EINVAL;                                                    
                                                                      
  if ( !once_control->init_executed ) {                               
   46780:	4aaa 0004      	tstl %a2@(4)                                
   46784:	670c           	beqs 46792 <pthread_once+0x2a>              
    if ( !once_control->init_executed ) {                             
      once_control->is_initialized = true;                            
      once_control->init_executed = true;                             
      (*init_routine)();                                              
    }                                                                 
    rtems_task_mode(saveMode, RTEMS_PREEMPT_MASK, &saveMode);         
   46786:	4280           	clrl %d0                                    
  }                                                                   
  return 0;                                                           
}                                                                     
   46788:	4cee 1c04 ffec 	moveml %fp@(-20),%d2/%a2-%a4                
   4678e:	4e5e           	unlk %fp                                    
   46790:	4e75           	rts                                         
  if ( !once_control || !init_routine )                               
    return EINVAL;                                                    
                                                                      
  if ( !once_control->init_executed ) {                               
    rtems_mode saveMode;                                              
    rtems_task_mode(RTEMS_NO_PREEMPT, RTEMS_PREEMPT_MASK, &saveMode); 
   46792:	240e           	movel %fp,%d2                               
   46794:	5982           	subql #4,%d2                                
   46796:	49f9 0004 7428 	lea 47428 <rtems_task_mode>,%a4             
   4679c:	2f02           	movel %d2,%sp@-                             
   4679e:	4878 0100      	pea 100 <DBL_MANT_DIG+0xcb>                 
   467a2:	4878 0100      	pea 100 <DBL_MANT_DIG+0xcb>                 
   467a6:	4e94           	jsr %a4@                                    
    if ( !once_control->init_executed ) {                             
   467a8:	4fef 000c      	lea %sp@(12),%sp                            
   467ac:	4aaa 0004      	tstl %a2@(4)                                
   467b0:	6714           	beqs 467c6 <pthread_once+0x5e>              
      once_control->is_initialized = true;                            
      once_control->init_executed = true;                             
      (*init_routine)();                                              
    }                                                                 
    rtems_task_mode(saveMode, RTEMS_PREEMPT_MASK, &saveMode);         
   467b2:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   467b4:	4878 0100      	pea 100 <DBL_MANT_DIG+0xcb>                 <== NOT EXECUTED
   467b8:	2f2e fffc      	movel %fp@(-4),%sp@-                        <== NOT EXECUTED
   467bc:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   467be:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   467c2:	4280           	clrl %d0                                    
   467c4:	60c2           	bras 46788 <pthread_once+0x20>              
  if ( !once_control->init_executed ) {                               
    rtems_mode saveMode;                                              
    rtems_task_mode(RTEMS_NO_PREEMPT, RTEMS_PREEMPT_MASK, &saveMode); 
    if ( !once_control->init_executed ) {                             
      once_control->is_initialized = true;                            
      once_control->init_executed = true;                             
   467c6:	7001           	moveq #1,%d0                                
   467c8:	2540 0004      	movel %d0,%a2@(4)                           
                                                                      
  if ( !once_control->init_executed ) {                               
    rtems_mode saveMode;                                              
    rtems_task_mode(RTEMS_NO_PREEMPT, RTEMS_PREEMPT_MASK, &saveMode); 
    if ( !once_control->init_executed ) {                             
      once_control->is_initialized = true;                            
   467cc:	2480           	movel %d0,%a2@                              
      once_control->init_executed = true;                             
      (*init_routine)();                                              
   467ce:	4e93           	jsr %a3@                                    
    }                                                                 
    rtems_task_mode(saveMode, RTEMS_PREEMPT_MASK, &saveMode);         
   467d0:	2f02           	movel %d2,%sp@-                             
   467d2:	4878 0100      	pea 100 <DBL_MANT_DIG+0xcb>                 
   467d6:	2f2e fffc      	movel %fp@(-4),%sp@-                        
   467da:	4e94           	jsr %a4@                                    
   467dc:	4fef 000c      	lea %sp@(12),%sp                            
   467e0:	60e0           	bras 467c2 <pthread_once+0x5a>              
   467e2:	7016           	moveq #22,%d0                               
  }                                                                   
  return 0;                                                           
}                                                                     
   467e4:	4cee 1c04 ffec 	moveml %fp@(-20),%d2/%a2-%a4                
   467ea:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      
0004897c <pthread_setschedparam>:                                     
int pthread_setschedparam(                                            
  pthread_t           thread,                                         
  int                 policy,                                         
  struct sched_param *param                                           
)                                                                     
{                                                                     
   4897c:	4e56 ffe0      	linkw %fp,#-32                              
   48980:	48d7 0c1c      	moveml %d2-%d4/%a2-%a3,%sp@                 
   48984:	282e 000c      	movel %fp@(12),%d4                          
   48988:	242e 0010      	movel %fp@(16),%d2                          
  int                                  rc;                            
                                                                      
  /*                                                                  
   *  Check all the parameters                                        
   */                                                                 
  if ( !param )                                                       
   4898c:	6700 00c4      	beqw 48a52 <pthread_setschedparam+0xd6>     
    return EINVAL;                                                    
                                                                      
  rc = _POSIX_Thread_Translate_sched_param(                           
   48990:	486e fff8      	pea %fp@(-8)                                
   48994:	486e fffc      	pea %fp@(-4)                                
   48998:	2f02           	movel %d2,%sp@-                             
   4899a:	2f04           	movel %d4,%sp@-                             
   4899c:	4eb9 0004 e804 	jsr 4e804 <_POSIX_Thread_Translate_sched_param>
    policy,                                                           
    param,                                                            
    &budget_algorithm,                                                
    &budget_callout                                                   
  );                                                                  
  if ( rc )                                                           
   489a2:	4fef 0010      	lea %sp@(16),%sp                            
   *  Check all the parameters                                        
   */                                                                 
  if ( !param )                                                       
    return EINVAL;                                                    
                                                                      
  rc = _POSIX_Thread_Translate_sched_param(                           
   489a6:	2600           	movel %d0,%d3                               
    policy,                                                           
    param,                                                            
    &budget_algorithm,                                                
    &budget_callout                                                   
  );                                                                  
  if ( rc )                                                           
   489a8:	670c           	beqs 489b6 <pthread_setschedparam+0x3a>     
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return ESRCH;                                                       
}                                                                     
   489aa:	2003           	movel %d3,%d0                               
   489ac:	4cee 0c1c ffe0 	moveml %fp@(-32),%d2-%d4/%a2-%a3            
   489b2:	4e5e           	unlk %fp                                    
   489b4:	4e75           	rts                                         
   489b6:	486e fff4      	pea %fp@(-12)                               
   489ba:	2f2e 0008      	movel %fp@(8),%sp@-                         
   489be:	4879 0006 442e 	pea 6442e <_POSIX_Threads_Information>      
   489c4:	4eb9 0004 aab8 	jsr 4aab8 <_Objects_Get>                    
                                                                      
  /*                                                                  
   *  Actually change the scheduling policy and parameters            
   */                                                                 
  the_thread = _POSIX_Threads_Get( thread, &location );               
  switch ( location ) {                                               
   489ca:	4fef 000c      	lea %sp@(12),%sp                            
   489ce:	2440           	moveal %d0,%a2                              
   489d0:	4aae fff4      	tstl %fp@(-12)                              
   489d4:	6600 008a      	bnew 48a60 <pthread_setschedparam+0xe4>     
                                                                      
    case OBJECTS_LOCAL:                                               
      api = the_thread->API_Extensions[ THREAD_API_POSIX ];           
   489d8:	266a 010e      	moveal %a2@(270),%a3                        
                                                                      
      if ( api->schedpolicy == SCHED_SPORADIC )                       
   489dc:	7004           	moveq #4,%d0                                
   489de:	b0ab 0080      	cmpl %a3@(128),%d0                          
   489e2:	6700 00ba      	beqw 48a9e <pthread_setschedparam+0x122>    
        (void) _Watchdog_Remove( &api->Sporadic_timer );              
                                                                      
      api->schedpolicy = policy;                                      
      api->schedparam  = *param;                                      
   489e6:	2242           	moveal %d2,%a1                              
   489e8:	41eb 0084      	lea %a3@(132),%a0                           
      api = the_thread->API_Extensions[ THREAD_API_POSIX ];           
                                                                      
      if ( api->schedpolicy == SCHED_SPORADIC )                       
        (void) _Watchdog_Remove( &api->Sporadic_timer );              
                                                                      
      api->schedpolicy = policy;                                      
   489ec:	2744 0080      	movel %d4,%a3@(128)                         
      api->schedparam  = *param;                                      
   489f0:	20d9           	movel %a1@+,%a0@+                           
   489f2:	20d9           	movel %a1@+,%a0@+                           
   489f4:	20d9           	movel %a1@+,%a0@+                           
   489f6:	20d9           	movel %a1@+,%a0@+                           
   489f8:	20d9           	movel %a1@+,%a0@+                           
   489fa:	20d9           	movel %a1@+,%a0@+                           
      the_thread->budget_algorithm = budget_algorithm;                
   489fc:	256e fffc 007a 	movel %fp@(-4),%a2@(122)                    
                                                                      
      if ( api->schedpolicy == SCHED_SPORADIC )                       
        (void) _Watchdog_Remove( &api->Sporadic_timer );              
                                                                      
      api->schedpolicy = policy;                                      
      api->schedparam  = *param;                                      
   48a02:	2091           	movel %a1@,%a0@                             
      the_thread->budget_algorithm = budget_algorithm;                
      the_thread->budget_callout   = budget_callout;                  
   48a04:	256e fff8 007e 	movel %fp@(-8),%a2@(126)                    
                                                                      
      switch ( api->schedpolicy ) {                                   
   48a0a:	4a84           	tstl %d4                                    
   48a0c:	6d32           	blts 48a40 <pthread_setschedparam+0xc4>     
   48a0e:	7002           	moveq #2,%d0                                
   48a10:	b084           	cmpl %d4,%d0                                
   48a12:	6d5c           	blts 48a70 <pthread_setschedparam+0xf4>     
   48a14:	4280           	clrl %d0                                    
   48a16:	1039 0006 2a56 	moveb 62a56 <rtems_maximum_priority>,%d0    
        case SCHED_OTHER:                                             
        case SCHED_FIFO:                                              
        case SCHED_RR:                                                
          the_thread->cpu_time_budget = _Thread_Ticks_per_timeslice;  
   48a1c:	41f9 0006 41f8 	lea 641f8 <_Thread_Ticks_per_timeslice>,%a0 
   48a22:	90ab 0084      	subl %a3@(132),%d0                          
   48a26:	2550 0076      	movel %a0@,%a2@(118)                        
                                                                      
          the_thread->real_priority =                                 
   48a2a:	2540 0018      	movel %d0,%a2@(24)                          
            _POSIX_Priority_To_core( api->schedparam.sched_priority );
                                                                      
          _Thread_Change_priority(                                    
   48a2e:	4878 0001      	pea 1 <ADD>                                 
   48a32:	2f00           	movel %d0,%sp@-                             
   48a34:	2f0a           	movel %a2,%sp@-                             
   48a36:	4eb9 0004 ada8 	jsr 4ada8 <_Thread_Change_priority>         
             the_thread,                                              
             the_thread->real_priority,                               
             true                                                     
          );                                                          
          break;                                                      
   48a3c:	4fef 000c      	lea %sp@(12),%sp                            
          _Watchdog_Remove( &api->Sporadic_timer );                   
          _POSIX_Threads_Sporadic_budget_TSR( 0, the_thread );        
          break;                                                      
      }                                                               
                                                                      
      _Thread_Enable_dispatch();                                      
   48a40:	4eb9 0004 b2c8 	jsr 4b2c8 <_Thread_Enable_dispatch>         
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return ESRCH;                                                       
}                                                                     
   48a46:	2003           	movel %d3,%d0                               
   48a48:	4cee 0c1c ffe0 	moveml %fp@(-32),%d2-%d4/%a2-%a3            
   48a4e:	4e5e           	unlk %fp                                    
   48a50:	4e75           	rts                                         
  int                                  rc;                            
                                                                      
  /*                                                                  
   *  Check all the parameters                                        
   */                                                                 
  if ( !param )                                                       
   48a52:	7616           	moveq #22,%d3                               
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return ESRCH;                                                       
}                                                                     
   48a54:	2003           	movel %d3,%d0                               
   48a56:	4cee 0c1c ffe0 	moveml %fp@(-32),%d2-%d4/%a2-%a3            
   48a5c:	4e5e           	unlk %fp                                    
   48a5e:	4e75           	rts                                         
                                                                      
  /*                                                                  
   *  Actually change the scheduling policy and parameters            
   */                                                                 
  the_thread = _POSIX_Threads_Get( thread, &location );               
  switch ( location ) {                                               
   48a60:	163c 0003      	moveb #3,%d3                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return ESRCH;                                                       
}                                                                     
   48a64:	2003           	movel %d3,%d0                               
   48a66:	4cee 0c1c ffe0 	moveml %fp@(-32),%d2-%d4/%a2-%a3            
   48a6c:	4e5e           	unlk %fp                                    
   48a6e:	4e75           	rts                                         
      api->schedpolicy = policy;                                      
      api->schedparam  = *param;                                      
      the_thread->budget_algorithm = budget_algorithm;                
      the_thread->budget_callout   = budget_callout;                  
                                                                      
      switch ( api->schedpolicy ) {                                   
   48a70:	103c 0004      	moveb #4,%d0                                
   48a74:	b084           	cmpl %d4,%d0                                
   48a76:	66c8           	bnes 48a40 <pthread_setschedparam+0xc4>     
             true                                                     
          );                                                          
          break;                                                      
                                                                      
        case SCHED_SPORADIC:                                          
          api->ss_high_priority = api->schedparam.sched_priority;     
   48a78:	276b 0084 00a0 	movel %a3@(132),%a3@(160)                   
          _Watchdog_Remove( &api->Sporadic_timer );                   
   48a7e:	486b 00a4      	pea %a3@(164)                               
   48a82:	4eb9 0004 c748 	jsr 4c748 <_Watchdog_Remove>                
          _POSIX_Threads_Sporadic_budget_TSR( 0, the_thread );        
   48a88:	2f0a           	movel %a2,%sp@-                             
   48a8a:	42a7           	clrl %sp@-                                  
   48a8c:	4eb9 0004 88c0 	jsr 488c0 <_POSIX_Threads_Sporadic_budget_TSR>
   48a92:	4fef 000c      	lea %sp@(12),%sp                            
          break;                                                      
      }                                                               
                                                                      
      _Thread_Enable_dispatch();                                      
   48a96:	4eb9 0004 b2c8 	jsr 4b2c8 <_Thread_Enable_dispatch>         
   48a9c:	60a8           	bras 48a46 <pthread_setschedparam+0xca>     
                                                                      
    case OBJECTS_LOCAL:                                               
      api = the_thread->API_Extensions[ THREAD_API_POSIX ];           
                                                                      
      if ( api->schedpolicy == SCHED_SPORADIC )                       
        (void) _Watchdog_Remove( &api->Sporadic_timer );              
   48a9e:	486b 00a4      	pea %a3@(164)                               
   48aa2:	4eb9 0004 c748 	jsr 4c748 <_Watchdog_Remove>                
                                                                      
      api->schedpolicy = policy;                                      
      api->schedparam  = *param;                                      
      the_thread->budget_algorithm = budget_algorithm;                
   48aa8:	256e fffc 007a 	movel %fp@(-4),%a2@(122)                    
                                                                      
      if ( api->schedpolicy == SCHED_SPORADIC )                       
        (void) _Watchdog_Remove( &api->Sporadic_timer );              
                                                                      
      api->schedpolicy = policy;                                      
      api->schedparam  = *param;                                      
   48aae:	2242           	moveal %d2,%a1                              
   48ab0:	41eb 0084      	lea %a3@(132),%a0                           
                                                                      
    case OBJECTS_LOCAL:                                               
      api = the_thread->API_Extensions[ THREAD_API_POSIX ];           
                                                                      
      if ( api->schedpolicy == SCHED_SPORADIC )                       
        (void) _Watchdog_Remove( &api->Sporadic_timer );              
   48ab4:	588f           	addql #4,%sp                                
                                                                      
      api->schedpolicy = policy;                                      
   48ab6:	2744 0080      	movel %d4,%a3@(128)                         
      api->schedparam  = *param;                                      
   48aba:	20d9           	movel %a1@+,%a0@+                           
   48abc:	20d9           	movel %a1@+,%a0@+                           
   48abe:	20d9           	movel %a1@+,%a0@+                           
   48ac0:	20d9           	movel %a1@+,%a0@+                           
   48ac2:	20d9           	movel %a1@+,%a0@+                           
   48ac4:	20d9           	movel %a1@+,%a0@+                           
      the_thread->budget_algorithm = budget_algorithm;                
      the_thread->budget_callout   = budget_callout;                  
   48ac6:	256e fff8 007e 	movel %fp@(-8),%a2@(126)                    
                                                                      
      if ( api->schedpolicy == SCHED_SPORADIC )                       
        (void) _Watchdog_Remove( &api->Sporadic_timer );              
                                                                      
      api->schedpolicy = policy;                                      
      api->schedparam  = *param;                                      
   48acc:	2091           	movel %a1@,%a0@                             
      the_thread->budget_algorithm = budget_algorithm;                
      the_thread->budget_callout   = budget_callout;                  
                                                                      
      switch ( api->schedpolicy ) {                                   
   48ace:	4a84           	tstl %d4                                    
   48ad0:	6c00 ff3c      	bgew 48a0e <pthread_setschedparam+0x92>     
   48ad4:	6000 ff6a      	braw 48a40 <pthread_setschedparam+0xc4>     <== NOT EXECUTED
                                                                      
00046454 <pthread_testcancel>:                                        
 *                                                                    
 *  18.2.2 Setting Cancelability State, P1003.1c/Draft 10, p. 183     
 */                                                                   
                                                                      
void pthread_testcancel( void )                                       
{                                                                     
   46454:	4e56 0000      	linkw %fp,#0                                
   *  Don't even think about deleting a resource from an ISR.         
   *  Besides this request is supposed to be for _Thread_Executing    
   *  and the ISR context is not a thread.                            
   */                                                                 
                                                                      
  if ( _ISR_Is_in_progress() )                                        
   46458:	2039 0006 022e 	movel 6022e <_ISR_Nest_level>,%d0           
   4645e:	663c           	bnes 4649c <pthread_testcancel+0x48>        
    return;                                                           
                                                                      
  thread_support = _Thread_Executing->API_Extensions[ THREAD_API_POSIX ];
   46460:	2079 0006 024e 	moveal 6024e <_Thread_Executing>,%a0        
   46466:	2039 0006 0194 	movel 60194 <_Thread_Dispatch_disable_level>,%d0
   4646c:	5280           	addql #1,%d0                                
   4646e:	2068 010e      	moveal %a0@(270),%a0                        
   46472:	23c0 0006 0194 	movel %d0,60194 <_Thread_Dispatch_disable_level>
                                                                      
  _Thread_Disable_dispatch();                                         
    if ( thread_support->cancelability_state == PTHREAD_CANCEL_ENABLE &&
   46478:	4aa8 00d4      	tstl %a0@(212)                              
   4647c:	6622           	bnes 464a0 <pthread_testcancel+0x4c>        
         thread_support->cancelation_requested )                      
   4647e:	4aa8 00dc      	tstl %a0@(220)                              
   46482:	671c           	beqs 464a0 <pthread_testcancel+0x4c>        
      cancel = true;                                                  
  _Thread_Enable_dispatch();                                          
   46484:	4eb9 0004 8b28 	jsr 48b28 <_Thread_Enable_dispatch>         
                                                                      
  if ( cancel )                                                       
    _POSIX_Thread_Exit( _Thread_Executing, PTHREAD_CANCELED );        
   4648a:	4878 ffff      	pea ffffffff <LESS>                         
   4648e:	2f39 0006 024e 	movel 6024e <_Thread_Executing>,%sp@-       
   46494:	4eb9 0004 c1ec 	jsr 4c1ec <_POSIX_Thread_Exit>              
   4649a:	508f           	addql #8,%sp                                <== NOT EXECUTED
}                                                                     
   4649c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4649e:	4e75           	rts                                         <== NOT EXECUTED
   464a0:	4e5e           	unlk %fp                                    
                                                                      
  _Thread_Disable_dispatch();                                         
    if ( thread_support->cancelability_state == PTHREAD_CANCEL_ENABLE &&
         thread_support->cancelation_requested )                      
      cancel = true;                                                  
  _Thread_Enable_dispatch();                                          
   464a2:	4ef9 0004 8b28 	jmp 48b28 <_Thread_Enable_dispatch>         
                                                                      
000429a4 <putk>:                                                      
 * putk                                                               
 *                                                                    
 * Kernel putk (e.g. puts) function requiring minimal infrastrure.    
 */                                                                   
void putk(const char *s)                                              
{                                                                     
   429a4:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   429a8:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   429aa:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
  const char *p = s;                                                  
                                                                      
  for (p=s ; *p ; p++ )                                               
   429ae:	1012           	moveb %a2@,%d0                              <== NOT EXECUTED
   429b0:	6714           	beqs 429c6 <putk+0x22>                      <== NOT EXECUTED
    BSP_output_char(*p);                                              
   429b2:	49c0           	extbl %d0                                   <== NOT EXECUTED
 */                                                                   
void putk(const char *s)                                              
{                                                                     
  const char *p = s;                                                  
                                                                      
  for (p=s ; *p ; p++ )                                               
   429b4:	528a           	addql #1,%a2                                <== NOT EXECUTED
    BSP_output_char(*p);                                              
   429b6:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   429b8:	2079 0005 de20 	moveal 5de20 <BSP_output_char>,%a0          <== NOT EXECUTED
   429be:	4e90           	jsr %a0@                                    <== NOT EXECUTED
 */                                                                   
void putk(const char *s)                                              
{                                                                     
  const char *p = s;                                                  
                                                                      
  for (p=s ; *p ; p++ )                                               
   429c0:	588f           	addql #4,%sp                                <== NOT EXECUTED
   429c2:	1012           	moveb %a2@,%d0                              <== NOT EXECUTED
   429c4:	66ec           	bnes 429b2 <putk+0xe>                       <== NOT EXECUTED
    BSP_output_char(*p);                                              
  BSP_output_char('\n');                                              
   429c6:	2279 0005 de20 	moveal 5de20 <BSP_output_char>,%a1          <== NOT EXECUTED
   429cc:	700a           	moveq #10,%d0                               <== NOT EXECUTED
}                                                                     
   429ce:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
{                                                                     
  const char *p = s;                                                  
                                                                      
  for (p=s ; *p ; p++ )                                               
    BSP_output_char(*p);                                              
  BSP_output_char('\n');                                              
   429d2:	2d40 0008      	movel %d0,%fp@(8)                           <== NOT EXECUTED
}                                                                     
   429d6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
{                                                                     
  const char *p = s;                                                  
                                                                      
  for (p=s ; *p ; p++ )                                               
    BSP_output_char(*p);                                              
  BSP_output_char('\n');                                              
   429d8:	4ed1           	jmp %a1@                                    <== NOT EXECUTED
	...                                                                  
                                                                      
0005b698 <read>:                                                      
ssize_t read(                                                         
  int         fd,                                                     
  void       *buffer,                                                 
  size_t      count                                                   
)                                                                     
{                                                                     
   5b698:	4e56 fff4      	linkw %fp,#-12                              
   5b69c:	202e 0008      	movel %fp@(8),%d0                           
   5b6a0:	222e 000c      	movel %fp@(12),%d1                          
   5b6a4:	206e 0010      	moveal %fp@(16),%a0                         
   5b6a8:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
  ssize_t      rc;                                                    
  rtems_libio_t *iop;                                                 
                                                                      
  rtems_libio_check_fd( fd );                                         
   5b6ac:	b0b9 0005 d714 	cmpl 5d714 <rtems_libio_number_iops>,%d0    
   5b6b2:	6468           	bccs 5b71c <read+0x84>                      
  iop = rtems_libio_iop( fd );                                        
   5b6b4:	2479 0005 ee18 	moveal 5ee18 <rtems_libio_iops>,%a2         
   5b6ba:	ed88           	lsll #6,%d0                                 
   5b6bc:	d5c0           	addal %d0,%a2                               
  rtems_libio_check_is_open( iop );                                   
   5b6be:	202a 0014      	movel %a2@(20),%d0                          
   5b6c2:	0800 0008      	btst #8,%d0                                 
   5b6c6:	6754           	beqs 5b71c <read+0x84>                      
  rtems_libio_check_buffer( buffer );                                 
   5b6c8:	4a81           	tstl %d1                                    
   5b6ca:	6768           	beqs 5b734 <read+0x9c>                      
  rtems_libio_check_count( count );                                   
   5b6cc:	4a88           	tstl %a0                                    
   5b6ce:	6740           	beqs 5b710 <read+0x78>                      
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_READ );             
   5b6d0:	0800 0001      	btst #1,%d0                                 
   5b6d4:	675e           	beqs 5b734 <read+0x9c>                      
                                                                      
  /*                                                                  
   *  Now process the read().                                         
   */                                                                 
                                                                      
  if ( !iop->handlers->read_h )                                       
   5b6d6:	226a 003c      	moveal %a2@(60),%a1                         
   5b6da:	2269 0008      	moveal %a1@(8),%a1                          
   5b6de:	4a89           	tstl %a1                                    
   5b6e0:	676a           	beqs 5b74c <read+0xb4>                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  rc = (*iop->handlers->read_h)( iop, buffer, count );                
   5b6e2:	2f08           	movel %a0,%sp@-                             
   5b6e4:	2f01           	movel %d1,%sp@-                             
   5b6e6:	2f0a           	movel %a2,%sp@-                             
   5b6e8:	4e91           	jsr %a1@                                    
                                                                      
  if ( rc > 0 )                                                       
   5b6ea:	4fef 000c      	lea %sp@(12),%sp                            
   5b6ee:	4a80           	tstl %d0                                    
   5b6f0:	6f14           	bles 5b706 <read+0x6e>                      
    iop->offset += rc;                                                
   5b6f2:	2400           	movel %d0,%d2                               
   5b6f4:	5bc1           	smi %d1                                     
   5b6f6:	49c1           	extbl %d1                                   
   5b6f8:	d5aa 0010      	addl %d2,%a2@(16)                           
   5b6fc:	262a 000c      	movel %a2@(12),%d3                          
   5b700:	d781           	addxl %d1,%d3                               
   5b702:	2543 000c      	movel %d3,%a2@(12)                          
                                                                      
  return rc;                                                          
}                                                                     
   5b706:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   5b70c:	4e5e           	unlk %fp                                    
   5b70e:	4e75           	rts                                         
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open( iop );                                   
  rtems_libio_check_buffer( buffer );                                 
  rtems_libio_check_count( count );                                   
   5b710:	4280           	clrl %d0                                    <== NOT EXECUTED
                                                                      
  if ( rc > 0 )                                                       
    iop->offset += rc;                                                
                                                                      
  return rc;                                                          
}                                                                     
   5b712:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   5b718:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   5b71a:	4e75           	rts                                         <== NOT EXECUTED
  ssize_t      rc;                                                    
  rtems_libio_t *iop;                                                 
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open( iop );                                   
   5b71c:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   5b722:	7409           	moveq #9,%d2                                
   5b724:	2040           	moveal %d0,%a0                              
   5b726:	70ff           	moveq #-1,%d0                               
   5b728:	2082           	movel %d2,%a0@                              
                                                                      
  if ( rc > 0 )                                                       
    iop->offset += rc;                                                
                                                                      
  return rc;                                                          
}                                                                     
   5b72a:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   5b730:	4e5e           	unlk %fp                                    
   5b732:	4e75           	rts                                         
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open( iop );                                   
  rtems_libio_check_buffer( buffer );                                 
  rtems_libio_check_count( count );                                   
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_READ );             
   5b734:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   5b73a:	7216           	moveq #22,%d1                               <== NOT EXECUTED
   5b73c:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   5b73e:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  if ( rc > 0 )                                                       
    iop->offset += rc;                                                
                                                                      
  return rc;                                                          
}                                                                     
   5b740:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open( iop );                                   
  rtems_libio_check_buffer( buffer );                                 
  rtems_libio_check_count( count );                                   
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_READ );             
   5b746:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
                                                                      
  if ( rc > 0 )                                                       
    iop->offset += rc;                                                
                                                                      
  return rc;                                                          
}                                                                     
   5b748:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   5b74a:	4e75           	rts                                         <== NOT EXECUTED
  /*                                                                  
   *  Now process the read().                                         
   */                                                                 
                                                                      
  if ( !iop->handlers->read_h )                                       
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   5b74c:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   5b752:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   5b754:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  if ( rc > 0 )                                                       
    iop->offset += rc;                                                
                                                                      
  return rc;                                                          
}                                                                     
   5b756:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
  /*                                                                  
   *  Now process the read().                                         
   */                                                                 
                                                                      
  if ( !iop->handlers->read_h )                                       
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   5b75c:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
                                                                      
  if ( rc > 0 )                                                       
    iop->offset += rc;                                                
                                                                      
  return rc;                                                          
}                                                                     
   5b762:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000685a8 <readlink>:                                                  
ssize_t readlink(                                                     
  const char *pathname,                                               
  char       *buf,                                                    
  size_t      bufsize                                                 
)                                                                     
{                                                                     
   685a8:	4e56 ffe0      	linkw %fp,#-32                              
   685ac:	48d7 001c      	moveml %d2-%d4,%sp@                         
   685b0:	262e 0008      	movel %fp@(8),%d3                           
   685b4:	282e 000c      	movel %fp@(12),%d4                          
  rtems_filesystem_location_info_t  loc;                              
  int                               result;                           
                                                                      
  if (!buf)                                                           
   685b8:	6700 0092      	beqw 6864c <readlink+0xa4>                  
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  result = rtems_filesystem_evaluate_path( pathname, strlen( pathname ),
   685bc:	2f03           	movel %d3,%sp@-                             
   685be:	240e           	movel %fp,%d2                               
   685c0:	0682 ffff ffec 	addil #-20,%d2                              
   685c6:	4eb9 0008 6ee4 	jsr 86ee4 <strlen>                          
   685cc:	4297           	clrl %sp@                                   
   685ce:	2f02           	movel %d2,%sp@-                             
   685d0:	42a7           	clrl %sp@-                                  
   685d2:	2f00           	movel %d0,%sp@-                             
   685d4:	2f03           	movel %d3,%sp@-                             
   685d6:	4eb9 0004 66cc 	jsr 466cc <rtems_filesystem_evaluate_path>  
                                           0, &loc, false );          
  if ( result != 0 )                                                  
   685dc:	4fef 0014      	lea %sp@(20),%sp                            
   685e0:	4a80           	tstl %d0                                    
   685e2:	665a           	bnes 6863e <readlink+0x96>                  
     return -1;                                                       
                                                                      
  if ( !loc.ops->node_type_h ){                                       
   685e4:	226e fff8      	moveal %fp@(-8),%a1                         
   685e8:	2069 0010      	moveal %a1@(16),%a0                         
   685ec:	4a88           	tstl %a0                                    
   685ee:	6700 00a6      	beqw 68696 <readlink+0xee>                  
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if (  (*loc.ops->node_type_h)( &loc ) != RTEMS_FILESYSTEM_SYM_LINK ){
   685f2:	2f02           	movel %d2,%sp@-                             
   685f4:	4e90           	jsr %a0@                                    
   685f6:	588f           	addql #4,%sp                                
   685f8:	7204           	moveq #4,%d1                                
   685fa:	b280           	cmpl %d0,%d1                                
   685fc:	6668           	bnes 68666 <readlink+0xbe>                  
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( EINVAL );                   
  }                                                                   
                                                                      
  if ( !loc.ops->readlink_h ){                                        
   685fe:	226e fff8      	moveal %fp@(-8),%a1                         
   68602:	2069 003c      	moveal %a1@(60),%a0                         
   68606:	4a88           	tstl %a0                                    
   68608:	6700 008c      	beqw 68696 <readlink+0xee>                  
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result =  (*loc.ops->readlink_h)( &loc, buf, bufsize );             
   6860c:	2f2e 0010      	movel %fp@(16),%sp@-                        
   68610:	2f04           	movel %d4,%sp@-                             
   68612:	2f02           	movel %d2,%sp@-                             
   68614:	4e90           	jsr %a0@                                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   68616:	206e fff8      	moveal %fp@(-8),%a0                         
  if ( !loc.ops->readlink_h ){                                        
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result =  (*loc.ops->readlink_h)( &loc, buf, bufsize );             
   6861a:	2600           	movel %d0,%d3                               
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   6861c:	4fef 000c      	lea %sp@(12),%sp                            
   68620:	4a88           	tstl %a0                                    
   68622:	670e           	beqs 68632 <readlink+0x8a>                  
   68624:	2068 001c      	moveal %a0@(28),%a0                         
   68628:	4a88           	tstl %a0                                    
   6862a:	6706           	beqs 68632 <readlink+0x8a>                  
   6862c:	2f02           	movel %d2,%sp@-                             
   6862e:	4e90           	jsr %a0@                                    
   68630:	588f           	addql #4,%sp                                
                                                                      
  return result;                                                      
}                                                                     
   68632:	2003           	movel %d3,%d0                               
   68634:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    
   6863a:	4e5e           	unlk %fp                                    
   6863c:	4e75           	rts                                         
  if (!buf)                                                           
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  result = rtems_filesystem_evaluate_path( pathname, strlen( pathname ),
                                           0, &loc, false );          
  if ( result != 0 )                                                  
   6863e:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
  result =  (*loc.ops->readlink_h)( &loc, buf, bufsize );             
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   68640:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   68642:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    <== NOT EXECUTED
   68648:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   6864a:	4e75           	rts                                         <== NOT EXECUTED
{                                                                     
  rtems_filesystem_location_info_t  loc;                              
  int                               result;                           
                                                                      
  if (!buf)                                                           
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   6864c:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   68652:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
   68654:	720e           	moveq #14,%d1                               <== NOT EXECUTED
   68656:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  result =  (*loc.ops->readlink_h)( &loc, buf, bufsize );             
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   68658:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   6865a:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    <== NOT EXECUTED
{                                                                     
  rtems_filesystem_location_info_t  loc;                              
  int                               result;                           
                                                                      
  if (!buf)                                                           
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   68660:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
  result =  (*loc.ops->readlink_h)( &loc, buf, bufsize );             
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   68662:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   68664:	4e75           	rts                                         <== NOT EXECUTED
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if (  (*loc.ops->node_type_h)( &loc ) != RTEMS_FILESYSTEM_SYM_LINK ){
    rtems_filesystem_freenode( &loc );                                
   68666:	206e fff8      	moveal %fp@(-8),%a0                         
   6866a:	4a88           	tstl %a0                                    
   6866c:	670e           	beqs 6867c <readlink+0xd4>                  
   6866e:	2068 001c      	moveal %a0@(28),%a0                         
   68672:	4a88           	tstl %a0                                    
   68674:	6706           	beqs 6867c <readlink+0xd4>                  
   68676:	2f02           	movel %d2,%sp@-                             
   68678:	4e90           	jsr %a0@                                    
   6867a:	588f           	addql #4,%sp                                
    rtems_set_errno_and_return_minus_one( EINVAL );                   
   6867c:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         
   68682:	76ff           	moveq #-1,%d3                               
   68684:	2040           	moveal %d0,%a0                              
   68686:	7016           	moveq #22,%d0                               
   68688:	2080           	movel %d0,%a0@                              
  result =  (*loc.ops->readlink_h)( &loc, buf, bufsize );             
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   6868a:	2003           	movel %d3,%d0                               
   6868c:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    
   68692:	4e5e           	unlk %fp                                    
   68694:	4e75           	rts                                         
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( EINVAL );                   
  }                                                                   
                                                                      
  if ( !loc.ops->readlink_h ){                                        
    rtems_filesystem_freenode( &loc );                                
   68696:	2069 001c      	moveal %a1@(28),%a0                         <== NOT EXECUTED
   6869a:	4a88           	tstl %a0                                    <== NOT EXECUTED
   6869c:	6706           	beqs 686a4 <readlink+0xfc>                  <== NOT EXECUTED
   6869e:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   686a0:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   686a2:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   686a4:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   686aa:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
   686ac:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  result =  (*loc.ops->readlink_h)( &loc, buf, bufsize );             
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   686ae:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   686b0:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( EINVAL );                   
  }                                                                   
                                                                      
  if ( !loc.ops->readlink_h ){                                        
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   686b6:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  result =  (*loc.ops->readlink_h)( &loc, buf, bufsize );             
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   686bc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004495c <readv>:                                                     
ssize_t readv(                                                        
  int                 fd,                                             
  const struct iovec *iov,                                            
  int                 iovcnt                                          
)                                                                     
{                                                                     
   4495c:	4e56 ffe0      	linkw %fp,#-32                              
   44960:	202e 0008      	movel %fp@(8),%d0                           
   44964:	48d7 1c7c      	moveml %d2-%d6/%a2-%a4,%sp@                 
   44968:	246e 000c      	moveal %fp@(12),%a2                         
   4496c:	242e 0010      	movel %fp@(16),%d2                          
  int            v;                                                   
  int            bytes;                                               
  rtems_libio_t *iop;                                                 
  bool           all_zeros;                                           
                                                                      
  rtems_libio_check_fd( fd );                                         
   44970:	b0b9 0006 13b4 	cmpl 613b4 <rtems_libio_number_iops>,%d0    
   44976:	6400 00f0      	bccw 44a68 <readv+0x10c>                    
  iop = rtems_libio_iop( fd );                                        
   4497a:	2679 0006 328c 	moveal 6328c <rtems_libio_iops>,%a3         
   44980:	ed88           	lsll #6,%d0                                 
   44982:	d7c0           	addal %d0,%a3                               
  rtems_libio_check_is_open( iop );                                   
   44984:	202b 0014      	movel %a3@(20),%d0                          
   44988:	0800 0008      	btst #8,%d0                                 
   4498c:	6700 00da      	beqw 44a68 <readv+0x10c>                    
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_READ );             
   44990:	0800 0001      	btst #1,%d0                                 
   44994:	6700 009c      	beqw 44a32 <readv+0xd6>                     
                                                                      
  /*                                                                  
   *  Argument validation on IO vector                                
   */                                                                 
  if ( !iov )                                                         
   44998:	4a8a           	tstl %a2                                    
   4499a:	6700 0096      	beqw 44a32 <readv+0xd6>                     
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  if ( iovcnt <= 0 )                                                  
   4499e:	4a82           	tstl %d2                                    
   449a0:	6f00 0090      	blew 44a32 <readv+0xd6>                     
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  if ( iovcnt > IOV_MAX )                                             
   449a4:	0c82 0000 0400 	cmpil #1024,%d2                             
   449aa:	6e00 0086      	bgtw 44a32 <readv+0xd6>                     
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  if ( !iop->handlers->read_h )                                       
   449ae:	206b 003c      	moveal %a3@(60),%a0                         
   449b2:	2868 0008      	moveal %a0@(8),%a4                          
   449b6:	4a8c           	tstl %a4                                    
   449b8:	6700 00c8      	beqw 44a82 <readv+0x126>                    
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   449bc:	204a           	moveal %a2,%a0                              
   449be:	93c9           	subal %a1,%a1                               
   449c0:	4281           	clrl %d1                                    
   449c2:	7a01           	moveq #1,%d5                                
                                                                      
  all_zeros = true;                                                   
  for ( total=0, v=0 ; v < iovcnt ; v++ ) {                           
    ssize_t old;                                                      
                                                                      
    if ( !iov[v].iov_base )                                           
   449c4:	4a90           	tstl %a0@                                   
   449c6:	676a           	beqs 44a32 <readv+0xd6>                     
    if ( iov[v].iov_len < 0 )                                         
      rtems_set_errno_and_return_minus_one( EINVAL );                 
                                                                      
    /* check for wrap */                                              
    old    = total;                                                   
    total += iov[v].iov_len;                                          
   449c8:	2828 0004      	movel %a0@(4),%d4                           
   449cc:	2601           	movel %d1,%d3                               
   449ce:	d684           	addl %d4,%d3                                
    if ( total < old )                                                
   449d0:	b283           	cmpl %d3,%d1                                
   449d2:	6e5e           	bgts 44a32 <readv+0xd6>                     
      rtems_set_errno_and_return_minus_one( EINVAL );                 
                                                                      
    if ( iov[v].iov_len )                                             
   449d4:	4a84           	tstl %d4                                    
   449d6:	57c4           	seq %d4                                     
   *  are obvious errors in the iovec.  So this extra loop ensures    
   *  that we do not do anything if there is an argument error.       
   */                                                                 
                                                                      
  all_zeros = true;                                                   
  for ( total=0, v=0 ; v < iovcnt ; v++ ) {                           
   449d8:	2203           	movel %d3,%d1                               
    old    = total;                                                   
    total += iov[v].iov_len;                                          
    if ( total < old )                                                
      rtems_set_errno_and_return_minus_one( EINVAL );                 
                                                                      
    if ( iov[v].iov_len )                                             
   449da:	2605           	movel %d5,%d3                               
   *  are obvious errors in the iovec.  So this extra loop ensures    
   *  that we do not do anything if there is an argument error.       
   */                                                                 
                                                                      
  all_zeros = true;                                                   
  for ( total=0, v=0 ; v < iovcnt ; v++ ) {                           
   449dc:	5289           	addql #1,%a1                                
   449de:	5088           	addql #8,%a0                                
    old    = total;                                                   
    total += iov[v].iov_len;                                          
    if ( total < old )                                                
      rtems_set_errno_and_return_minus_one( EINVAL );                 
                                                                      
    if ( iov[v].iov_len )                                             
   449e0:	c684           	andl %d4,%d3                                
   449e2:	1a03           	moveb %d3,%d5                               
   *  are obvious errors in the iovec.  So this extra loop ensures    
   *  that we do not do anything if there is an argument error.       
   */                                                                 
                                                                      
  all_zeros = true;                                                   
  for ( total=0, v=0 ; v < iovcnt ; v++ ) {                           
   449e4:	b3c2           	cmpal %d2,%a1                               
   449e6:	6ddc           	blts 449c4 <readv+0x68>                     
  /*                                                                  
   *  A readv with all zeros logically has no effect.  Even though    
   *  OpenGroup didn't address this case as they did with writev(),   
   *  we will handle it the same way for symmetry.                    
   */                                                                 
  if ( all_zeros == true ) {                                          
   449e8:	4a03           	tstb %d3                                    
   449ea:	6660           	bnes 44a4c <readv+0xf0>                     
   449ec:	588a           	addql #4,%a2                                
   449ee:	4283           	clrl %d3                                    
   449f0:	4284           	clrl %d4                                    
                                                                      
  /*                                                                  
   *  Now process the readv().                                        
   */                                                                 
  for ( total=0, v=0 ; v < iovcnt ; v++ ) {                           
    bytes = (*iop->handlers->read_h)( iop, iov[v].iov_base, iov[v].iov_len );
   449f2:	2f12           	movel %a2@,%sp@-                            
  }                                                                   
                                                                      
  /*                                                                  
   *  Now process the readv().                                        
   */                                                                 
  for ( total=0, v=0 ; v < iovcnt ; v++ ) {                           
   449f4:	5283           	addql #1,%d3                                
    bytes = (*iop->handlers->read_h)( iop, iov[v].iov_base, iov[v].iov_len );
   449f6:	2f2a fffc      	movel %a2@(-4),%sp@-                        
   449fa:	2f0b           	movel %a3,%sp@-                             
   449fc:	4e94           	jsr %a4@                                    
                                                                      
    if ( bytes < 0 )                                                  
   449fe:	4fef 000c      	lea %sp@(12),%sp                            
   44a02:	4a80           	tstl %d0                                    
   44a04:	6d54           	blts 44a5a <readv+0xfe>                     
      return -1;                                                      
                                                                      
    if ( bytes > 0 ) {                                                
   44a06:	6716           	beqs 44a1e <readv+0xc2>                     
      iop->offset += bytes;                                           
      total       += bytes;                                           
   44a08:	d880           	addl %d0,%d4                                
                                                                      
    if ( bytes < 0 )                                                  
      return -1;                                                      
                                                                      
    if ( bytes > 0 ) {                                                
      iop->offset += bytes;                                           
   44a0a:	2c00           	movel %d0,%d6                               
   44a0c:	5bc5           	smi %d5                                     
   44a0e:	49c5           	extbl %d5                                   
   44a10:	ddab 0010      	addl %d6,%a3@(16)                           
   44a14:	222b 000c      	movel %a3@(12),%d1                          
   44a18:	d385           	addxl %d5,%d1                               
   44a1a:	2741 000c      	movel %d1,%a3@(12)                          
      total       += bytes;                                           
    }                                                                 
                                                                      
    if (bytes != iov[ v ].iov_len)                                    
   44a1e:	b092           	cmpl %a2@,%d0                               
   44a20:	661e           	bnes 44a40 <readv+0xe4>                     
  }                                                                   
                                                                      
  /*                                                                  
   *  Now process the readv().                                        
   */                                                                 
  for ( total=0, v=0 ; v < iovcnt ; v++ ) {                           
   44a22:	508a           	addql #8,%a2                                
   44a24:	b682           	cmpl %d2,%d3                                
   44a26:	6c18           	bges 44a40 <readv+0xe4>                     
   44a28:	206b 003c      	moveal %a3@(60),%a0                         
   44a2c:	2868 0008      	moveal %a0@(8),%a4                          
   44a30:	60c0           	bras 449f2 <readv+0x96>                     
                                                                      
    /* check for wrap */                                              
    old    = total;                                                   
    total += iov[v].iov_len;                                          
    if ( total < old )                                                
      rtems_set_errno_and_return_minus_one( EINVAL );                 
   44a32:	4eb9 0005 115c 	jsr 5115c <__errno>                         
   44a38:	78ff           	moveq #-1,%d4                               
   44a3a:	2040           	moveal %d0,%a0                              
   44a3c:	7016           	moveq #22,%d0                               
   44a3e:	2080           	movel %d0,%a0@                              
    if (bytes != iov[ v ].iov_len)                                    
      break;                                                          
  }                                                                   
                                                                      
  return total;                                                       
}                                                                     
   44a40:	2004           	movel %d4,%d0                               
   44a42:	4cee 1c7c ffe0 	moveml %fp@(-32),%d2-%d6/%a2-%a4            
   44a48:	4e5e           	unlk %fp                                    
   44a4a:	4e75           	rts                                         
  /*                                                                  
   *  A readv with all zeros logically has no effect.  Even though    
   *  OpenGroup didn't address this case as they did with writev(),   
   *  we will handle it the same way for symmetry.                    
   */                                                                 
  if ( all_zeros == true ) {                                          
   44a4c:	4284           	clrl %d4                                    
    if (bytes != iov[ v ].iov_len)                                    
      break;                                                          
  }                                                                   
                                                                      
  return total;                                                       
}                                                                     
   44a4e:	2004           	movel %d4,%d0                               
   44a50:	4cee 1c7c ffe0 	moveml %fp@(-32),%d2-%d6/%a2-%a4            
   44a56:	4e5e           	unlk %fp                                    
   44a58:	4e75           	rts                                         
  }                                                                   
                                                                      
  /*                                                                  
   *  Now process the readv().                                        
   */                                                                 
  for ( total=0, v=0 ; v < iovcnt ; v++ ) {                           
   44a5a:	78ff           	moveq #-1,%d4                               <== NOT EXECUTED
    if (bytes != iov[ v ].iov_len)                                    
      break;                                                          
  }                                                                   
                                                                      
  return total;                                                       
}                                                                     
   44a5c:	2004           	movel %d4,%d0                               <== NOT EXECUTED
   44a5e:	4cee 1c7c ffe0 	moveml %fp@(-32),%d2-%d6/%a2-%a4            <== NOT EXECUTED
   44a64:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44a66:	4e75           	rts                                         <== NOT EXECUTED
  rtems_libio_t *iop;                                                 
  bool           all_zeros;                                           
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open( iop );                                   
   44a68:	4eb9 0005 115c 	jsr 5115c <__errno>                         <== NOT EXECUTED
   44a6e:	78ff           	moveq #-1,%d4                               <== NOT EXECUTED
   44a70:	7209           	moveq #9,%d1                                <== NOT EXECUTED
   44a72:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
    if (bytes != iov[ v ].iov_len)                                    
      break;                                                          
  }                                                                   
                                                                      
  return total;                                                       
}                                                                     
   44a74:	2004           	movel %d4,%d0                               <== NOT EXECUTED
   44a76:	4cee 1c7c ffe0 	moveml %fp@(-32),%d2-%d6/%a2-%a4            <== NOT EXECUTED
  rtems_libio_t *iop;                                                 
  bool           all_zeros;                                           
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open( iop );                                   
   44a7c:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
    if (bytes != iov[ v ].iov_len)                                    
      break;                                                          
  }                                                                   
                                                                      
  return total;                                                       
}                                                                     
   44a7e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44a80:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  if ( iovcnt > IOV_MAX )                                             
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  if ( !iop->handlers->read_h )                                       
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   44a82:	4eb9 0005 115c 	jsr 5115c <__errno>                         <== NOT EXECUTED
   44a88:	78ff           	moveq #-1,%d4                               <== NOT EXECUTED
   44a8a:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
    if (bytes != iov[ v ].iov_len)                                    
      break;                                                          
  }                                                                   
                                                                      
  return total;                                                       
}                                                                     
   44a8c:	2004           	movel %d4,%d0                               <== NOT EXECUTED
   44a8e:	4cee 1c7c ffe0 	moveml %fp@(-32),%d2-%d6/%a2-%a4            <== NOT EXECUTED
                                                                      
  if ( iovcnt > IOV_MAX )                                             
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  if ( !iop->handlers->read_h )                                       
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   44a94:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
    if (bytes != iov[ v ].iov_len)                                    
      break;                                                          
  }                                                                   
                                                                      
  return total;                                                       
}                                                                     
   44a9a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
0005b7e4 <realloc>:                                                   
                                                                      
  /*                                                                  
   *  Do not attempt to allocate memory if in a critical section or ISR.
   */                                                                 
                                                                      
  if (_System_state_Is_up(_System_state_Get())) {                     
   5b7e4:	7003           	moveq #3,%d0                                
{                                                                     
  uintptr_t old_size;                                                 
  char    *new_area;                                                  
  uintptr_t resize;                                                   
                                                                      
  MSBUMP(realloc_calls, 1);                                           
   5b7e6:	4e56 fff0      	linkw %fp,#-16                              
   5b7ea:	52b9 0005 ee34 	addql #1,5ee34 <rtems_malloc_statistics+0x10>
   5b7f0:	48d7 001c      	moveml %d2-%d4,%sp@                         
   5b7f4:	242e 0008      	movel %fp@(8),%d2                           
   5b7f8:	262e 000c      	movel %fp@(12),%d3                          
                                                                      
  /*                                                                  
   *  Do not attempt to allocate memory if in a critical section or ISR.
   */                                                                 
                                                                      
  if (_System_state_Is_up(_System_state_Get())) {                     
   5b7fc:	b0b9 0005 f100 	cmpl 5f100 <_System_state_Current>,%d0      
   5b802:	677a           	beqs 5b87e <realloc+0x9a>                   
  }                                                                   
                                                                      
  /*                                                                  
   * Continue with realloc().                                         
   */                                                                 
  if ( !ptr )                                                         
   5b804:	4a82           	tstl %d2                                    
   5b806:	6700 00de      	beqw 5b8e6 <realloc+0x102>                  
    return malloc( size );                                            
                                                                      
  if ( !size ) {                                                      
   5b80a:	4a83           	tstl %d3                                    
   5b80c:	673e           	beqs 5b84c <realloc+0x68>                   
    free( ptr );                                                      
    return (void *) 0;                                                
  }                                                                   
                                                                      
  if ( !_Protected_heap_Get_block_size(RTEMS_Malloc_Heap, ptr, &old_size) ) {
   5b80e:	486e fffc      	pea %fp@(-4)                                
   5b812:	2f02           	movel %d2,%sp@-                             
   5b814:	2f39 0005 d720 	movel 5d720 <RTEMS_Malloc_Heap>,%sp@-       
   5b81a:	4eb9 0005 b9cc 	jsr 5b9cc <_Protected_heap_Get_block_size>  
   5b820:	4fef 000c      	lea %sp@(12),%sp                            
   5b824:	4a00           	tstb %d0                                    
   5b826:	673c           	beqs 5b864 <realloc+0x80>                   
  #if defined(RTEMS_MALLOC_BOUNDARY_HELPERS)                          
    if (rtems_malloc_boundary_helpers)                                
      resize += (*rtems_malloc_boundary_helpers->overhead)();         
  #endif                                                              
                                                                      
  if ( _Protected_heap_Resize_block( RTEMS_Malloc_Heap, ptr, resize ) ) {
   5b828:	2f03           	movel %d3,%sp@-                             
   5b82a:	2f02           	movel %d2,%sp@-                             
   5b82c:	2f39 0005 d720 	movel 5d720 <RTEMS_Malloc_Heap>,%sp@-       
   5b832:	4eb9 0005 ba08 	jsr 5ba08 <_Protected_heap_Resize_block>    
   5b838:	4fef 000c      	lea %sp@(12),%sp                            
   5b83c:	4a00           	tstb %d0                                    
   5b83e:	6754           	beqs 5b894 <realloc+0xb0>                   
  memcpy( new_area, ptr, (size < old_size) ? size : old_size );       
  free( ptr );                                                        
                                                                      
  return new_area;                                                    
                                                                      
}                                                                     
   5b840:	2002           	movel %d2,%d0                               
   5b842:	4cee 001c fff0 	moveml %fp@(-16),%d2-%d4                    
   5b848:	4e5e           	unlk %fp                                    
   5b84a:	4e75           	rts                                         
   */                                                                 
  if ( !ptr )                                                         
    return malloc( size );                                            
                                                                      
  if ( !size ) {                                                      
    free( ptr );                                                      
   5b84c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   5b84e:	4282           	clrl %d2                                    <== NOT EXECUTED
   5b850:	4eb9 0004 a6f4 	jsr 4a6f4 <free>                            <== NOT EXECUTED
    return (void *) 0;                                                
   5b856:	588f           	addql #4,%sp                                <== NOT EXECUTED
  memcpy( new_area, ptr, (size < old_size) ? size : old_size );       
  free( ptr );                                                        
                                                                      
  return new_area;                                                    
                                                                      
}                                                                     
   5b858:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   5b85a:	4cee 001c fff0 	moveml %fp@(-16),%d2-%d4                    <== NOT EXECUTED
   5b860:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   5b862:	4e75           	rts                                         <== NOT EXECUTED
    free( ptr );                                                      
    return (void *) 0;                                                
  }                                                                   
                                                                      
  if ( !_Protected_heap_Get_block_size(RTEMS_Malloc_Heap, ptr, &old_size) ) {
    errno = EINVAL;                                                   
   5b864:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   5b86a:	4282           	clrl %d2                                    
   5b86c:	2040           	moveal %d0,%a0                              
   5b86e:	7016           	moveq #22,%d0                               
   5b870:	2080           	movel %d0,%a0@                              
  memcpy( new_area, ptr, (size < old_size) ? size : old_size );       
  free( ptr );                                                        
                                                                      
  return new_area;                                                    
                                                                      
}                                                                     
   5b872:	2002           	movel %d2,%d0                               
   5b874:	4cee 001c fff0 	moveml %fp@(-16),%d2-%d4                    
   5b87a:	4e5e           	unlk %fp                                    
   5b87c:	4e75           	rts                                         
  /*                                                                  
   *  Do not attempt to allocate memory if in a critical section or ISR.
   */                                                                 
                                                                      
  if (_System_state_Is_up(_System_state_Get())) {                     
    if (_Thread_Dispatch_disable_level > 0)                           
   5b87e:	2039 0005 ef78 	movel 5ef78 <_Thread_Dispatch_disable_level>,%d0
   5b884:	6752           	beqs 5b8d8 <realloc+0xf4>                   
  }                                                                   
                                                                      
  memcpy( new_area, ptr, (size < old_size) ? size : old_size );       
  free( ptr );                                                        
                                                                      
  return new_area;                                                    
   5b886:	4282           	clrl %d2                                    
                                                                      
}                                                                     
   5b888:	2002           	movel %d2,%d0                               
   5b88a:	4cee 001c fff0 	moveml %fp@(-16),%d2-%d4                    
   5b890:	4e5e           	unlk %fp                                    
   5b892:	4e75           	rts                                         
   *  There used to be a free on this error case but it is wrong to   
   *  free the memory per OpenGroup Single UNIX Specification V2      
   *  and the C Standard.                                             
   */                                                                 
                                                                      
  new_area = malloc( size );                                          
   5b894:	2f03           	movel %d3,%sp@-                             
   5b896:	4eb9 0004 ac8c 	jsr 4ac8c <malloc>                          
                                                                      
  MSBUMP(malloc_calls, (uint32_t) -1);   /* subtract off the malloc */
                                                                      
  if ( !new_area ) {                                                  
   5b89c:	588f           	addql #4,%sp                                
   *  and the C Standard.                                             
   */                                                                 
                                                                      
  new_area = malloc( size );                                          
                                                                      
  MSBUMP(malloc_calls, (uint32_t) -1);   /* subtract off the malloc */
   5b89e:	53b9 0005 ee28 	subql #1,5ee28 <rtems_malloc_statistics+0x4>
   *  There used to be a free on this error case but it is wrong to   
   *  free the memory per OpenGroup Single UNIX Specification V2      
   *  and the C Standard.                                             
   */                                                                 
                                                                      
  new_area = malloc( size );                                          
   5b8a4:	2800           	movel %d0,%d4                               
                                                                      
  MSBUMP(malloc_calls, (uint32_t) -1);   /* subtract off the malloc */
                                                                      
  if ( !new_area ) {                                                  
   5b8a6:	67de           	beqs 5b886 <realloc+0xa2>                   
    return (void *) 0;                                                
  }                                                                   
                                                                      
  memcpy( new_area, ptr, (size < old_size) ? size : old_size );       
   5b8a8:	202e fffc      	movel %fp@(-4),%d0                          
   5b8ac:	b083           	cmpl %d3,%d0                                
   5b8ae:	6402           	bccs 5b8b2 <realloc+0xce>                   
   5b8b0:	2600           	movel %d0,%d3                               
   5b8b2:	2f03           	movel %d3,%sp@-                             
   5b8b4:	2f02           	movel %d2,%sp@-                             
   5b8b6:	2f04           	movel %d4,%sp@-                             
   5b8b8:	4eb9 0004 f414 	jsr 4f414 <memcpy>                          
  free( ptr );                                                        
   5b8be:	2f02           	movel %d2,%sp@-                             
   5b8c0:	2404           	movel %d4,%d2                               
   5b8c2:	4eb9 0004 a6f4 	jsr 4a6f4 <free>                            
                                                                      
  return new_area;                                                    
   5b8c8:	4fef 0010      	lea %sp@(16),%sp                            
                                                                      
}                                                                     
   5b8cc:	2002           	movel %d2,%d0                               
   5b8ce:	4cee 001c fff0 	moveml %fp@(-16),%d2-%d4                    
   5b8d4:	4e5e           	unlk %fp                                    
   5b8d6:	4e75           	rts                                         
                                                                      
  if (_System_state_Is_up(_System_state_Get())) {                     
    if (_Thread_Dispatch_disable_level > 0)                           
      return (void *) 0;                                              
                                                                      
    if (_ISR_Nest_level > 0)                                          
   5b8d8:	2039 0005 f012 	movel 5f012 <_ISR_Nest_level>,%d0           
   5b8de:	6700 ff24      	beqw 5b804 <realloc+0x20>                   
  }                                                                   
                                                                      
  memcpy( new_area, ptr, (size < old_size) ? size : old_size );       
  free( ptr );                                                        
                                                                      
  return new_area;                                                    
   5b8e2:	4282           	clrl %d2                                    <== NOT EXECUTED
   5b8e4:	60a2           	bras 5b888 <realloc+0xa4>                   <== NOT EXECUTED
                                                                      
  /*                                                                  
   * Continue with realloc().                                         
   */                                                                 
  if ( !ptr )                                                         
    return malloc( size );                                            
   5b8e6:	2f03           	movel %d3,%sp@-                             
   5b8e8:	4eb9 0004 ac8c 	jsr 4ac8c <malloc>                          
   5b8ee:	588f           	addql #4,%sp                                
   5b8f0:	2400           	movel %d0,%d2                               
  memcpy( new_area, ptr, (size < old_size) ? size : old_size );       
  free( ptr );                                                        
                                                                      
  return new_area;                                                    
                                                                      
}                                                                     
   5b8f2:	2002           	movel %d2,%d0                               
   5b8f4:	4cee 001c fff0 	moveml %fp@(-16),%d2-%d4                    
   5b8fa:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      
000686c0 <rmdir>:                                                     
#include <rtems/seterr.h>                                             
                                                                      
int rmdir(                                                            
  const char *pathname                                                
)                                                                     
{                                                                     
   686c0:	4e56 ffbc      	linkw %fp,#-68                              
   686c4:	48d7 3c1c      	moveml %d2-%d4/%a2-%a5,%sp@                 
   686c8:	282e 0008      	movel %fp@(8),%d4                           
                                                                      
  /*                                                                  
   *  Get the parent node of the node we wish to remove. Find the parent path.
   */                                                                 
                                                                      
  parentpathlen = rtems_filesystem_dirname ( pathname );              
   686cc:	2f04           	movel %d4,%sp@-                             
   686ce:	4eb9 0004 6550 	jsr 46550 <rtems_filesystem_dirname>        
                                                                      
  if ( parentpathlen == 0 )                                           
   686d4:	588f           	addql #4,%sp                                
                                                                      
  /*                                                                  
   *  Get the parent node of the node we wish to remove. Find the parent path.
   */                                                                 
                                                                      
  parentpathlen = rtems_filesystem_dirname ( pathname );              
   686d6:	2400           	movel %d0,%d2                               
                                                                      
  if ( parentpathlen == 0 )                                           
   686d8:	6600 01ce      	bnew 688a8 <rmdir+0x1e8>                    
    rtems_filesystem_get_start_loc( pathname, &i, &parentloc );       
   686dc:	2044           	moveal %d4,%a0                              
   686de:	762f           	moveq #47,%d3                               
   686e0:	1210           	moveb %a0@,%d1                              
   686e2:	1001           	moveb %d1,%d0                               
   686e4:	49c0           	extbl %d0                                   
   686e6:	b680           	cmpl %d0,%d3                                
   686e8:	670e           	beqs 686f8 <rmdir+0x38>                     
   686ea:	163c 005c      	moveb #92,%d3                               <== NOT EXECUTED
   686ee:	b680           	cmpl %d0,%d3                                <== NOT EXECUTED
   686f0:	6706           	beqs 686f8 <rmdir+0x38>                     <== NOT EXECUTED
   686f2:	4a01           	tstb %d1                                    <== NOT EXECUTED
   686f4:	6600 00fc      	bnew 687f2 <rmdir+0x132>                    <== NOT EXECUTED
   686f8:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   
   686fe:	45ee ffec      	lea %fp@(-20),%a2                           
   68702:	49ee fff0      	lea %fp@(-16),%a4                           
   68706:	200e           	movel %fp,%d0                               
   68708:	0680 ffff fff4 	addil #-12,%d0                              
   6870e:	2640           	moveal %d0,%a3                              
   68710:	4bee fff8      	lea %fp@(-8),%a5                            
   68714:	224e           	moveal %fp,%a1                              
   68716:	24a8 0018      	movel %a0@(24),%a2@                         
   6871a:	28a8 001c      	movel %a0@(28),%a4@                         
   6871e:	26a8 0020      	movel %a0@(32),%a3@                         
   68722:	2aa8 0024      	movel %a0@(36),%a5@                         
   68726:	2328 0028      	movel %a0@(40),%a1@-                        
   6872a:	4203           	clrb %d3                                    
                                                                      
  /*                                                                  
   * Start from the parent to find the node that should be under it.  
   */                                                                 
                                                                      
  loc = parentloc;                                                    
   6872c:	2040           	moveal %d0,%a0                              
  name = pathname + parentpathlen;                                    
   6872e:	2644           	moveal %d4,%a3                              
   68730:	d7c2           	addal %d2,%a3                               
  name += rtems_filesystem_prefix_separators( name, strlen( name ) ); 
                                                                      
  result = rtems_filesystem_evaluate_relative_path( name , strlen( name ),
   68732:	240e           	movel %fp,%d2                               
   68734:	0682 ffff ffd8 	addil #-40,%d2                              
                                                                      
  /*                                                                  
   * Start from the parent to find the node that should be under it.  
   */                                                                 
                                                                      
  loc = parentloc;                                                    
   6873a:	2d50 ffe0      	movel %a0@,%fp@(-32)                        
   6873e:	2d51 ffe8      	movel %a1@,%fp@(-24)                        
   68742:	2d54 ffdc      	movel %a4@,%fp@(-36)                        
  name = pathname + parentpathlen;                                    
  name += rtems_filesystem_prefix_separators( name, strlen( name ) ); 
   68746:	49f9 0008 6ee4 	lea 86ee4 <strlen>,%a4                      
                                                                      
  /*                                                                  
   * Start from the parent to find the node that should be under it.  
   */                                                                 
                                                                      
  loc = parentloc;                                                    
   6874c:	2d55 ffe4      	movel %a5@,%fp@(-28)                        
   68750:	2d52 ffd8      	movel %a2@,%fp@(-40)                        
  name = pathname + parentpathlen;                                    
  name += rtems_filesystem_prefix_separators( name, strlen( name ) ); 
   68754:	2f0b           	movel %a3,%sp@-                             
   68756:	4e94           	jsr %a4@                                    
   68758:	2e80           	movel %d0,%sp@                              
   6875a:	2f0b           	movel %a3,%sp@-                             
   6875c:	4eb9 0004 6508 	jsr 46508 <rtems_filesystem_prefix_separators>
   68762:	d7c0           	addal %d0,%a3                               
                                                                      
  result = rtems_filesystem_evaluate_relative_path( name , strlen( name ),
   68764:	2f0b           	movel %a3,%sp@-                             
   68766:	4e94           	jsr %a4@                                    
   68768:	4297           	clrl %sp@                                   
   6876a:	2f02           	movel %d2,%sp@-                             
   6876c:	42a7           	clrl %sp@-                                  
   6876e:	2f00           	movel %d0,%sp@-                             
   68770:	2f0b           	movel %a3,%sp@-                             
   68772:	4eb9 0004 65c2 	jsr 465c2 <rtems_filesystem_evaluate_relative_path>
                                                    0, &loc, false ); 
  if ( result != 0 ) {                                                
   68778:	4fef 001c      	lea %sp@(28),%sp                            
   6877c:	4a80           	tstl %d0                                    
   6877e:	6600 00ee      	bnew 6886e <rmdir+0x1ae>                    
                                                                      
  /*                                                                  
   * Verify you can remove this node as a directory.                  
   */                                                                 
                                                                      
  if ( !loc.ops->node_type_h ){                                       
   68782:	226e ffe4      	moveal %fp@(-28),%a1                        
   68786:	2069 0010      	moveal %a1@(16),%a0                         
   6878a:	4a88           	tstl %a0                                    
   6878c:	6700 01a0      	beqw 6892e <rmdir+0x26e>                    
    if ( free_parentloc )                                             
      rtems_filesystem_freenode( &parentloc );                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if (  (*loc.ops->node_type_h)( &loc ) != RTEMS_FILESYSTEM_DIRECTORY ){
   68790:	2f02           	movel %d2,%sp@-                             
   68792:	4e90           	jsr %a0@                                    
   68794:	588f           	addql #4,%sp                                
   68796:	7201           	moveq #1,%d1                                
   68798:	b280           	cmpl %d0,%d1                                
   6879a:	6600 0086      	bnew 68822 <rmdir+0x162>                    
                                                                      
  /*                                                                  
   * Use the filesystems rmnod to remove the node.                    
   */                                                                 
                                                                      
  if ( !loc.handlers->rmnod_h ){                                      
   6879e:	206e ffe0      	moveal %fp@(-32),%a0                        
   687a2:	2068 0034      	moveal %a0@(52),%a0                         
   687a6:	4a88           	tstl %a0                                    
   687a8:	6700 0136      	beqw 688e0 <rmdir+0x220>                    
    if ( free_parentloc )                                             
      rtems_filesystem_freenode( &parentloc );                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result =  (*loc.handlers->rmnod_h)( &parentloc, &loc );             
   687ac:	2f02           	movel %d2,%sp@-                             
   687ae:	2f0a           	movel %a2,%sp@-                             
   687b0:	4e90           	jsr %a0@                                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   687b2:	206e ffe4      	moveal %fp@(-28),%a0                        
    if ( free_parentloc )                                             
      rtems_filesystem_freenode( &parentloc );                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result =  (*loc.handlers->rmnod_h)( &parentloc, &loc );             
   687b6:	2640           	moveal %d0,%a3                              
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   687b8:	508f           	addql #8,%sp                                
   687ba:	4a88           	tstl %a0                                    
   687bc:	670e           	beqs 687cc <rmdir+0x10c>                    
   687be:	2068 001c      	moveal %a0@(28),%a0                         
   687c2:	4a88           	tstl %a0                                    
   687c4:	6706           	beqs 687cc <rmdir+0x10c>                    
   687c6:	2f02           	movel %d2,%sp@-                             
   687c8:	4e90           	jsr %a0@                                    
   687ca:	588f           	addql #4,%sp                                
  if ( free_parentloc )                                               
   687cc:	4a03           	tstb %d3                                    
   687ce:	6716           	beqs 687e6 <rmdir+0x126>                    
    rtems_filesystem_freenode( &parentloc );                          
   687d0:	206e fff8      	moveal %fp@(-8),%a0                         
   687d4:	4a88           	tstl %a0                                    
   687d6:	670e           	beqs 687e6 <rmdir+0x126>                    
   687d8:	2068 001c      	moveal %a0@(28),%a0                         
   687dc:	4a88           	tstl %a0                                    
   687de:	6706           	beqs 687e6 <rmdir+0x126>                    
   687e0:	2f0a           	movel %a2,%sp@-                             
   687e2:	4e90           	jsr %a0@                                    
   687e4:	588f           	addql #4,%sp                                
                                                                      
  return result;                                                      
}                                                                     
   687e6:	200b           	movel %a3,%d0                               
   687e8:	4cee 3c1c ffbc 	moveml %fp@(-68),%d2-%d4/%a2-%a5            
   687ee:	4e5e           	unlk %fp                                    
   687f0:	4e75           	rts                                         
   */                                                                 
                                                                      
  parentpathlen = rtems_filesystem_dirname ( pathname );              
                                                                      
  if ( parentpathlen == 0 )                                           
    rtems_filesystem_get_start_loc( pathname, &i, &parentloc );       
   687f2:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   <== NOT EXECUTED
   687f8:	45ee ffec      	lea %fp@(-20),%a2                           <== NOT EXECUTED
   687fc:	5888           	addql #4,%a0                                <== NOT EXECUTED
   687fe:	49ee fff0      	lea %fp@(-16),%a4                           <== NOT EXECUTED
   68802:	200e           	movel %fp,%d0                               <== NOT EXECUTED
   68804:	0680 ffff fff4 	addil #-12,%d0                              <== NOT EXECUTED
   6880a:	2640           	moveal %d0,%a3                              <== NOT EXECUTED
   6880c:	4bee fff8      	lea %fp@(-8),%a5                            <== NOT EXECUTED
   68810:	224e           	moveal %fp,%a1                              <== NOT EXECUTED
   68812:	2498           	movel %a0@+,%a2@                            <== NOT EXECUTED
   68814:	2898           	movel %a0@+,%a4@                            <== NOT EXECUTED
   68816:	2698           	movel %a0@+,%a3@                            <== NOT EXECUTED
   68818:	2a98           	movel %a0@+,%a5@                            <== NOT EXECUTED
   6881a:	2310           	movel %a0@,%a1@-                            <== NOT EXECUTED
   6881c:	4203           	clrb %d3                                    <== NOT EXECUTED
   6881e:	6000 ff0c      	braw 6872c <rmdir+0x6c>                     <== NOT EXECUTED
      rtems_filesystem_freenode( &parentloc );                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if (  (*loc.ops->node_type_h)( &loc ) != RTEMS_FILESYSTEM_DIRECTORY ){
    rtems_filesystem_freenode( &loc );                                
   68822:	206e ffe4      	moveal %fp@(-28),%a0                        
   68826:	4a88           	tstl %a0                                    
   68828:	670e           	beqs 68838 <rmdir+0x178>                    
   6882a:	2068 001c      	moveal %a0@(28),%a0                         
   6882e:	4a88           	tstl %a0                                    
   68830:	6706           	beqs 68838 <rmdir+0x178>                    
   68832:	2f02           	movel %d2,%sp@-                             
   68834:	4e90           	jsr %a0@                                    
   68836:	588f           	addql #4,%sp                                
    if ( free_parentloc )                                             
   68838:	4a03           	tstb %d3                                    
   6883a:	6716           	beqs 68852 <rmdir+0x192>                    
      rtems_filesystem_freenode( &parentloc );                        
   6883c:	206e fff8      	moveal %fp@(-8),%a0                         
   68840:	4a88           	tstl %a0                                    
   68842:	670e           	beqs 68852 <rmdir+0x192>                    
   68844:	2068 001c      	moveal %a0@(28),%a0                         
   68848:	4a88           	tstl %a0                                    
   6884a:	6706           	beqs 68852 <rmdir+0x192>                    
   6884c:	2f0a           	movel %a2,%sp@-                             
   6884e:	4e90           	jsr %a0@                                    
   68850:	588f           	addql #4,%sp                                
    rtems_set_errno_and_return_minus_one( ENOTDIR );                  
   68852:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         
   68858:	367c ffff      	moveaw #-1,%a3                              
   6885c:	2040           	moveal %d0,%a0                              
   6885e:	7014           	moveq #20,%d0                               
   68860:	2080           	movel %d0,%a0@                              
  rtems_filesystem_freenode( &loc );                                  
  if ( free_parentloc )                                               
    rtems_filesystem_freenode( &parentloc );                          
                                                                      
  return result;                                                      
}                                                                     
   68862:	200b           	movel %a3,%d0                               
   68864:	4cee 3c1c ffbc 	moveml %fp@(-68),%d2-%d4/%a2-%a5            
   6886a:	4e5e           	unlk %fp                                    
   6886c:	4e75           	rts                                         
  name += rtems_filesystem_prefix_separators( name, strlen( name ) ); 
                                                                      
  result = rtems_filesystem_evaluate_relative_path( name , strlen( name ),
                                                    0, &loc, false ); 
  if ( result != 0 ) {                                                
    if ( free_parentloc )                                             
   6886e:	4a03           	tstb %d3                                    
   68870:	6610           	bnes 68882 <rmdir+0x1c2>                    
                                                                      
  result =  (*loc.handlers->rmnod_h)( &parentloc, &loc );             
                                                                      
  rtems_filesystem_freenode( &loc );                                  
  if ( free_parentloc )                                               
    rtems_filesystem_freenode( &parentloc );                          
   68872:	367c ffff      	moveaw #-1,%a3                              
                                                                      
  return result;                                                      
}                                                                     
   68876:	200b           	movel %a3,%d0                               
   68878:	4cee 3c1c ffbc 	moveml %fp@(-68),%d2-%d4/%a2-%a5            
   6887e:	4e5e           	unlk %fp                                    
   68880:	4e75           	rts                                         
                                                                      
  result = rtems_filesystem_evaluate_relative_path( name , strlen( name ),
                                                    0, &loc, false ); 
  if ( result != 0 ) {                                                
    if ( free_parentloc )                                             
      rtems_filesystem_freenode( &parentloc );                        
   68882:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
   68886:	4a88           	tstl %a0                                    <== NOT EXECUTED
   68888:	67e8           	beqs 68872 <rmdir+0x1b2>                    <== NOT EXECUTED
   6888a:	2028 001c      	movel %a0@(28),%d0                          <== NOT EXECUTED
   6888e:	67e2           	beqs 68872 <rmdir+0x1b2>                    <== NOT EXECUTED
   68890:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   68892:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   68894:	367c ffff      	moveaw #-1,%a3                              <== NOT EXECUTED
   68898:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   6889a:	588f           	addql #4,%sp                                <== NOT EXECUTED
  rtems_filesystem_freenode( &loc );                                  
  if ( free_parentloc )                                               
    rtems_filesystem_freenode( &parentloc );                          
                                                                      
  return result;                                                      
}                                                                     
   6889c:	200b           	movel %a3,%d0                               <== NOT EXECUTED
   6889e:	4cee 3c1c ffbc 	moveml %fp@(-68),%d2-%d4/%a2-%a5            <== NOT EXECUTED
   688a4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   688a6:	4e75           	rts                                         <== NOT EXECUTED
  parentpathlen = rtems_filesystem_dirname ( pathname );              
                                                                      
  if ( parentpathlen == 0 )                                           
    rtems_filesystem_get_start_loc( pathname, &i, &parentloc );       
  else {                                                              
    result = rtems_filesystem_evaluate_path(pathname, parentpathlen,  
   688a8:	42a7           	clrl %sp@-                                  
   688aa:	45ee ffec      	lea %fp@(-20),%a2                           
   688ae:	2f0a           	movel %a2,%sp@-                             
   688b0:	4878 0002      	pea 2 <DOUBLE_FLOAT>                        
   688b4:	2f00           	movel %d0,%sp@-                             
   688b6:	2f04           	movel %d4,%sp@-                             
   688b8:	4eb9 0004 66cc 	jsr 466cc <rtems_filesystem_evaluate_path>  
                                            RTEMS_LIBIO_PERMS_WRITE,  
                                            &parentloc,               
                                            false );                  
    if ( result != 0 )                                                
   688be:	4fef 0014      	lea %sp@(20),%sp                            
   688c2:	4a80           	tstl %d0                                    
   688c4:	66ac           	bnes 68872 <rmdir+0x1b2>                    
   688c6:	200e           	movel %fp,%d0                               
   688c8:	49ee fff0      	lea %fp@(-16),%a4                           
   688cc:	0680 ffff fff4 	addil #-12,%d0                              
   688d2:	4bee fff8      	lea %fp@(-8),%a5                            
   688d6:	43ee fffc      	lea %fp@(-4),%a1                            
   688da:	7601           	moveq #1,%d3                                
   688dc:	6000 fe4e      	braw 6872c <rmdir+0x6c>                     
  /*                                                                  
   * Use the filesystems rmnod to remove the node.                    
   */                                                                 
                                                                      
  if ( !loc.handlers->rmnod_h ){                                      
    rtems_filesystem_freenode( &loc );                                
   688e0:	206e ffe4      	moveal %fp@(-28),%a0                        <== NOT EXECUTED
   688e4:	4a88           	tstl %a0                                    <== NOT EXECUTED
   688e6:	670e           	beqs 688f6 <rmdir+0x236>                    <== NOT EXECUTED
   688e8:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   688ec:	4a88           	tstl %a0                                    <== NOT EXECUTED
   688ee:	6706           	beqs 688f6 <rmdir+0x236>                    <== NOT EXECUTED
   688f0:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   688f2:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   688f4:	588f           	addql #4,%sp                                <== NOT EXECUTED
    if ( free_parentloc )                                             
   688f6:	4a03           	tstb %d3                                    <== NOT EXECUTED
   688f8:	6716           	beqs 68910 <rmdir+0x250>                    <== NOT EXECUTED
      rtems_filesystem_freenode( &parentloc );                        
   688fa:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
   688fe:	4a88           	tstl %a0                                    <== NOT EXECUTED
   68900:	670e           	beqs 68910 <rmdir+0x250>                    <== NOT EXECUTED
   68902:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   68906:	4a88           	tstl %a0                                    <== NOT EXECUTED
   68908:	6706           	beqs 68910 <rmdir+0x250>                    <== NOT EXECUTED
   6890a:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   6890c:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   6890e:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   68910:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   68916:	367c ffff      	moveaw #-1,%a3                              <== NOT EXECUTED
   6891a:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  rtems_filesystem_freenode( &loc );                                  
  if ( free_parentloc )                                               
    rtems_filesystem_freenode( &parentloc );                          
                                                                      
  return result;                                                      
}                                                                     
   6891c:	200b           	movel %a3,%d0                               <== NOT EXECUTED
   6891e:	4cee 3c1c ffbc 	moveml %fp@(-68),%d2-%d4/%a2-%a5            <== NOT EXECUTED
                                                                      
  if ( !loc.handlers->rmnod_h ){                                      
    rtems_filesystem_freenode( &loc );                                
    if ( free_parentloc )                                             
      rtems_filesystem_freenode( &parentloc );                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   68924:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  rtems_filesystem_freenode( &loc );                                  
  if ( free_parentloc )                                               
    rtems_filesystem_freenode( &parentloc );                          
                                                                      
  return result;                                                      
}                                                                     
   6892a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   6892c:	4e75           	rts                                         <== NOT EXECUTED
  /*                                                                  
   * Verify you can remove this node as a directory.                  
   */                                                                 
                                                                      
  if ( !loc.ops->node_type_h ){                                       
    rtems_filesystem_freenode( &loc );                                
   6892e:	2069 001c      	moveal %a1@(28),%a0                         <== NOT EXECUTED
   68932:	4a88           	tstl %a0                                    <== NOT EXECUTED
   68934:	67c0           	beqs 688f6 <rmdir+0x236>                    <== NOT EXECUTED
  /*                                                                  
   * Use the filesystems rmnod to remove the node.                    
   */                                                                 
                                                                      
  if ( !loc.handlers->rmnod_h ){                                      
    rtems_filesystem_freenode( &loc );                                
   68936:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   68938:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   6893a:	588f           	addql #4,%sp                                <== NOT EXECUTED
   6893c:	60b8           	bras 688f6 <rmdir+0x236>                    <== NOT EXECUTED
	...                                                                  
                                                                      
0004d4bc <rtems_assoc_local_by_remote_bitfield>:                      
                                                                      
uint32_t   rtems_assoc_local_by_remote_bitfield(                      
    const rtems_assoc_t *ap,                                          
    uint32_t       remote_value                                       
)                                                                     
{                                                                     
   4d4bc:	4e56 ffe8      	linkw %fp,#-24                              
   4d4c0:	48d7 047c      	moveml %d2-%d6/%a2,%sp@                     
   4d4c4:	2c2e 0008      	movel %fp@(8),%d6                           
   4d4c8:	4283           	clrl %d3                                    
   4d4ca:	4285           	clrl %d5                                    
   4d4cc:	7401           	moveq #1,%d2                                
  uint32_t   b;                                                       
  uint32_t   local_value = 0;                                         
                                                                      
  for (b = 1; b; b <<= 1) {                                           
    if (b & remote_value)                                             
      local_value |= rtems_assoc_local_by_remote(ap, b);              
   4d4ce:	45f9 0004 d508 	lea 4d508 <rtems_assoc_local_by_remote>,%a2 
                                                                      
uint32_t   rtems_assoc_local_by_remote_bitfield(                      
    const rtems_assoc_t *ap,                                          
    uint32_t       remote_value                                       
)                                                                     
{                                                                     
   4d4d4:	282e 000c      	movel %fp@(12),%d4                          
  uint32_t   b;                                                       
  uint32_t   local_value = 0;                                         
                                                                      
  for (b = 1; b; b <<= 1) {                                           
    if (b & remote_value)                                             
   4d4d8:	2002           	movel %d2,%d0                               
)                                                                     
{                                                                     
  uint32_t   b;                                                       
  uint32_t   local_value = 0;                                         
                                                                      
  for (b = 1; b; b <<= 1) {                                           
   4d4da:	5283           	addql #1,%d3                                
    if (b & remote_value)                                             
   4d4dc:	c084           	andl %d4,%d0                                
   4d4de:	6614           	bnes 4d4f4 <rtems_assoc_local_by_remote_bitfield+0x38>
)                                                                     
{                                                                     
  uint32_t   b;                                                       
  uint32_t   local_value = 0;                                         
                                                                      
  for (b = 1; b; b <<= 1) {                                           
   4d4e0:	7020           	moveq #32,%d0                               
   4d4e2:	d482           	addl %d2,%d2                                
   4d4e4:	b083           	cmpl %d3,%d0                                
   4d4e6:	66f0           	bnes 4d4d8 <rtems_assoc_local_by_remote_bitfield+0x1c>
    if (b & remote_value)                                             
      local_value |= rtems_assoc_local_by_remote(ap, b);              
  }                                                                   
                                                                      
  return local_value;                                                 
}                                                                     
   4d4e8:	2005           	movel %d5,%d0                               
   4d4ea:	4cee 047c ffe8 	moveml %fp@(-24),%d2-%d6/%a2                
   4d4f0:	4e5e           	unlk %fp                                    
   4d4f2:	4e75           	rts                                         
  uint32_t   b;                                                       
  uint32_t   local_value = 0;                                         
                                                                      
  for (b = 1; b; b <<= 1) {                                           
    if (b & remote_value)                                             
      local_value |= rtems_assoc_local_by_remote(ap, b);              
   4d4f4:	2f02           	movel %d2,%sp@-                             
)                                                                     
{                                                                     
  uint32_t   b;                                                       
  uint32_t   local_value = 0;                                         
                                                                      
  for (b = 1; b; b <<= 1) {                                           
   4d4f6:	d482           	addl %d2,%d2                                
    if (b & remote_value)                                             
      local_value |= rtems_assoc_local_by_remote(ap, b);              
   4d4f8:	2f06           	movel %d6,%sp@-                             
   4d4fa:	4e92           	jsr %a2@                                    
   4d4fc:	508f           	addql #8,%sp                                
   4d4fe:	8a80           	orl %d0,%d5                                 
)                                                                     
{                                                                     
  uint32_t   b;                                                       
  uint32_t   local_value = 0;                                         
                                                                      
  for (b = 1; b; b <<= 1) {                                           
   4d500:	7020           	moveq #32,%d0                               
   4d502:	b083           	cmpl %d3,%d0                                
   4d504:	66d2           	bnes 4d4d8 <rtems_assoc_local_by_remote_bitfield+0x1c>
   4d506:	60e0           	bras 4d4e8 <rtems_assoc_local_by_remote_bitfield+0x2c><== NOT EXECUTED
                                                                      
0004d52c <rtems_assoc_name_bad>:                                      
    uint32_t   bad_value                                              
#else                                                                 
    uint32_t   bad_value __attribute((unused))                        
#endif                                                                
)                                                                     
{                                                                     
   4d52c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
    sprintf(bad_buffer, "< %" PRId32 "[0x%" PRIx32 " ] >", bad_value, bad_value);
#else                                                                 
    static char bad_buffer[40] = "<assocnamebad.c: : BAD NAME>";      
#endif                                                                
    return bad_buffer;                                                
}                                                                     
   4d530:	203c 0005 d8b4 	movel #383156,%d0                           <== NOT EXECUTED
   4d536:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
0004a568 <rtems_assoc_name_by_local>:                                 
                                                                      
const char *rtems_assoc_name_by_local(                                
  const rtems_assoc_t *ap,                                            
  uint32_t             local_value                                    
)                                                                     
{                                                                     
   4a568:	4e56 0000      	linkw %fp,#0                                
   4a56c:	2f02           	movel %d2,%sp@-                             
   4a56e:	242e 000c      	movel %fp@(12),%d2                          
  const rtems_assoc_t *nap;                                           
                                                                      
  nap = rtems_assoc_ptr_by_local(ap, local_value);                    
   4a572:	2f02           	movel %d2,%sp@-                             
   4a574:	2f2e 0008      	movel %fp@(8),%sp@-                         
   4a578:	4eb9 0004 a5a0 	jsr 4a5a0 <rtems_assoc_ptr_by_local>        
  if (nap)                                                            
   4a57e:	508f           	addql #8,%sp                                
   4a580:	4a80           	tstl %d0                                    
   4a582:	670c           	beqs 4a590 <rtems_assoc_name_by_local+0x28> 
    return nap->name;                                                 
                                                                      
  return rtems_assoc_name_bad(local_value);                           
}                                                                     
   4a584:	2040           	moveal %d0,%a0                              
   4a586:	242e fffc      	movel %fp@(-4),%d2                          
   4a58a:	4e5e           	unlk %fp                                    
   4a58c:	2010           	movel %a0@,%d0                              
   4a58e:	4e75           	rts                                         
                                                                      
  nap = rtems_assoc_ptr_by_local(ap, local_value);                    
  if (nap)                                                            
    return nap->name;                                                 
                                                                      
  return rtems_assoc_name_bad(local_value);                           
   4a590:	2d42 0008      	movel %d2,%fp@(8)                           <== NOT EXECUTED
}                                                                     
   4a594:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
   4a598:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
  nap = rtems_assoc_ptr_by_local(ap, local_value);                    
  if (nap)                                                            
    return nap->name;                                                 
                                                                      
  return rtems_assoc_name_bad(local_value);                           
   4a59a:	4ef9 0004 d52c 	jmp 4d52c <rtems_assoc_name_bad>            <== NOT EXECUTED
                                                                      
0004a5a0 <rtems_assoc_ptr_by_local>:                                  
                                                                      
const rtems_assoc_t *rtems_assoc_ptr_by_local(                        
  const rtems_assoc_t *ap,                                            
  uint32_t             local_value                                    
)                                                                     
{                                                                     
   4a5a0:	4e56 0000      	linkw %fp,#0                                
   4a5a4:	2f0a           	movel %a2,%sp@-                             
   4a5a6:	246e 0008      	moveal %fp@(8),%a2                          
   4a5aa:	2f02           	movel %d2,%sp@-                             
   4a5ac:	242e 000c      	movel %fp@(12),%d2                          
  const rtems_assoc_t *default_ap = 0;                                
                                                                      
  if (rtems_assoc_is_default(ap))                                     
   4a5b0:	2012           	movel %a2@,%d0                              
   4a5b2:	6742           	beqs 4a5f6 <rtems_assoc_ptr_by_local+0x56>  
   4a5b4:	4879 0005 c9b8 	pea 5c9b8 <IMFS_link_handlers+0x74>         
   4a5ba:	2f00           	movel %d0,%sp@-                             
   4a5bc:	4eb9 0004 fafc 	jsr 4fafc <strcmp>                          
   4a5c2:	508f           	addql #8,%sp                                
   4a5c4:	4a80           	tstl %d0                                    
   4a5c6:	662a           	bnes 4a5f2 <rtems_assoc_ptr_by_local+0x52>  
    default_ap = ap++;                                                
   4a5c8:	41ea 000c      	lea %a2@(12),%a0                            <== NOT EXECUTED
                                                                      
  for ( ; ap->name; ap++)                                             
   4a5cc:	4a90           	tstl %a0@                                   <== NOT EXECUTED
   4a5ce:	6714           	beqs 4a5e4 <rtems_assoc_ptr_by_local+0x44>  <== NOT EXECUTED
   4a5d0:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   4a5d2:	2448           	moveal %a0,%a2                              <== NOT EXECUTED
    if (ap->local_value == local_value)                               
   4a5d4:	b4aa 0004      	cmpl %a2@(4),%d2                            
   4a5d8:	670a           	beqs 4a5e4 <rtems_assoc_ptr_by_local+0x44>  
  const rtems_assoc_t *default_ap = 0;                                
                                                                      
  if (rtems_assoc_is_default(ap))                                     
    default_ap = ap++;                                                
                                                                      
  for ( ; ap->name; ap++)                                             
   4a5da:	45ea 000c      	lea %a2@(12),%a2                            
   4a5de:	4a92           	tstl %a2@                                   
   4a5e0:	66f2           	bnes 4a5d4 <rtems_assoc_ptr_by_local+0x34>  
   4a5e2:	2440           	moveal %d0,%a2                              
    if (ap->local_value == local_value)                               
      return ap;                                                      
                                                                      
  return default_ap;                                                  
}                                                                     
   4a5e4:	200a           	movel %a2,%d0                               
   4a5e6:	242e fff8      	movel %fp@(-8),%d2                          
   4a5ea:	246e fffc      	moveal %fp@(-4),%a2                         
   4a5ee:	4e5e           	unlk %fp                                    
   4a5f0:	4e75           	rts                                         
  uint32_t             local_value                                    
)                                                                     
{                                                                     
  const rtems_assoc_t *default_ap = 0;                                
                                                                      
  if (rtems_assoc_is_default(ap))                                     
   4a5f2:	4280           	clrl %d0                                    
   4a5f4:	60de           	bras 4a5d4 <rtems_assoc_ptr_by_local+0x34>  
   4a5f6:	95ca           	subal %a2,%a2                               <== NOT EXECUTED
  for ( ; ap->name; ap++)                                             
    if (ap->local_value == local_value)                               
      return ap;                                                      
                                                                      
  return default_ap;                                                  
}                                                                     
   4a5f8:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   4a5fa:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   4a5fe:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   4a602:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
0004d53c <rtems_assoc_ptr_by_remote>:                                 
                                                                      
const rtems_assoc_t *rtems_assoc_ptr_by_remote(                       
  const rtems_assoc_t *ap,                                            
  uint32_t       remote_value                                         
)                                                                     
{                                                                     
   4d53c:	4e56 0000      	linkw %fp,#0                                
   4d540:	2f0a           	movel %a2,%sp@-                             
   4d542:	246e 0008      	moveal %fp@(8),%a2                          
   4d546:	2f02           	movel %d2,%sp@-                             
   4d548:	242e 000c      	movel %fp@(12),%d2                          
  const rtems_assoc_t *default_ap = 0;                                
                                                                      
  if (rtems_assoc_is_default(ap))                                     
   4d54c:	2012           	movel %a2@,%d0                              
   4d54e:	6742           	beqs 4d592 <rtems_assoc_ptr_by_remote+0x56> 
   4d550:	4879 0005 c9b8 	pea 5c9b8 <IMFS_link_handlers+0x74>         
   4d556:	2f00           	movel %d0,%sp@-                             
   4d558:	4eb9 0004 fafc 	jsr 4fafc <strcmp>                          
   4d55e:	508f           	addql #8,%sp                                
   4d560:	4a80           	tstl %d0                                    
   4d562:	662a           	bnes 4d58e <rtems_assoc_ptr_by_remote+0x52> 
    default_ap = ap++;                                                
   4d564:	41ea 000c      	lea %a2@(12),%a0                            <== NOT EXECUTED
                                                                      
  for ( ; ap->name; ap++)                                             
   4d568:	4a90           	tstl %a0@                                   <== NOT EXECUTED
   4d56a:	6714           	beqs 4d580 <rtems_assoc_ptr_by_remote+0x44> <== NOT EXECUTED
   4d56c:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   4d56e:	2448           	moveal %a0,%a2                              <== NOT EXECUTED
    if (ap->remote_value == remote_value)                             
   4d570:	b4aa 0008      	cmpl %a2@(8),%d2                            
   4d574:	670a           	beqs 4d580 <rtems_assoc_ptr_by_remote+0x44> 
  const rtems_assoc_t *default_ap = 0;                                
                                                                      
  if (rtems_assoc_is_default(ap))                                     
    default_ap = ap++;                                                
                                                                      
  for ( ; ap->name; ap++)                                             
   4d576:	45ea 000c      	lea %a2@(12),%a2                            
   4d57a:	4a92           	tstl %a2@                                   
   4d57c:	66f2           	bnes 4d570 <rtems_assoc_ptr_by_remote+0x34> 
   4d57e:	2440           	moveal %d0,%a2                              
    if (ap->remote_value == remote_value)                             
      return ap;                                                      
                                                                      
  return default_ap;                                                  
}                                                                     
   4d580:	200a           	movel %a2,%d0                               
   4d582:	242e fff8      	movel %fp@(-8),%d2                          
   4d586:	246e fffc      	moveal %fp@(-4),%a2                         
   4d58a:	4e5e           	unlk %fp                                    
   4d58c:	4e75           	rts                                         
  uint32_t       remote_value                                         
)                                                                     
{                                                                     
  const rtems_assoc_t *default_ap = 0;                                
                                                                      
  if (rtems_assoc_is_default(ap))                                     
   4d58e:	4280           	clrl %d0                                    
   4d590:	60de           	bras 4d570 <rtems_assoc_ptr_by_remote+0x34> 
   4d592:	95ca           	subal %a2,%a2                               <== NOT EXECUTED
  for ( ; ap->name; ap++)                                             
    if (ap->remote_value == remote_value)                             
      return ap;                                                      
                                                                      
  return default_ap;                                                  
}                                                                     
   4d594:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   4d596:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   4d59a:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   4d59e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
0004e384 <rtems_assoc_remote_by_local>:                               
                                                                      
uint32_t rtems_assoc_remote_by_local(                                 
  const rtems_assoc_t *ap,                                            
  uint32_t       local_value                                          
)                                                                     
{                                                                     
   4e384:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  const rtems_assoc_t *nap;                                           
                                                                      
  nap = rtems_assoc_ptr_by_local(ap, local_value);                    
   4e388:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   4e38c:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4e390:	4eb9 0004 a5a0 	jsr 4a5a0 <rtems_assoc_ptr_by_local>        <== NOT EXECUTED
  if (nap)                                                            
   4e396:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4e398:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4e39a:	6706           	beqs 4e3a2 <rtems_assoc_remote_by_local+0x1e><== NOT EXECUTED
    return nap->remote_value;                                         
   4e39c:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4e39e:	2028 0008      	movel %a0@(8),%d0                           <== NOT EXECUTED
                                                                      
  return 0;                                                           
}                                                                     
   4e3a2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
00042708 <rtems_bsp_cmdline_get_param>:                               
const char *rtems_bsp_cmdline_get_param(                              
  const char *name,                                                   
  char       *value,                                                  
  size_t      length                                                  
)                                                                     
{                                                                     
   42708:	4e56 ffec      	linkw %fp,#-20                              
   4270c:	202e 0008      	movel %fp@(8),%d0                           
   42710:	48d7 043c      	moveml %d2-%d5/%a2,%sp@                     
   42714:	246e 000c      	moveal %fp@(12),%a2                         
  const char *p;                                                      
                                                                      
  if ( !name )                                                        
   42718:	4a80           	tstl %d0                                    
   4271a:	660e           	bnes 4272a <rtems_bsp_cmdline_get_param+0x22>
  int         i;                                                      
  int         quotes;                                                 
  const char *p = start;                                              
                                                                      
  quotes=0;                                                           
  for (i=0 ; *p && i<length-1; ) {                                    
   4271c:	95ca           	subal %a2,%a2                               
    return NULL;                                                      
                                                                      
  copy_string( p, value, length );                                    
                                                                      
  return value;                                                       
}                                                                     
   4271e:	200a           	movel %a2,%d0                               
   42720:	4cee 043c ffec 	moveml %fp@(-20),%d2-%d5/%a2                
   42726:	4e5e           	unlk %fp                                    
   42728:	4e75           	rts                                         
  const char *p;                                                      
                                                                      
  if ( !name )                                                        
    return NULL;                                                      
                                                                      
  if ( !value )                                                       
   4272a:	4a8a           	tstl %a2                                    
   4272c:	67f0           	beqs 4271e <rtems_bsp_cmdline_get_param+0x16>
    return NULL;                                                      
                                                                      
  if ( !length )                                                      
   4272e:	4aae 0010      	tstl %fp@(16)                               
   42732:	67e8           	beqs 4271c <rtems_bsp_cmdline_get_param+0x14>
    return NULL;                                                      
                                                                      
  value[0] = '\0';                                                    
   42734:	4212           	clrb %a2@                                   
                                                                      
  p = rtems_bsp_cmdline_get_param_raw( name );                        
   42736:	2f00           	movel %d0,%sp@-                             
   42738:	4eb9 0004 2798 	jsr 42798 <rtems_bsp_cmdline_get_param_raw> 
                                                                      
  if ( !p )                                                           
   4273e:	588f           	addql #4,%sp                                
  if ( !length )                                                      
    return NULL;                                                      
                                                                      
  value[0] = '\0';                                                    
                                                                      
  p = rtems_bsp_cmdline_get_param_raw( name );                        
   42740:	2240           	moveal %d0,%a1                              
                                                                      
  if ( !p )                                                           
   42742:	4a80           	tstl %d0                                    
   42744:	67d6           	beqs 4271c <rtems_bsp_cmdline_get_param+0x14>
  int         i;                                                      
  int         quotes;                                                 
  const char *p = start;                                              
                                                                      
  quotes=0;                                                           
  for (i=0 ; *p && i<length-1; ) {                                    
   42746:	1411           	moveb %a1@,%d2                              
   42748:	67d4           	beqs 4271e <rtems_bsp_cmdline_get_param+0x16>
   4274a:	202e 0010      	movel %fp@(16),%d0                          
   4274e:	5380           	subql #1,%d0                                
   42750:	67cc           	beqs 4271e <rtems_bsp_cmdline_get_param+0x16>
   42752:	91c8           	subal %a0,%a0                               
   42754:	4281           	clrl %d1                                    
   42756:	4284           	clrl %d4                                    
    if ( *p == '\"' ) {                                               
   42758:	7a22           	moveq #34,%d5                               
   4275a:	1602           	moveb %d2,%d3                               
   4275c:	49c3           	extbl %d3                                   
   4275e:	ba83           	cmpl %d3,%d5                                
   42760:	6730           	beqs 42792 <rtems_bsp_cmdline_get_param+0x8a>
      quotes++;                                                       
    } else if ( ((quotes % 2) == 0) && *p == ' ' )                    
   42762:	0804 0000      	btst #0,%d4                                 
   42766:	6606           	bnes 4276e <rtems_bsp_cmdline_get_param+0x66>
   42768:	7a20           	moveq #32,%d5                               
   4276a:	ba83           	cmpl %d3,%d5                                
   4276c:	67b0           	beqs 4271e <rtems_bsp_cmdline_get_param+0x16>
      break;                                                          
    value[i++] = *p++;                                                
   4276e:	5281           	addql #1,%d1                                
   42770:	1582 8800      	moveb %d2,%a2@(00000000,%a0:l)              
    value[i] = '\0';                                                  
   42774:	4202           	clrb %d2                                    
  for (i=0 ; *p && i<length-1; ) {                                    
    if ( *p == '\"' ) {                                               
      quotes++;                                                       
    } else if ( ((quotes % 2) == 0) && *p == ' ' )                    
      break;                                                          
    value[i++] = *p++;                                                
   42776:	2041           	moveal %d1,%a0                              
    value[i] = '\0';                                                  
   42778:	1582 1800      	moveb %d2,%a2@(00000000,%d1:l)              
  int         i;                                                      
  int         quotes;                                                 
  const char *p = start;                                              
                                                                      
  quotes=0;                                                           
  for (i=0 ; *p && i<length-1; ) {                                    
   4277c:	1431 1800      	moveb %a1@(00000000,%d1:l),%d2              
   42780:	679c           	beqs 4271e <rtems_bsp_cmdline_get_param+0x16>
   42782:	b081           	cmpl %d1,%d0                                
   42784:	62d2           	bhis 42758 <rtems_bsp_cmdline_get_param+0x50>
    return NULL;                                                      
                                                                      
  copy_string( p, value, length );                                    
                                                                      
  return value;                                                       
}                                                                     
   42786:	200a           	movel %a2,%d0                               <== NOT EXECUTED
   42788:	4cee 043c ffec 	moveml %fp@(-20),%d2-%d5/%a2                <== NOT EXECUTED
   4278e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   42790:	4e75           	rts                                         <== NOT EXECUTED
  const char *p = start;                                              
                                                                      
  quotes=0;                                                           
  for (i=0 ; *p && i<length-1; ) {                                    
    if ( *p == '\"' ) {                                               
      quotes++;                                                       
   42792:	5284           	addql #1,%d4                                
   42794:	60d8           	bras 4276e <rtems_bsp_cmdline_get_param+0x66>
	...                                                                  
                                                                      
000427c0 <rtems_bsp_cmdline_get_param_rhs>:                           
const char *rtems_bsp_cmdline_get_param_rhs(                          
  const char *name,                                                   
  char       *value,                                                  
  size_t      length                                                  
)                                                                     
{                                                                     
   427c0:	4e56 fff4      	linkw %fp,#-12                              
   427c4:	48d7 001c      	moveml %d2-%d4,%sp@                         
  const char *p;                                                      
  const char *rhs;                                                    
  char       *d;                                                      
                                                                      
  p = rtems_bsp_cmdline_get_param( name, value, length );             
   427c8:	2f2e 0010      	movel %fp@(16),%sp@-                        
const char *rtems_bsp_cmdline_get_param_rhs(                          
  const char *name,                                                   
  char       *value,                                                  
  size_t      length                                                  
)                                                                     
{                                                                     
   427cc:	242e 000c      	movel %fp@(12),%d2                          
  const char *p;                                                      
  const char *rhs;                                                    
  char       *d;                                                      
                                                                      
  p = rtems_bsp_cmdline_get_param( name, value, length );             
   427d0:	2f02           	movel %d2,%sp@-                             
const char *rtems_bsp_cmdline_get_param_rhs(                          
  const char *name,                                                   
  char       *value,                                                  
  size_t      length                                                  
)                                                                     
{                                                                     
   427d2:	282e 0008      	movel %fp@(8),%d4                           
  const char *p;                                                      
  const char *rhs;                                                    
  char       *d;                                                      
                                                                      
  p = rtems_bsp_cmdline_get_param( name, value, length );             
   427d6:	2f04           	movel %d4,%sp@-                             
   427d8:	4eb9 0004 2708 	jsr 42708 <rtems_bsp_cmdline_get_param>     
  if ( !p )                                                           
   427de:	4fef 000c      	lea %sp@(12),%sp                            
{                                                                     
  const char *p;                                                      
  const char *rhs;                                                    
  char       *d;                                                      
                                                                      
  p = rtems_bsp_cmdline_get_param( name, value, length );             
   427e2:	2600           	movel %d0,%d3                               
  if ( !p )                                                           
   427e4:	660e           	bnes 427f4 <rtems_bsp_cmdline_get_param_rhs+0x34>
    *d++ = *rhs++;                                                    
  if ( *(d-1) == '\"' )                                               
    d--;                                                              
  *d = '\0';                                                          
                                                                      
  return value;                                                       
   427e6:	4282           	clrl %d2                                    
}                                                                     
   427e8:	2002           	movel %d2,%d0                               
   427ea:	4cee 001c fff4 	moveml %fp@(-12),%d2-%d4                    
   427f0:	4e5e           	unlk %fp                                    
   427f2:	4e75           	rts                                         
                                                                      
  p = rtems_bsp_cmdline_get_param( name, value, length );             
  if ( !p )                                                           
    return NULL;                                                      
                                                                      
  rhs = &p[strlen(name)];                                             
   427f4:	2f04           	movel %d4,%sp@-                             
   427f6:	4eb9 0005 05dc 	jsr 505dc <strlen>                          
   427fc:	588f           	addql #4,%sp                                
   427fe:	2043           	moveal %d3,%a0                              
   42800:	d1c0           	addal %d0,%a0                               
  if ( *rhs != '=' )                                                  
   42802:	723d           	moveq #61,%d1                               
   42804:	1010           	moveb %a0@,%d0                              
   42806:	49c0           	extbl %d0                                   
   42808:	b280           	cmpl %d0,%d1                                
   4280a:	66da           	bnes 427e6 <rtems_bsp_cmdline_get_param_rhs+0x26>
    return NULL;                                                      
                                                                      
  rhs++;                                                              
   4280c:	5288           	addql #1,%a0                                
  if ( *rhs == '\"' )                                                 
   4280e:	7622           	moveq #34,%d3                               
   42810:	1010           	moveb %a0@,%d0                              
   42812:	1200           	moveb %d0,%d1                               
   42814:	49c1           	extbl %d1                                   
   42816:	b681           	cmpl %d1,%d3                                
   42818:	672a           	beqs 42844 <rtems_bsp_cmdline_get_param_rhs+0x84>
    rhs++;                                                            
  for ( d=value ; *rhs ; )                                            
   4281a:	4a00           	tstb %d0                                    
   4281c:	672c           	beqs 4284a <rtems_bsp_cmdline_get_param_rhs+0x8a>
   4281e:	2242           	moveal %d2,%a1                              
    *d++ = *rhs++;                                                    
   42820:	5288           	addql #1,%a0                                
   42822:	12c0           	moveb %d0,%a1@+                             
    return NULL;                                                      
                                                                      
  rhs++;                                                              
  if ( *rhs == '\"' )                                                 
    rhs++;                                                            
  for ( d=value ; *rhs ; )                                            
   42824:	1010           	moveb %a0@,%d0                              
   42826:	66f8           	bnes 42820 <rtems_bsp_cmdline_get_param_rhs+0x60>
    *d++ = *rhs++;                                                    
  if ( *(d-1) == '\"' )                                               
   42828:	2049           	moveal %a1,%a0                              
   4282a:	7222           	moveq #34,%d1                               
   4282c:	1020           	moveb %a0@-,%d0                             
   4282e:	49c0           	extbl %d0                                   
   42830:	b280           	cmpl %d0,%d1                                
   42832:	6702           	beqs 42836 <rtems_bsp_cmdline_get_param_rhs+0x76>
   42834:	2049           	moveal %a1,%a0                              
    d--;                                                              
  *d = '\0';                                                          
                                                                      
  return value;                                                       
}                                                                     
   42836:	2002           	movel %d2,%d0                               
    rhs++;                                                            
  for ( d=value ; *rhs ; )                                            
    *d++ = *rhs++;                                                    
  if ( *(d-1) == '\"' )                                               
    d--;                                                              
  *d = '\0';                                                          
   42838:	4210           	clrb %a0@                                   
                                                                      
  return value;                                                       
}                                                                     
   4283a:	4cee 001c fff4 	moveml %fp@(-12),%d2-%d4                    
   42840:	4e5e           	unlk %fp                                    
   42842:	4e75           	rts                                         
  if ( *rhs != '=' )                                                  
    return NULL;                                                      
                                                                      
  rhs++;                                                              
  if ( *rhs == '\"' )                                                 
    rhs++;                                                            
   42844:	5288           	addql #1,%a0                                
   42846:	1010           	moveb %a0@,%d0                              
   42848:	60d0           	bras 4281a <rtems_bsp_cmdline_get_param_rhs+0x5a>
  for ( d=value ; *rhs ; )                                            
   4284a:	2242           	moveal %d2,%a1                              
   4284c:	60da           	bras 42828 <rtems_bsp_cmdline_get_param_rhs+0x68>
	...                                                                  
                                                                      
0004e348 <rtems_deviceio_errno>:                                      
    { 0, 0, 0 },                                                      
};                                                                    
                                                                      
int                                                                   
rtems_deviceio_errno(rtems_status_code code)                          
{                                                                     
   4e348:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   4e34c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
    int rc;                                                           
                                                                      
    if ((rc = rtems_assoc_remote_by_local(errno_assoc, (uint32_t  ) code)))
   4e34e:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   4e352:	4879 0005 cd88 	pea 5cd88 <errno_assoc>                     <== NOT EXECUTED
   4e358:	4eb9 0004 e384 	jsr 4e384 <rtems_assoc_remote_by_local>     <== NOT EXECUTED
   4e35e:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4e360:	2400           	movel %d0,%d2                               <== NOT EXECUTED
   4e362:	660a           	bnes 4e36e <rtems_deviceio_errno+0x26>      <== NOT EXECUTED
    {                                                                 
        errno = rc;                                                   
        return -1;                                                    
    }                                                                 
    return -1;                                                        
}                                                                     
   4e364:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
   4e368:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   4e36a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4e36c:	4e75           	rts                                         <== NOT EXECUTED
{                                                                     
    int rc;                                                           
                                                                      
    if ((rc = rtems_assoc_remote_by_local(errno_assoc, (uint32_t  ) code)))
    {                                                                 
        errno = rc;                                                   
   4e36e:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   4e374:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
        return -1;                                                    
    }                                                                 
    return -1;                                                        
}                                                                     
   4e376:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
{                                                                     
    int rc;                                                           
                                                                      
    if ((rc = rtems_assoc_remote_by_local(errno_assoc, (uint32_t  ) code)))
    {                                                                 
        errno = rc;                                                   
   4e378:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
        return -1;                                                    
    }                                                                 
    return -1;                                                        
}                                                                     
   4e37a:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
   4e37e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
00042544 <rtems_error>:                                               
int rtems_error(                                                      
    rtems_error_code_t error_flag,                                    
    const char *printf_format,                                        
    ...                                                               
  )                                                                   
{                                                                     
   42544:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
    va_list arglist;                                                  
    int chars_written;                                                
                                                                      
    va_start(arglist, printf_format);                                 
    chars_written = rtems_verror(error_flag, printf_format, arglist); 
   42548:	486e 0010      	pea %fp@(16)                                <== NOT EXECUTED
   4254c:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   42550:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   42554:	4eba fdda      	jsr %pc@(42330 <rtems_verror>)              <== NOT EXECUTED
    va_end(arglist);                                                  
                                                                      
    return chars_written;                                             
}                                                                     
   42558:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000425a4 <rtems_filesystem_dirname>:                                  
}                                                                     
                                                                      
int rtems_filesystem_dirname(                                         
  const char  *pathname                                               
)                                                                     
{                                                                     
   425a4:	4e56 fff0      	linkw %fp,#-16                              
   425a8:	48d7 041c      	moveml %d2-%d4/%a2,%sp@                     
   425ac:	246e 0008      	moveal %fp@(8),%a2                          
  int len = strlen( pathname );                                       
   425b0:	2f0a           	movel %a2,%sp@-                             
   425b2:	4eb9 0004 ffc0 	jsr 4ffc0 <strlen>                          
   425b8:	588f           	addql #4,%sp                                
                                                                      
  while ( len ) {                                                     
   425ba:	4a80           	tstl %d0                                    
   425bc:	6742           	beqs 42600 <rtems_filesystem_dirname+0x5c>  
    len--;                                                            
   425be:	2200           	movel %d0,%d1                               
   425c0:	5381           	subql #1,%d1                                
    if ( rtems_filesystem_is_separator( pathname[len] ) )             
   425c2:	782f           	moveq #47,%d4                               
   425c4:	1632 1800      	moveb %a2@(00000000,%d1:l),%d3              
   425c8:	1403           	moveb %d3,%d2                               
   425ca:	49c2           	extbl %d2                                   
   425cc:	b882           	cmpl %d2,%d4                                
   425ce:	673a           	beqs 4260a <rtems_filesystem_dirname+0x66>  
   425d0:	183c 005c      	moveb #92,%d4                               
   425d4:	b882           	cmpl %d2,%d4                                
   425d6:	6732           	beqs 4260a <rtems_filesystem_dirname+0x66>  
   425d8:	4a03           	tstb %d3                                    
   425da:	672e           	beqs 4260a <rtems_filesystem_dirname+0x66>  
   425dc:	41f2 08fe      	lea %a2@(fffffffe,%d0:l),%a0                
   425e0:	2001           	movel %d1,%d0                               
  const char  *pathname                                               
)                                                                     
{                                                                     
  int len = strlen( pathname );                                       
                                                                      
  while ( len ) {                                                     
   425e2:	4a80           	tstl %d0                                    
   425e4:	671a           	beqs 42600 <rtems_filesystem_dirname+0x5c>  
    len--;                                                            
   425e6:	5380           	subql #1,%d0                                
    if ( rtems_filesystem_is_separator( pathname[len] ) )             
   425e8:	762f           	moveq #47,%d3                               
   425ea:	1410           	moveb %a0@,%d2                              
   425ec:	5388           	subql #1,%a0                                
   425ee:	1202           	moveb %d2,%d1                               
   425f0:	49c1           	extbl %d1                                   
   425f2:	b681           	cmpl %d1,%d3                                
   425f4:	670a           	beqs 42600 <rtems_filesystem_dirname+0x5c>  
   425f6:	785c           	moveq #92,%d4                               
   425f8:	b881           	cmpl %d1,%d4                                
   425fa:	6704           	beqs 42600 <rtems_filesystem_dirname+0x5c>  
   425fc:	4a02           	tstb %d2                                    
   425fe:	66e2           	bnes 425e2 <rtems_filesystem_dirname+0x3e>  
      break;                                                          
  }                                                                   
                                                                      
  return len;                                                         
}                                                                     
   42600:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                
   42606:	4e5e           	unlk %fp                                    
   42608:	4e75           	rts                                         
  const char  *pathname                                               
)                                                                     
{                                                                     
  int len = strlen( pathname );                                       
                                                                      
  while ( len ) {                                                     
   4260a:	2001           	movel %d1,%d0                               <== NOT EXECUTED
    if ( rtems_filesystem_is_separator( pathname[len] ) )             
      break;                                                          
  }                                                                   
                                                                      
  return len;                                                         
}                                                                     
   4260c:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                <== NOT EXECUTED
   42612:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00042720 <rtems_filesystem_evaluate_path>:                            
  int                                pathnamelen,                     
  int                                flags,                           
  rtems_filesystem_location_info_t  *pathloc,                         
  int                                follow_link                      
)                                                                     
{                                                                     
   42720:	4e56 ffe8      	linkw %fp,#-24                              
   42724:	202e 0014      	movel %fp@(20),%d0                          
   42728:	48d7 047c      	moveml %d2-%d6/%a2,%sp@                     
   4272c:	246e 0008      	moveal %fp@(8),%a2                          
   42730:	2a2e 000c      	movel %fp@(12),%d5                          
   42734:	262e 0010      	movel %fp@(16),%d3                          
   42738:	282e 0018      	movel %fp@(24),%d4                          
                                                                      
  /*                                                                  
   * Verify Input parameters.                                         
   */                                                                 
                                                                      
  if ( !pathname )                                                    
   4273c:	4a8a           	tstl %a2                                    
   4273e:	6700 00bc      	beqw 427fc <rtems_filesystem_evaluate_path+0xdc>
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  if ( !pathloc )                                                     
   42742:	4a80           	tstl %d0                                    
   42744:	6700 009e      	beqw 427e4 <rtems_filesystem_evaluate_path+0xc4>
                                                                      
  /*                                                                  
   * Evaluate the path using the optable evalpath.                    
   */                                                                 
                                                                      
  rtems_filesystem_get_start_loc( pathname, &i, pathloc );            
   42748:	7c2f           	moveq #47,%d6                               
   4274a:	1412           	moveb %a2@,%d2                              
   4274c:	1202           	moveb %d2,%d1                               
   4274e:	49c1           	extbl %d1                                   
   42750:	bc81           	cmpl %d1,%d6                                
   42752:	670c           	beqs 42760 <rtems_filesystem_evaluate_path+0x40>
   42754:	1c3c 005c      	moveb #92,%d6                               
   42758:	bc81           	cmpl %d1,%d6                                
   4275a:	6704           	beqs 42760 <rtems_filesystem_evaluate_path+0x40>
   4275c:	4a02           	tstb %d2                                    
   4275e:	6646           	bnes 427a6 <rtems_filesystem_evaluate_path+0x86>
   42760:	2279 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a1   
   42766:	2040           	moveal %d0,%a0                              
   42768:	7401           	moveq #1,%d2                                
   4276a:	7201           	moveq #1,%d1                                
                                                                      
  /*                                                                  
   * We evaluation the path relative to the start location we get got.
   */                                                                 
  return rtems_filesystem_evaluate_relative_path( &pathname[i],       
   4276c:	9a82           	subl %d2,%d5                                
   4276e:	d5c1           	addal %d1,%a2                               
                                                                      
  /*                                                                  
   * Evaluate the path using the optable evalpath.                    
   */                                                                 
                                                                      
  rtems_filesystem_get_start_loc( pathname, &i, pathloc );            
   42770:	20e9 0018      	movel %a1@(24),%a0@+                        
   42774:	20e9 001c      	movel %a1@(28),%a0@+                        
   42778:	20e9 0020      	movel %a1@(32),%a0@+                        
   4277c:	20e9 0024      	movel %a1@(36),%a0@+                        
   42780:	20a9 0028      	movel %a1@(40),%a0@                         
                                                                      
  /*                                                                  
   * We evaluation the path relative to the start location we get got.
   */                                                                 
  return rtems_filesystem_evaluate_relative_path( &pathname[i],       
   42784:	2d45 000c      	movel %d5,%fp@(12)                          
   42788:	2d4a 0008      	movel %a2,%fp@(8)                           
   4278c:	2d44 0018      	movel %d4,%fp@(24)                          
   42790:	2d43 0010      	movel %d3,%fp@(16)                          
                                                  pathnamelen - i,    
                                                  flags,              
                                                  pathloc,            
                                                  follow_link );      
}                                                                     
   42794:	4cee 047c ffe8 	moveml %fp@(-24),%d2-%d6/%a2                
  rtems_filesystem_get_start_loc( pathname, &i, pathloc );            
                                                                      
  /*                                                                  
   * We evaluation the path relative to the start location we get got.
   */                                                                 
  return rtems_filesystem_evaluate_relative_path( &pathname[i],       
   4279a:	2d40 0014      	movel %d0,%fp@(20)                          
                                                  pathnamelen - i,    
                                                  flags,              
                                                  pathloc,            
                                                  follow_link );      
}                                                                     
   4279e:	4e5e           	unlk %fp                                    
  rtems_filesystem_get_start_loc( pathname, &i, pathloc );            
                                                                      
  /*                                                                  
   * We evaluation the path relative to the start location we get got.
   */                                                                 
  return rtems_filesystem_evaluate_relative_path( &pathname[i],       
   427a0:	4ef9 0004 2616 	jmp 42616 <rtems_filesystem_evaluate_relative_path>
                                                                      
  /*                                                                  
   * Evaluate the path using the optable evalpath.                    
   */                                                                 
                                                                      
  rtems_filesystem_get_start_loc( pathname, &i, pathloc );            
   427a6:	2279 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a1   
   427ac:	2040           	moveal %d0,%a0                              
   427ae:	5889           	addql #4,%a1                                
   427b0:	4282           	clrl %d2                                    
   427b2:	4281           	clrl %d1                                    
                                                                      
  /*                                                                  
   * We evaluation the path relative to the start location we get got.
   */                                                                 
  return rtems_filesystem_evaluate_relative_path( &pathname[i],       
   427b4:	9a82           	subl %d2,%d5                                
   427b6:	d5c1           	addal %d1,%a2                               
                                                                      
  /*                                                                  
   * Evaluate the path using the optable evalpath.                    
   */                                                                 
                                                                      
  rtems_filesystem_get_start_loc( pathname, &i, pathloc );            
   427b8:	20d9           	movel %a1@+,%a0@+                           
   427ba:	20d9           	movel %a1@+,%a0@+                           
   427bc:	20d9           	movel %a1@+,%a0@+                           
   427be:	20d9           	movel %a1@+,%a0@+                           
   427c0:	2091           	movel %a1@,%a0@                             
                                                                      
  /*                                                                  
   * We evaluation the path relative to the start location we get got.
   */                                                                 
  return rtems_filesystem_evaluate_relative_path( &pathname[i],       
   427c2:	2d45 000c      	movel %d5,%fp@(12)                          
   427c6:	2d4a 0008      	movel %a2,%fp@(8)                           
   427ca:	2d44 0018      	movel %d4,%fp@(24)                          
   427ce:	2d43 0010      	movel %d3,%fp@(16)                          
                                                  pathnamelen - i,    
                                                  flags,              
                                                  pathloc,            
                                                  follow_link );      
}                                                                     
   427d2:	4cee 047c ffe8 	moveml %fp@(-24),%d2-%d6/%a2                
  rtems_filesystem_get_start_loc( pathname, &i, pathloc );            
                                                                      
  /*                                                                  
   * We evaluation the path relative to the start location we get got.
   */                                                                 
  return rtems_filesystem_evaluate_relative_path( &pathname[i],       
   427d8:	2d40 0014      	movel %d0,%fp@(20)                          
                                                  pathnamelen - i,    
                                                  flags,              
                                                  pathloc,            
                                                  follow_link );      
}                                                                     
   427dc:	4e5e           	unlk %fp                                    
  rtems_filesystem_get_start_loc( pathname, &i, pathloc );            
                                                                      
  /*                                                                  
   * We evaluation the path relative to the start location we get got.
   */                                                                 
  return rtems_filesystem_evaluate_relative_path( &pathname[i],       
   427de:	4ef9 0004 2616 	jmp 42616 <rtems_filesystem_evaluate_relative_path>
                                                                      
  if ( !pathname )                                                    
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  if ( !pathloc )                                                     
    rtems_set_errno_and_return_minus_one( EIO );       /* should never happen */
   427e4:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   427ea:	7405           	moveq #5,%d2                                <== NOT EXECUTED
   427ec:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  return rtems_filesystem_evaluate_relative_path( &pathname[i],       
                                                  pathnamelen - i,    
                                                  flags,              
                                                  pathloc,            
                                                  follow_link );      
}                                                                     
   427ee:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  if ( !pathname )                                                    
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  if ( !pathloc )                                                     
    rtems_set_errno_and_return_minus_one( EIO );       /* should never happen */
   427f0:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
  return rtems_filesystem_evaluate_relative_path( &pathname[i],       
                                                  pathnamelen - i,    
                                                  flags,              
                                                  pathloc,            
                                                  follow_link );      
}                                                                     
   427f2:	4cee 047c ffe8 	moveml %fp@(-24),%d2-%d6/%a2                <== NOT EXECUTED
   427f8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   427fa:	4e75           	rts                                         <== NOT EXECUTED
  /*                                                                  
   * Verify Input parameters.                                         
   */                                                                 
                                                                      
  if ( !pathname )                                                    
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   427fc:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   42802:	760e           	moveq #14,%d3                               <== NOT EXECUTED
   42804:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  return rtems_filesystem_evaluate_relative_path( &pathname[i],       
                                                  pathnamelen - i,    
                                                  flags,              
                                                  pathloc,            
                                                  follow_link );      
}                                                                     
   42806:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
  /*                                                                  
   * Verify Input parameters.                                         
   */                                                                 
                                                                      
  if ( !pathname )                                                    
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   42808:	2083           	movel %d3,%a0@                              <== NOT EXECUTED
  return rtems_filesystem_evaluate_relative_path( &pathname[i],       
                                                  pathnamelen - i,    
                                                  flags,              
                                                  pathloc,            
                                                  follow_link );      
}                                                                     
   4280a:	4cee 047c ffe8 	moveml %fp@(-24),%d2-%d6/%a2                <== NOT EXECUTED
   42810:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00042616 <rtems_filesystem_evaluate_relative_path>:                   
  int                                pathnamelen,                     
  int                                flags,                           
  rtems_filesystem_location_info_t  *pathloc,                         
  int                                follow_link                      
)                                                                     
{                                                                     
   42616:	4e56 fff0      	linkw %fp,#-16                              
   4261a:	222e 0008      	movel %fp@(8),%d1                           
   4261e:	48d7 041c      	moveml %d2-%d4/%a2,%sp@                     
   42622:	202e 000c      	movel %fp@(12),%d0                          
   42626:	242e 0010      	movel %fp@(16),%d2                          
   4262a:	246e 0014      	moveal %fp@(20),%a2                         
   4262e:	282e 0018      	movel %fp@(24),%d4                          
                                                                      
  /*                                                                  
   * Verify Input parameters.                                         
   */                                                                 
                                                                      
  if ( !pathname )                                                    
   42632:	4a81           	tstl %d1                                    
   42634:	6700 00d0      	beqw 42706 <rtems_filesystem_evaluate_relative_path+0xf0>
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  if ( !pathloc )                                                     
   42638:	4a8a           	tstl %a2                                    
   4263a:	6700 00b0      	beqw 426ec <rtems_filesystem_evaluate_relative_path+0xd6>
    rtems_set_errno_and_return_minus_one( EIO );       /* should never happen */
                                                                      
  if ( !pathloc->ops->evalpath_h )                                    
   4263e:	206a 000c      	moveal %a2@(12),%a0                         
   42642:	2050           	moveal %a0@,%a0                             
   42644:	4a88           	tstl %a0                                    
   42646:	6768           	beqs 426b0 <rtems_filesystem_evaluate_relative_path+0x9a>
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  result = (*pathloc->ops->evalpath_h)( pathname, pathnamelen, flags, pathloc );
   42648:	2f0a           	movel %a2,%sp@-                             
   4264a:	2f02           	movel %d2,%sp@-                             
   4264c:	2f00           	movel %d0,%sp@-                             
   4264e:	2f01           	movel %d1,%sp@-                             
   42650:	4e90           	jsr %a0@                                    
  /*                                                                  
   * Get the Node type and determine if you need to follow the link or
   * not.                                                             
   */                                                                 
                                                                      
  if ( (result == 0) && follow_link ) {                               
   42652:	4fef 0010      	lea %sp@(16),%sp                            
    rtems_set_errno_and_return_minus_one( EIO );       /* should never happen */
                                                                      
  if ( !pathloc->ops->evalpath_h )                                    
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  result = (*pathloc->ops->evalpath_h)( pathname, pathnamelen, flags, pathloc );
   42656:	2600           	movel %d0,%d3                               
  /*                                                                  
   * Get the Node type and determine if you need to follow the link or
   * not.                                                             
   */                                                                 
                                                                      
  if ( (result == 0) && follow_link ) {                               
   42658:	661e           	bnes 42678 <rtems_filesystem_evaluate_relative_path+0x62>
   4265a:	4a84           	tstl %d4                                    
   4265c:	671a           	beqs 42678 <rtems_filesystem_evaluate_relative_path+0x62>
                                                                      
    if ( !pathloc->ops->node_type_h ){                                
   4265e:	226a 000c      	moveal %a2@(12),%a1                         
   42662:	2069 0010      	moveal %a1@(16),%a0                         
   42666:	4a88           	tstl %a0                                    
   42668:	6762           	beqs 426cc <rtems_filesystem_evaluate_relative_path+0xb6>
      rtems_filesystem_freenode( pathloc );                           
      rtems_set_errno_and_return_minus_one( ENOTSUP );                
    }                                                                 
                                                                      
    type = (*pathloc->ops->node_type_h)( pathloc );                   
   4266a:	2f0a           	movel %a2,%sp@-                             
   4266c:	4e90           	jsr %a0@                                    
                                                                      
    if ( ( type == RTEMS_FILESYSTEM_HARD_LINK ) ||                    
   4266e:	588f           	addql #4,%sp                                
   42670:	7201           	moveq #1,%d1                                
   42672:	5780           	subql #3,%d0                                
   42674:	b280           	cmpl %d0,%d1                                
   42676:	640c           	bccs 42684 <rtems_filesystem_evaluate_relative_path+0x6e>
        result =  (*pathloc->ops->eval_link_h)( pathloc, flags );     
    }                                                                 
  }                                                                   
                                                                      
  return result;                                                      
}                                                                     
   42678:	2003           	movel %d3,%d0                               
   4267a:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                
   42680:	4e5e           	unlk %fp                                    
   42682:	4e75           	rts                                         
    type = (*pathloc->ops->node_type_h)( pathloc );                   
                                                                      
    if ( ( type == RTEMS_FILESYSTEM_HARD_LINK ) ||                    
         ( type == RTEMS_FILESYSTEM_SYM_LINK ) ) {                    
                                                                      
        if ( !pathloc->ops->eval_link_h ){                            
   42684:	206a 000c      	moveal %a2@(12),%a0                         
   42688:	2268 0034      	moveal %a0@(52),%a1                         
   4268c:	4a89           	tstl %a1                                    
   4268e:	6712           	beqs 426a2 <rtems_filesystem_evaluate_relative_path+0x8c>
         *    pathloc will be passed up (and eventually released).    
         *    Hence, the (valid) originial node that we submit to     
         *    eval_link_h() should be released by the handler.        
         */                                                           
                                                                      
        result =  (*pathloc->ops->eval_link_h)( pathloc, flags );     
   42690:	2d42 000c      	movel %d2,%fp@(12)                          
   42694:	2d4a 0008      	movel %a2,%fp@(8)                           
    }                                                                 
  }                                                                   
                                                                      
  return result;                                                      
}                                                                     
   42698:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                
   4269e:	4e5e           	unlk %fp                                    
         *    pathloc will be passed up (and eventually released).    
         *    Hence, the (valid) originial node that we submit to     
         *    eval_link_h() should be released by the handler.        
         */                                                           
                                                                      
        result =  (*pathloc->ops->eval_link_h)( pathloc, flags );     
   426a0:	4ed1           	jmp %a1@                                    
                                                                      
    if ( ( type == RTEMS_FILESYSTEM_HARD_LINK ) ||                    
         ( type == RTEMS_FILESYSTEM_SYM_LINK ) ) {                    
                                                                      
        if ( !pathloc->ops->eval_link_h ){                            
          rtems_filesystem_freenode( pathloc );                       
   426a2:	2028 001c      	movel %a0@(28),%d0                          <== NOT EXECUTED
   426a6:	6708           	beqs 426b0 <rtems_filesystem_evaluate_relative_path+0x9a><== NOT EXECUTED
   426a8:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   426aa:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   426ac:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   426ae:	588f           	addql #4,%sp                                <== NOT EXECUTED
          rtems_set_errno_and_return_minus_one( ENOTSUP );            
   426b0:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   426b6:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
   426b8:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   426ba:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
        result =  (*pathloc->ops->eval_link_h)( pathloc, flags );     
    }                                                                 
  }                                                                   
                                                                      
  return result;                                                      
}                                                                     
   426c0:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   426c2:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                <== NOT EXECUTED
   426c8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   426ca:	4e75           	rts                                         <== NOT EXECUTED
   */                                                                 
                                                                      
  if ( (result == 0) && follow_link ) {                               
                                                                      
    if ( !pathloc->ops->node_type_h ){                                
      rtems_filesystem_freenode( pathloc );                           
   426cc:	2069 001c      	moveal %a1@(28),%a0                         <== NOT EXECUTED
   426d0:	4a88           	tstl %a0                                    <== NOT EXECUTED
   426d2:	67dc           	beqs 426b0 <rtems_filesystem_evaluate_relative_path+0x9a><== NOT EXECUTED
   426d4:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
    if ( ( type == RTEMS_FILESYSTEM_HARD_LINK ) ||                    
         ( type == RTEMS_FILESYSTEM_SYM_LINK ) ) {                    
                                                                      
        if ( !pathloc->ops->eval_link_h ){                            
          rtems_filesystem_freenode( pathloc );                       
          rtems_set_errno_and_return_minus_one( ENOTSUP );            
   426d6:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
   */                                                                 
                                                                      
  if ( (result == 0) && follow_link ) {                               
                                                                      
    if ( !pathloc->ops->node_type_h ){                                
      rtems_filesystem_freenode( pathloc );                           
   426d8:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   426da:	588f           	addql #4,%sp                                <== NOT EXECUTED
    if ( ( type == RTEMS_FILESYSTEM_HARD_LINK ) ||                    
         ( type == RTEMS_FILESYSTEM_SYM_LINK ) ) {                    
                                                                      
        if ( !pathloc->ops->eval_link_h ){                            
          rtems_filesystem_freenode( pathloc );                       
          rtems_set_errno_and_return_minus_one( ENOTSUP );            
   426dc:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   426e2:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   426e4:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
   426ea:	60d4           	bras 426c0 <rtems_filesystem_evaluate_relative_path+0xaa><== NOT EXECUTED
                                                                      
  if ( !pathname )                                                    
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  if ( !pathloc )                                                     
    rtems_set_errno_and_return_minus_one( EIO );       /* should never happen */
   426ec:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   426f2:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
   426f4:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   426f6:	7005           	moveq #5,%d0                                <== NOT EXECUTED
   426f8:	2080           	movel %d0,%a0@                              <== NOT EXECUTED
        result =  (*pathloc->ops->eval_link_h)( pathloc, flags );     
    }                                                                 
  }                                                                   
                                                                      
  return result;                                                      
}                                                                     
   426fa:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   426fc:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                <== NOT EXECUTED
   42702:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   42704:	4e75           	rts                                         <== NOT EXECUTED
  /*                                                                  
   * Verify Input parameters.                                         
   */                                                                 
                                                                      
  if ( !pathname )                                                    
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   42706:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   4270c:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
   4270e:	720e           	moveq #14,%d1                               <== NOT EXECUTED
   42710:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
        result =  (*pathloc->ops->eval_link_h)( pathloc, flags );     
    }                                                                 
  }                                                                   
                                                                      
  return result;                                                      
}                                                                     
   42712:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   42714:	4cee 041c fff0 	moveml %fp@(-16),%d2-%d4/%a2                <== NOT EXECUTED
  /*                                                                  
   * Verify Input parameters.                                         
   */                                                                 
                                                                      
  if ( !pathname )                                                    
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   4271a:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
        result =  (*pathloc->ops->eval_link_h)( pathloc, flags );     
    }                                                                 
  }                                                                   
                                                                      
  return result;                                                      
}                                                                     
   4271c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000421e8 <rtems_filesystem_initialize>:                               
                                                                      
  /*                                                                  
   *  Set the default umask to "022".                                 
   */                                                                 
                                                                      
  rtems_filesystem_umask = 022;                                       
   421e8:	7012           	moveq #18,%d0                               
 *  configuration is a single instantiation of the IMFS or miniIMFS with
 *  a single "/dev" directory in it.                                  
 */                                                                   
                                                                      
void rtems_filesystem_initialize( void )                              
{                                                                     
   421ea:	4e56 ffdc      	linkw %fp,#-36                              
                                                                      
  /*                                                                  
   *  Set the default umask to "022".                                 
   */                                                                 
                                                                      
  rtems_filesystem_umask = 022;                                       
   421ee:	2079 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a0   
   421f4:	2140 002c      	movel %d0,%a0@(44)                          
 *  configuration is a single instantiation of the IMFS or miniIMFS with
 *  a single "/dev" directory in it.                                  
 */                                                                   
                                                                      
void rtems_filesystem_initialize( void )                              
{                                                                     
   421f8:	48d7 1c00      	moveml %a2-%a4,%sp@                         
   */                                                                 
                                                                      
  rtems_filesystem_umask = 022;                                       
                                                                      
                                                                      
  init_fs_mount_table();                                              
   421fc:	4eb9 0004 2b04 	jsr 42b04 <init_fs_mount_table>             
                                                                      
  /*                                                                  
   *  mount the first filesystem.                                     
   */                                                                 
                                                                      
  if ( rtems_filesystem_mount_table_size == 0 )                       
   42202:	4ab9 0005 be88 	tstl 5be88 <rtems_filesystem_mount_table_size>
   42208:	6700 00e8      	beqw 422f2 <rtems_filesystem_initialize+0x10a>
    rtems_fatal_error_occurred( 0xABCD0001 );                         
                                                                      
  mt = &rtems_filesystem_mount_table[0];                              
   4220c:	2079 0005 d71c 	moveal 5d71c <rtems_filesystem_mount_table>,%a0
                                                                      
  status = mount(                                                     
   42212:	2f28 000c      	movel %a0@(12),%sp@-                        
   42216:	2f28 0008      	movel %a0@(8),%sp@-                         
   4221a:	2f28 0004      	movel %a0@(4),%sp@-                         
   4221e:	2f10           	movel %a0@,%sp@-                            
   42220:	486e fffc      	pea %fp@(-4)                                
   42224:	4eb9 0004 2b26 	jsr 42b26 <mount>                           
     &entry, mt->fs_ops, mt->fsoptions, mt->device, mt->mount_point );
                                                                      
  if ( status == -1 )                                                 
   4222a:	4fef 0014      	lea %sp@(20),%sp                            
   4222e:	72ff           	moveq #-1,%d1                               
   42230:	b280           	cmpl %d0,%d1                                
   42232:	6700 00d6      	beqw 4230a <rtems_filesystem_initialize+0x122>
    rtems_fatal_error_occurred( 0xABCD0002 );                         
                                                                      
  rtems_filesystem_link_counts = 0;                                   
   42236:	2079 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a0   
   *                                                                  
   *       Till Straumann, 10/25/2002                                 
   */                                                                 
  rtems_filesystem_root        = entry->mt_fs_root;                   
  /* Clone the root pathloc */                                        
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
   4223c:	45ee ffe8      	lea %fp@(-24),%a2                           
   42240:	49f9 0004 2720 	lea 42720 <rtems_filesystem_evaluate_path>,%a4
  rtems_filesystem_root        = loc;                                 
   42246:	47ee fff8      	lea %fp@(-8),%a3                            
   *       set_private_env() - but then: that's                       
   *       gonna hit performance.                                     
   *                                                                  
   *       Till Straumann, 10/25/2002                                 
   */                                                                 
  rtems_filesystem_root        = entry->mt_fs_root;                   
   4224a:	226e fffc      	moveal %fp@(-4),%a1                         
   4224e:	2169 001c 0018 	movel %a1@(28),%a0@(24)                     
   42254:	2169 0020 001c 	movel %a1@(32),%a0@(28)                     
   4225a:	2169 0024 0020 	movel %a1@(36),%a0@(32)                     
   42260:	2169 0028 0024 	movel %a1@(40),%a0@(36)                     
   42266:	2169 002c 0028 	movel %a1@(44),%a0@(40)                     
     &entry, mt->fs_ops, mt->fsoptions, mt->device, mt->mount_point );
                                                                      
  if ( status == -1 )                                                 
    rtems_fatal_error_occurred( 0xABCD0002 );                         
                                                                      
  rtems_filesystem_link_counts = 0;                                   
   4226c:	4240           	clrw %d0                                    
   4226e:	3140 0030      	movew %d0,%a0@(48)                          
   *                                                                  
   *       Till Straumann, 10/25/2002                                 
   */                                                                 
  rtems_filesystem_root        = entry->mt_fs_root;                   
  /* Clone the root pathloc */                                        
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
   42272:	42a7           	clrl %sp@-                                  
   42274:	2f0a           	movel %a2,%sp@-                             
   42276:	42a7           	clrl %sp@-                                  
   42278:	4878 0001      	pea 1 <ADD>                                 
   4227c:	4879 0005 c1f2 	pea 5c1f2 <IntUartPollCallbacks.6602+0x20>  
   42282:	4e94           	jsr %a4@                                    
  rtems_filesystem_root        = loc;                                 
   42284:	2079 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a0   
   4228a:	2152 0018      	movel %a2@,%a0@(24)                         
   4228e:	216e ffec 001c 	movel %fp@(-20),%a0@(28)                    
   42294:	216e fff0 0020 	movel %fp@(-16),%a0@(32)                    
   4229a:	216e fff4 0024 	movel %fp@(-12),%a0@(36)                    
   422a0:	2153 0028      	movel %a3@,%a0@(40)                         
  /* One more clone for the current node */                           
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
   422a4:	42a7           	clrl %sp@-                                  
   422a6:	2f0a           	movel %a2,%sp@-                             
   422a8:	42a7           	clrl %sp@-                                  
   422aa:	4878 0001      	pea 1 <ADD>                                 
   422ae:	4879 0005 c1f2 	pea 5c1f2 <IntUartPollCallbacks.6602+0x20>  
   422b4:	4e94           	jsr %a4@                                    
  rtems_filesystem_current     = loc;                                 
   422b6:	2079 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a0   
   422bc:	5888           	addql #4,%a0                                
   *                                                                  
   *  NOTE: UNIX root is 755 and owned by root/root (0/0).  It is actually
   *        created that way by the IMFS.                             
   */                                                                 
                                                                      
  status = mkdir( "/dev", 0777);                                      
   422be:	4fef 0028      	lea %sp@(40),%sp                            
  /* Clone the root pathloc */                                        
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
  rtems_filesystem_root        = loc;                                 
  /* One more clone for the current node */                           
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
  rtems_filesystem_current     = loc;                                 
   422c2:	20d2           	movel %a2@,%a0@+                            
   422c4:	20ee ffec      	movel %fp@(-20),%a0@+                       
   422c8:	20ee fff0      	movel %fp@(-16),%a0@+                       
   422cc:	20ee fff4      	movel %fp@(-12),%a0@+                       
   422d0:	2093           	movel %a3@,%a0@                             
   *                                                                  
   *  NOTE: UNIX root is 755 and owned by root/root (0/0).  It is actually
   *        created that way by the IMFS.                             
   */                                                                 
                                                                      
  status = mkdir( "/dev", 0777);                                      
   422d2:	4878 01ff      	pea 1ff <DBL_MANT_DIG+0x1ca>                
   422d6:	4879 0005 c1f4 	pea 5c1f4 <IntUartPollCallbacks.6602+0x22>  
   422dc:	4eb9 0004 2988 	jsr 42988 <mkdir>                           
  if ( status != 0 )                                                  
   422e2:	508f           	addql #8,%sp                                
   422e4:	4a80           	tstl %d0                                    
   422e6:	6616           	bnes 422fe <rtems_filesystem_initialize+0x116>
   *  it will be mounted onto is created.  Moreover, if it is going to
   *  use a device, then it is REALLY unfair to attempt this          
   *  before device drivers are initialized.  So we return via a base 
   *  filesystem image and nothing auto-mounted at this point.        
   */                                                                 
}                                                                     
   422e8:	4cee 1c00 ffdc 	moveml %fp@(-36),%a2-%a4                    
   422ee:	4e5e           	unlk %fp                                    
   422f0:	4e75           	rts                                         
  /*                                                                  
   *  mount the first filesystem.                                     
   */                                                                 
                                                                      
  if ( rtems_filesystem_mount_table_size == 0 )                       
    rtems_fatal_error_occurred( 0xABCD0001 );                         
   422f2:	2f3c abcd 0001 	movel #-1412628479,%sp@-                    <== NOT EXECUTED
   422f8:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
   *        created that way by the IMFS.                             
   */                                                                 
                                                                      
  status = mkdir( "/dev", 0777);                                      
  if ( status != 0 )                                                  
    rtems_fatal_error_occurred( 0xABCD0003 );                         
   422fe:	2f3c abcd 0003 	movel #-1412628477,%sp@-                    <== NOT EXECUTED
   42304:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
                                                                      
  status = mount(                                                     
     &entry, mt->fs_ops, mt->fsoptions, mt->device, mt->mount_point );
                                                                      
  if ( status == -1 )                                                 
    rtems_fatal_error_occurred( 0xABCD0002 );                         
   4230a:	2f3c abcd 0002 	movel #-1412628478,%sp@-                    <== NOT EXECUTED
   42310:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
	...                                                                  
                                                                      
00068c84 <rtems_filesystem_nodes_equal>:                              
);                                                                    
                                                                      
bool rtems_filesystem_nodes_equal(                                    
  const rtems_filesystem_location_info_t   *loc1,                     
  const rtems_filesystem_location_info_t   *loc2                      
){                                                                    
   68c84:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   68c88:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
   68c8c:	226e 0008      	moveal %fp@(8),%a1                          <== NOT EXECUTED
  return ( loc1->node_access == loc2->node_access );                  
}                                                                     
   68c90:	4e5e           	unlk %fp                                    <== NOT EXECUTED
);                                                                    
                                                                      
bool rtems_filesystem_nodes_equal(                                    
  const rtems_filesystem_location_info_t   *loc1,                     
  const rtems_filesystem_location_info_t   *loc2                      
){                                                                    
   68c92:	2050           	moveal %a0@,%a0                             <== NOT EXECUTED
   68c94:	b1d1           	cmpal %a1@,%a0                              <== NOT EXECUTED
   68c96:	57c0           	seq %d0                                     <== NOT EXECUTED
  return ( loc1->node_access == loc2->node_access );                  
}                                                                     
   68c98:	4480           	negl %d0                                    <== NOT EXECUTED
                                                                      
0004255c <rtems_filesystem_prefix_separators>:                        
                                                                      
int rtems_filesystem_prefix_separators(                               
  const char  *pathname,                                              
  int          pathnamelen                                            
)                                                                     
{                                                                     
   4255c:	4e56 0000      	linkw %fp,#0                                
   42560:	206e 0008      	moveal %fp@(8),%a0                          
   42564:	2f02           	movel %d2,%sp@-                             
   42566:	226e 000c      	moveal %fp@(12),%a1                         
  /*                                                                  
   * Eat any separators at start of the path.                         
   */                                                                 
  int stripped = 0;                                                   
  while ( *pathname && pathnamelen && rtems_filesystem_is_separator( *pathname ) )
   4256a:	1210           	moveb %a0@,%d1                              
   4256c:	672e           	beqs 4259c <rtems_filesystem_prefix_separators+0x40>
   4256e:	4a89           	tstl %a1                                    
   42570:	672a           	beqs 4259c <rtems_filesystem_prefix_separators+0x40>
   42572:	4280           	clrl %d0                                    
   42574:	49c1           	extbl %d1                                   
   42576:	742f           	moveq #47,%d2                               
   42578:	b481           	cmpl %d1,%d2                                
   4257a:	670e           	beqs 4258a <rtems_filesystem_prefix_separators+0x2e>
   4257c:	143c 005c      	moveb #92,%d2                               
   42580:	b481           	cmpl %d1,%d2                                
   42582:	6706           	beqs 4258a <rtems_filesystem_prefix_separators+0x2e>
    pathname++;                                                       
    pathnamelen--;                                                    
    stripped++;                                                       
  }                                                                   
  return stripped;                                                    
}                                                                     
   42584:	241f           	movel %sp@+,%d2                             
   42586:	4e5e           	unlk %fp                                    
   42588:	4e75           	rts                                         
  int stripped = 0;                                                   
  while ( *pathname && pathnamelen && rtems_filesystem_is_separator( *pathname ) )
  {                                                                   
    pathname++;                                                       
    pathnamelen--;                                                    
    stripped++;                                                       
   4258a:	5280           	addql #1,%d0                                
{                                                                     
  /*                                                                  
   * Eat any separators at start of the path.                         
   */                                                                 
  int stripped = 0;                                                   
  while ( *pathname && pathnamelen && rtems_filesystem_is_separator( *pathname ) )
   4258c:	1230 0800      	moveb %a0@(00000000,%d0:l),%d1              
   42590:	67f2           	beqs 42584 <rtems_filesystem_prefix_separators+0x28>
   42592:	b089           	cmpl %a1,%d0                                
   42594:	66de           	bnes 42574 <rtems_filesystem_prefix_separators+0x18>
    pathname++;                                                       
    pathnamelen--;                                                    
    stripped++;                                                       
  }                                                                   
  return stripped;                                                    
}                                                                     
   42596:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
   42598:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4259a:	4e75           	rts                                         <== NOT EXECUTED
   4259c:	241f           	movel %sp@+,%d2                             <== NOT EXECUTED
{                                                                     
  /*                                                                  
   * Eat any separators at start of the path.                         
   */                                                                 
  int stripped = 0;                                                   
  while ( *pathname && pathnamelen && rtems_filesystem_is_separator( *pathname ) )
   4259e:	4280           	clrl %d0                                    <== NOT EXECUTED
    pathname++;                                                       
    pathnamelen--;                                                    
    stripped++;                                                       
  }                                                                   
  return stripped;                                                    
}                                                                     
   425a0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004634e <rtems_initialize_data_structures>:                          
#endif                                                                
                                                                      
Objects_Information *_Internal_Objects[ OBJECTS_INTERNAL_CLASSES_LAST + 1 ];
                                                                      
void rtems_initialize_data_structures(void)                           
{                                                                     
   4634e:	4e56 0000      	linkw %fp,#0                                
   46352:	42b9 0005 f100 	clrl 5f100 <_System_state_Current>          
  #endif                                                              
                                                                      
  /*                                                                  
   * Initialize any target architecture specific support as early as possible
   */                                                                 
  _CPU_Initialize();                                                  
   46358:	4eb9 0004 9354 	jsr 49354 <_CPU_Initialize>                 
                                                                      
  /*                                                                  
   *  Do this as early as possible to ensure no debugging output      
   *  is even attempted to be printed.                                
   */                                                                 
  _Debug_Manager_initialization();                                    
   4635e:	4eb9 0004 b8f0 	jsr 4b8f0 <_Debug_Manager_initialization>   
                                                                      
  _API_extensions_Initialization();                                   
   46364:	4eb9 0004 6604 	jsr 46604 <_API_extensions_Initialization>  
 *  This routine initializes the thread dispatching subsystem.        
 */                                                                   
                                                                      
RTEMS_INLINE_ROUTINE void _Thread_Dispatch_initialization( void )     
{                                                                     
  _Thread_Dispatch_disable_level = 1;                                 
   4636a:	7001           	moveq #1,%d0                                
   4636c:	23c0 0005 ef78 	movel %d0,5ef78 <_Thread_Dispatch_disable_level>
                                                                      
  /*                                                                  
   *  Before this is called, we are not allowed to allocate memory    
   *  from the Workspace because it is not initialized.               
   */                                                                 
  _Workspace_Handler_initialization();                                
   46372:	4eb9 0004 9228 	jsr 49228 <_Workspace_Handler_initialization>
                                                                      
  _User_extensions_Handler_initialization();                          
   46378:	4eb9 0004 8cb0 	jsr 48cb0 <_User_extensions_Handler_initialization>
  _ISR_Handler_initialization();                                      
   4637e:	4eb9 0004 7028 	jsr 47028 <_ISR_Handler_initialization>     
  /*                                                                  
   * Initialize the internal support API and allocator Mutex          
   */                                                                 
  _Objects_Information_table[OBJECTS_INTERNAL_API] = _Internal_Objects;
                                                                      
  _API_Mutex_Initialization( 1 );                                     
   46384:	4878 0001      	pea 1 <ADD>                                 
  _ISR_Handler_initialization();                                      
                                                                      
  /*                                                                  
   * Initialize the internal support API and allocator Mutex          
   */                                                                 
  _Objects_Information_table[OBJECTS_INTERNAL_API] = _Internal_Objects;
   46388:	203c 0005 ef8e 	movel #389006,%d0                           
   4638e:	23c0 0005 ef34 	movel %d0,5ef34 <_Objects_Information_table+0x4>
                                                                      
  _API_Mutex_Initialization( 1 );                                     
   46394:	4eb9 0004 6738 	jsr 46738 <_API_Mutex_Initialization>       
  _API_Mutex_Allocate( &_RTEMS_Allocator_Mutex );                     
   4639a:	4879 0005 f02a 	pea 5f02a <_RTEMS_Allocator_Mutex>          
   463a0:	4eb9 0004 66a0 	jsr 466a0 <_API_Mutex_Allocate>             
  #include <rtems/itron/itronapi.h>                                   
#endif                                                                
                                                                      
Objects_Information *_Internal_Objects[ OBJECTS_INTERNAL_CLASSES_LAST + 1 ];
                                                                      
void rtems_initialize_data_structures(void)                           
   463a6:	508f           	addql #8,%sp                                
                                                                      
RTEMS_INLINE_ROUTINE void _Priority_Handler_initialization( void )    
{                                                                     
  int index;                                                          
                                                                      
  _Priority_Major_bit_map = 0;                                        
   463a8:	41f9 0005 f098 	lea 5f098 <_Priority_Bit_map>,%a0           
   463ae:	4240           	clrw %d0                                    
   463b0:	33c0 0005 f028 	movew %d0,5f028 <_Priority_Major_bit_map>   
  for ( index=0 ; index <16 ; index++ )                               
     _Priority_Bit_map[ index ] = 0;                                  
   463b6:	4258           	clrw %a0@+                                  
RTEMS_INLINE_ROUTINE void _Priority_Handler_initialization( void )    
{                                                                     
  int index;                                                          
                                                                      
  _Priority_Major_bit_map = 0;                                        
  for ( index=0 ; index <16 ; index++ )                               
   463b8:	b1fc 0005 f0b8 	cmpal #389304,%a0                           
   463be:	66f6           	bnes 463b6 <rtems_initialize_data_structures+0x68>
                                                                      
  _API_Mutex_Initialization( 1 );                                     
  _API_Mutex_Allocate( &_RTEMS_Allocator_Mutex );                     
                                                                      
  _Priority_Handler_initialization();                                 
  _Watchdog_Handler_initialization();                                 
   463c0:	4eb9 0004 9058 	jsr 49058 <_Watchdog_Handler_initialization>
  _TOD_Handler_initialization();                                      
   463c6:	4eb9 0004 6bbc 	jsr 46bbc <_TOD_Handler_initialization>     
                                                                      
  _Thread_Handler_initialization();                                   
   463cc:	4eb9 0004 80d8 	jsr 480d8 <_Thread_Handler_initialization>  
    _MPCI_Handler_initialization( RTEMS_TIMEOUT );                    
  #endif                                                              
                                                                      
/* MANAGERS */                                                        
                                                                      
  _RTEMS_API_Initialize();                                            
   463d2:	4eb9 0004 65b0 	jsr 465b0 <_RTEMS_API_Initialize>           
                                                                      
  _Extension_Manager_initialization();                                
   463d8:	4eb9 0004 6428 	jsr 46428 <_Extension_Manager_initialization>
                                                                      
  _IO_Manager_initialization();                                       
   463de:	4eb9 0004 64a6 	jsr 464a6 <_IO_Manager_initialization>      
                                                                      
  #ifdef RTEMS_POSIX_API                                              
    _POSIX_API_Initialize();                                          
   463e4:	4eb9 0004 655c 	jsr 4655c <_POSIX_API_Initialize>           
  _Thread_Create_idle();                                              
                                                                      
  /*                                                                  
   *  Scheduling can properly occur now as long as we avoid dispatching.
   */                                                                 
}                                                                     
   463ea:	4e5e           	unlk %fp                                    
   463ec:	7001           	moveq #1,%d0                                
   463ee:	23c0 0005 f100 	movel %d0,5f100 <_System_state_Current>     
   *  _Thread_Executing and _Thread_Heir are not set.                 
   *                                                                  
   *  At this point all API extensions are in place.  After the call to
   *  _Thread_Create_idle() _Thread_Executing and _Thread_Heir will be set.
   */                                                                 
  _Thread_Create_idle();                                              
   463f4:	4ef9 0004 7b78 	jmp 47b78 <_Thread_Create_idle>             
	...                                                                  
                                                                      
000420b4 <rtems_io_lookup_name>:                                      
                                                                      
rtems_status_code rtems_io_lookup_name(                               
  const char           *name,                                         
  rtems_driver_name_t  *device_info                                   
)                                                                     
{                                                                     
   420b4:	4e56 ffd8      	linkw %fp,#-40                              <== NOT EXECUTED
   420b8:	48d7 0c1c      	moveml %d2-%d4/%a2-%a3,%sp@                 <== NOT EXECUTED
   420bc:	262e 0008      	movel %fp@(8),%d3                           <== NOT EXECUTED
  IMFS_jnode_t                      *the_jnode;                       
  rtems_filesystem_location_info_t   loc;                             
  int                                result;                          
  rtems_filesystem_node_types_t      node_type;                       
                                                                      
  result = rtems_filesystem_evaluate_path( name, strlen( name ), 0x00, &loc, true );
   420c0:	45f9 0004 ffc0 	lea 4ffc0 <strlen>,%a2                      <== NOT EXECUTED
   420c6:	240e           	movel %fp,%d2                               <== NOT EXECUTED
   420c8:	0682 ffff ffec 	addil #-20,%d2                              <== NOT EXECUTED
   420ce:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   420d0:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   420d2:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   420d4:	2e81           	movel %d1,%sp@                              <== NOT EXECUTED
   420d6:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   420d8:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   420da:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   420dc:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   420de:	4eb9 0004 2720 	jsr 42720 <rtems_filesystem_evaluate_path>  <== NOT EXECUTED
  the_jnode = loc.node_access;                                        
                                                                      
  if ( !loc.ops->node_type_h ) {                                      
   420e4:	226e fff8      	moveal %fp@(-8),%a1                         <== NOT EXECUTED
  IMFS_jnode_t                      *the_jnode;                       
  rtems_filesystem_location_info_t   loc;                             
  int                                result;                          
  rtems_filesystem_node_types_t      node_type;                       
                                                                      
  result = rtems_filesystem_evaluate_path( name, strlen( name ), 0x00, &loc, true );
   420e8:	2800           	movel %d0,%d4                               <== NOT EXECUTED
  the_jnode = loc.node_access;                                        
                                                                      
  if ( !loc.ops->node_type_h ) {                                      
   420ea:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
  rtems_filesystem_location_info_t   loc;                             
  int                                result;                          
  rtems_filesystem_node_types_t      node_type;                       
                                                                      
  result = rtems_filesystem_evaluate_path( name, strlen( name ), 0x00, &loc, true );
  the_jnode = loc.node_access;                                        
   420ee:	266e ffec      	moveal %fp@(-20),%a3                        <== NOT EXECUTED
                                                                      
  if ( !loc.ops->node_type_h ) {                                      
   420f2:	2069 0010      	moveal %a1@(16),%a0                         <== NOT EXECUTED
   420f6:	4a88           	tstl %a0                                    <== NOT EXECUTED
   420f8:	6730           	beqs 4212a <rtems_io_lookup_name+0x76>      <== NOT EXECUTED
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  node_type = (*loc.ops->node_type_h)( &loc );                        
   420fa:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   420fc:	4e90           	jsr %a0@                                    <== NOT EXECUTED
                                                                      
  if ( (result != 0) || node_type != RTEMS_FILESYSTEM_DEVICE ) {      
   420fe:	588f           	addql #4,%sp                                <== NOT EXECUTED
   42100:	4a84           	tstl %d4                                    <== NOT EXECUTED
   42102:	674e           	beqs 42152 <rtems_io_lookup_name+0x9e>      <== NOT EXECUTED
    rtems_filesystem_freenode( &loc );                                
   42104:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
   42108:	4a88           	tstl %a0                                    <== NOT EXECUTED
   4210a:	6700 0092      	beqw 4219e <rtems_io_lookup_name+0xea>      <== NOT EXECUTED
   4210e:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   42112:	4a88           	tstl %a0                                    <== NOT EXECUTED
   42114:	6700 0088      	beqw 4219e <rtems_io_lookup_name+0xea>      <== NOT EXECUTED
   42118:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4211a:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4211c:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4211e:	700d           	moveq #13,%d0                               <== NOT EXECUTED
  device_info->minor              = the_jnode->info.device.minor;     
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   42120:	4cee 0c1c ffd8 	moveml %fp@(-40),%d2-%d4/%a2-%a3            <== NOT EXECUTED
   42126:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   42128:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  result = rtems_filesystem_evaluate_path( name, strlen( name ), 0x00, &loc, true );
  the_jnode = loc.node_access;                                        
                                                                      
  if ( !loc.ops->node_type_h ) {                                      
    rtems_filesystem_freenode( &loc );                                
   4212a:	2069 001c      	moveal %a1@(28),%a0                         <== NOT EXECUTED
   4212e:	4a88           	tstl %a0                                    <== NOT EXECUTED
   42130:	6706           	beqs 42138 <rtems_io_lookup_name+0x84>      <== NOT EXECUTED
   42132:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   42134:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   42136:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   42138:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   4213e:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   42140:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
  device_info->minor              = the_jnode->info.device.minor;     
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   42142:	4cee 0c1c ffd8 	moveml %fp@(-40),%d2-%d4/%a2-%a3            <== NOT EXECUTED
  result = rtems_filesystem_evaluate_path( name, strlen( name ), 0x00, &loc, true );
  the_jnode = loc.node_access;                                        
                                                                      
  if ( !loc.ops->node_type_h ) {                                      
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   42148:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  device_info->minor              = the_jnode->info.device.minor;     
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4214e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   42150:	4e75           	rts                                         <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  node_type = (*loc.ops->node_type_h)( &loc );                        
                                                                      
  if ( (result != 0) || node_type != RTEMS_FILESYSTEM_DEVICE ) {      
   42152:	7202           	moveq #2,%d1                                <== NOT EXECUTED
   42154:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   42156:	66ac           	bnes 42104 <rtems_io_lookup_name+0x50>      <== NOT EXECUTED
    rtems_filesystem_freenode( &loc );                                
    return RTEMS_UNSATISFIED;                                         
  }                                                                   
                                                                      
  device_info->device_name        = (char *) name;                    
  device_info->device_name_length = strlen( name );                   
   42158:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
  if ( (result != 0) || node_type != RTEMS_FILESYSTEM_DEVICE ) {      
    rtems_filesystem_freenode( &loc );                                
    return RTEMS_UNSATISFIED;                                         
  }                                                                   
                                                                      
  device_info->device_name        = (char *) name;                    
   4215a:	206e 000c      	moveal %fp@(12),%a0                         <== NOT EXECUTED
   4215e:	2083           	movel %d3,%a0@                              <== NOT EXECUTED
  device_info->device_name_length = strlen( name );                   
   42160:	4e92           	jsr %a2@                                    <== NOT EXECUTED
   42162:	226e 000c      	moveal %fp@(12),%a1                         <== NOT EXECUTED
  device_info->major              = the_jnode->info.device.major;     
   42166:	41eb 004c      	lea %a3@(76),%a0                            <== NOT EXECUTED
  device_info->minor              = the_jnode->info.device.minor;     
   4216a:	47eb 0050      	lea %a3@(80),%a3                            <== NOT EXECUTED
    rtems_filesystem_freenode( &loc );                                
    return RTEMS_UNSATISFIED;                                         
  }                                                                   
                                                                      
  device_info->device_name        = (char *) name;                    
  device_info->device_name_length = strlen( name );                   
   4216e:	588f           	addql #4,%sp                                <== NOT EXECUTED
   42170:	2340 0004      	movel %d0,%a1@(4)                           <== NOT EXECUTED
  device_info->major              = the_jnode->info.device.major;     
   42174:	2350 0008      	movel %a0@,%a1@(8)                          <== NOT EXECUTED
  device_info->minor              = the_jnode->info.device.minor;     
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   42178:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
  }                                                                   
                                                                      
  device_info->device_name        = (char *) name;                    
  device_info->device_name_length = strlen( name );                   
  device_info->major              = the_jnode->info.device.major;     
  device_info->minor              = the_jnode->info.device.minor;     
   4217c:	2353 000c      	movel %a3@,%a1@(12)                         <== NOT EXECUTED
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   42180:	4a88           	tstl %a0                                    <== NOT EXECUTED
   42182:	6726           	beqs 421aa <rtems_io_lookup_name+0xf6>      <== NOT EXECUTED
   42184:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   42188:	4a88           	tstl %a0                                    <== NOT EXECUTED
   4218a:	671e           	beqs 421aa <rtems_io_lookup_name+0xf6>      <== NOT EXECUTED
   4218c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4218e:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   42190:	588f           	addql #4,%sp                                <== NOT EXECUTED
   42192:	4280           	clrl %d0                                    <== NOT EXECUTED
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   42194:	4cee 0c1c ffd8 	moveml %fp@(-40),%d2-%d4/%a2-%a3            <== NOT EXECUTED
   4219a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4219c:	4e75           	rts                                         <== NOT EXECUTED
  device_info->device_name        = (char *) name;                    
  device_info->device_name_length = strlen( name );                   
  device_info->major              = the_jnode->info.device.major;     
  device_info->minor              = the_jnode->info.device.minor;     
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   4219e:	700d           	moveq #13,%d0                               <== NOT EXECUTED
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   421a0:	4cee 0c1c ffd8 	moveml %fp@(-40),%d2-%d4/%a2-%a3            <== NOT EXECUTED
   421a6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   421a8:	4e75           	rts                                         <== NOT EXECUTED
  device_info->device_name        = (char *) name;                    
  device_info->device_name_length = strlen( name );                   
  device_info->major              = the_jnode->info.device.major;     
  device_info->minor              = the_jnode->info.device.minor;     
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   421aa:	4280           	clrl %d0                                    <== NOT EXECUTED
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   421ac:	4cee 0c1c ffd8 	moveml %fp@(-40),%d2-%d4/%a2-%a3            <== NOT EXECUTED
   421b2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000482e8 <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                  
)                                                                     
{                                                                     
   482e8:	4e56 fff4      	linkw %fp,#-12                              
   482ec:	226e 000c      	moveal %fp@(12),%a1                         
   482f0:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
   482f4:	242e 0008      	movel %fp@(8),%d2                           
   482f8:	246e 0010      	moveal %fp@(16),%a2                         
  rtems_device_major_number major_limit = _IO_Number_of_drivers;      
   482fc:	2039 0006 590a 	movel 6590a <_IO_Number_of_drivers>,%d0     
                                                                      
  if ( rtems_interrupt_is_in_progress() )                             
   48302:	2239 0006 50ea 	movel 650ea <_ISR_Nest_level>,%d1           
   48308:	6600 009c      	bnew 483a6 <rtems_io_register_driver+0xbe>  
    return RTEMS_CALLED_FROM_ISR;                                     
                                                                      
  if ( registered_major == NULL )                                     
   4830c:	4a8a           	tstl %a2                                    
   4830e:	6700 00ea      	beqw 483fa <rtems_io_register_driver+0x112> 
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  /* Set it to an invalid value */                                    
  *registered_major = major_limit;                                    
   48312:	2480           	movel %d0,%a2@                              
                                                                      
  if ( driver_table == NULL )                                         
   48314:	4a89           	tstl %a1                                    
   48316:	6700 00e2      	beqw 483fa <rtems_io_register_driver+0x112> 
                                                                      
static inline bool rtems_io_is_empty_table(                           
  const rtems_driver_address_table *table                             
)                                                                     
{                                                                     
  return table->initialization_entry == NULL && table->open_entry == NULL;
   4831a:	4a91           	tstl %a1@                                   
   4831c:	6700 00d4      	beqw 483f2 <rtems_io_register_driver+0x10a> 
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( rtems_io_is_empty_table( driver_table ) )                      
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( major >= major_limit )                                         
   48320:	b480           	cmpl %d0,%d2                                
   48322:	6476           	bccs 4839a <rtems_io_register_driver+0xb2>  
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   48324:	2039 0006 5050 	movel 65050 <_Thread_Dispatch_disable_level>,%d0
   4832a:	5280           	addql #1,%d0                                
   4832c:	23c0 0006 5050 	movel %d0,65050 <_Thread_Dispatch_disable_level>
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  _Thread_Disable_dispatch();                                         
                                                                      
  if ( major == 0 ) {                                                 
   48332:	4a82           	tstl %d2                                    
   48334:	667c           	bnes 483b2 <rtems_io_register_driver+0xca>  
                                                                      
static rtems_status_code rtems_io_obtain_major_number(                
  rtems_device_major_number *major                                    
)                                                                     
{                                                                     
  rtems_device_major_number n = _IO_Number_of_drivers;                
   48336:	2039 0006 590a 	movel 6590a <_IO_Number_of_drivers>,%d0     
  rtems_device_major_number m = 0;                                    
                                                                      
  /* major is error checked by caller */                              
                                                                      
  for ( m = 0; m < n; ++m ) {                                         
   4833c:	6700 00fc      	beqw 4843a <rtems_io_register_driver+0x152> 
   48340:	2239 0006 590e 	movel 6590e <_IO_Driver_address_table>,%d1  
   48346:	2041           	moveal %d1,%a0                              
                                                                      
static inline bool rtems_io_is_empty_table(                           
  const rtems_driver_address_table *table                             
)                                                                     
{                                                                     
  return table->initialization_entry == NULL && table->open_entry == NULL;
   48348:	4a90           	tstl %a0@                                   
   4834a:	6700 008e      	beqw 483da <rtems_io_register_driver+0xf2>  
  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 ) {                                         
   4834e:	5282           	addql #1,%d2                                
   48350:	41e8 0018      	lea %a0@(24),%a0                            
   48354:	b480           	cmpl %d0,%d2                                
   48356:	65f0           	bcss 48348 <rtems_io_register_driver+0x60>  
    if ( rtems_io_is_empty_table( table ) )                           
      break;                                                          
  }                                                                   
                                                                      
  /* Assigns invalid value in case of failure */                      
  *major = m;                                                         
   48358:	2482           	movel %d2,%a2@                              
                                                                      
  if ( m != n )                                                       
   4835a:	b480           	cmpl %d0,%d2                                
   4835c:	6700 00de      	beqw 4843c <rtems_io_register_driver+0x154> 
   48360:	2602           	movel %d2,%d3                               
   48362:	2002           	movel %d2,%d0                               
   48364:	2041           	moveal %d1,%a0                              
   48366:	e78b           	lsll #3,%d3                                 
   48368:	eb88           	lsll #5,%d0                                 
   4836a:	9083           	subl %d3,%d0                                
   4836c:	d1c0           	addal %d0,%a0                               
    }                                                                 
                                                                      
    *registered_major = major;                                        
  }                                                                   
                                                                      
  _IO_Driver_address_table [major] = *driver_table;                   
   4836e:	20d9           	movel %a1@+,%a0@+                           
   48370:	20d9           	movel %a1@+,%a0@+                           
   48372:	20d9           	movel %a1@+,%a0@+                           
   48374:	20d9           	movel %a1@+,%a0@+                           
   48376:	20d9           	movel %a1@+,%a0@+                           
   48378:	2091           	movel %a1@,%a0@                             
                                                                      
  _Thread_Enable_dispatch();                                          
   4837a:	4eb9 0004 9e8c 	jsr 49e8c <_Thread_Enable_dispatch>         
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
   48380:	2d42 0008      	movel %d2,%fp@(8)                           
}                                                                     
   48384:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
                                                                      
  _IO_Driver_address_table [major] = *driver_table;                   
                                                                      
  _Thread_Enable_dispatch();                                          
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
   4838a:	42ae 0010      	clrl %fp@(16)                               
   4838e:	42ae 000c      	clrl %fp@(12)                               
}                                                                     
   48392:	4e5e           	unlk %fp                                    
                                                                      
  _IO_Driver_address_table [major] = *driver_table;                   
                                                                      
  _Thread_Enable_dispatch();                                          
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
   48394:	4ef9 0005 1290 	jmp 51290 <rtems_io_initialize>             
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( rtems_io_is_empty_table( driver_table ) )                      
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( major >= major_limit )                                         
   4839a:	700a           	moveq #10,%d0                               
  _IO_Driver_address_table [major] = *driver_table;                   
                                                                      
  _Thread_Enable_dispatch();                                          
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
}                                                                     
   4839c:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   483a2:	4e5e           	unlk %fp                                    
   483a4:	4e75           	rts                                         
  rtems_device_major_number        *registered_major                  
)                                                                     
{                                                                     
  rtems_device_major_number major_limit = _IO_Number_of_drivers;      
                                                                      
  if ( rtems_interrupt_is_in_progress() )                             
   483a6:	7012           	moveq #18,%d0                               
  _IO_Driver_address_table [major] = *driver_table;                   
                                                                      
  _Thread_Enable_dispatch();                                          
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
}                                                                     
   483a8:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   483ae:	4e5e           	unlk %fp                                    
   483b0:	4e75           	rts                                         
      _Thread_Enable_dispatch();                                      
      return sc;                                                      
    }                                                                 
    major = *registered_major;                                        
  } else {                                                            
    rtems_driver_address_table *const table = _IO_Driver_address_table + major;
   483b2:	2202           	movel %d2,%d1                               
   483b4:	2002           	movel %d2,%d0                               
   483b6:	e789           	lsll #3,%d1                                 
   483b8:	eb88           	lsll #5,%d0                                 
   483ba:	2079 0006 590e 	moveal 6590e <_IO_Driver_address_table>,%a0 
   483c0:	9081           	subl %d1,%d0                                
   483c2:	d1c0           	addal %d0,%a0                               
                                                                      
static inline bool rtems_io_is_empty_table(                           
  const rtems_driver_address_table *table                             
)                                                                     
{                                                                     
  return table->initialization_entry == NULL && table->open_entry == NULL;
   483c4:	4a90           	tstl %a0@                                   
   483c6:	673e           	beqs 48406 <rtems_io_register_driver+0x11e> 
    major = *registered_major;                                        
  } else {                                                            
    rtems_driver_address_table *const table = _IO_Driver_address_table + major;
                                                                      
    if ( !rtems_io_is_empty_table( table ) ) {                        
      _Thread_Enable_dispatch();                                      
   483c8:	4eb9 0004 9e8c 	jsr 49e8c <_Thread_Enable_dispatch>         
   483ce:	700c           	moveq #12,%d0                               
  _IO_Driver_address_table [major] = *driver_table;                   
                                                                      
  _Thread_Enable_dispatch();                                          
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
}                                                                     
   483d0:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   483d6:	4e5e           	unlk %fp                                    
   483d8:	4e75           	rts                                         
                                                                      
static inline bool rtems_io_is_empty_table(                           
  const rtems_driver_address_table *table                             
)                                                                     
{                                                                     
  return table->initialization_entry == NULL && table->open_entry == NULL;
   483da:	4aa8 0004      	tstl %a0@(4)                                
   483de:	6700 ff78      	beqw 48358 <rtems_io_register_driver+0x70>  
  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 ) {                                         
   483e2:	5282           	addql #1,%d2                                
   483e4:	41e8 0018      	lea %a0@(24),%a0                            
   483e8:	b480           	cmpl %d0,%d2                                
   483ea:	6500 ff5c      	bcsw 48348 <rtems_io_register_driver+0x60>  
   483ee:	6000 ff68      	braw 48358 <rtems_io_register_driver+0x70>  
                                                                      
static inline bool rtems_io_is_empty_table(                           
  const rtems_driver_address_table *table                             
)                                                                     
{                                                                     
  return table->initialization_entry == NULL && table->open_entry == NULL;
   483f2:	4aa9 0004      	tstl %a1@(4)                                
   483f6:	6600 ff28      	bnew 48320 <rtems_io_register_driver+0x38>  
                                                                      
  _IO_Driver_address_table [major] = *driver_table;                   
                                                                      
  _Thread_Enable_dispatch();                                          
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
   483fa:	7009           	moveq #9,%d0                                
}                                                                     
   483fc:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   48402:	4e5e           	unlk %fp                                    
   48404:	4e75           	rts                                         
                                                                      
static inline bool rtems_io_is_empty_table(                           
  const rtems_driver_address_table *table                             
)                                                                     
{                                                                     
  return table->initialization_entry == NULL && table->open_entry == NULL;
   48406:	4aa8 0004      	tstl %a0@(4)                                
   4840a:	66bc           	bnes 483c8 <rtems_io_register_driver+0xe0>  
    }                                                                 
                                                                      
    *registered_major = major;                                        
  }                                                                   
                                                                      
  _IO_Driver_address_table [major] = *driver_table;                   
   4840c:	20d9           	movel %a1@+,%a0@+                           
   4840e:	20d9           	movel %a1@+,%a0@+                           
   48410:	20d9           	movel %a1@+,%a0@+                           
   48412:	20d9           	movel %a1@+,%a0@+                           
   48414:	20d9           	movel %a1@+,%a0@+                           
   48416:	2091           	movel %a1@,%a0@                             
    if ( !rtems_io_is_empty_table( table ) ) {                        
      _Thread_Enable_dispatch();                                      
      return RTEMS_RESOURCE_IN_USE;                                   
    }                                                                 
                                                                      
    *registered_major = major;                                        
   48418:	2482           	movel %d2,%a2@                              
  }                                                                   
                                                                      
  _IO_Driver_address_table [major] = *driver_table;                   
                                                                      
  _Thread_Enable_dispatch();                                          
   4841a:	4eb9 0004 9e8c 	jsr 49e8c <_Thread_Enable_dispatch>         
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
   48420:	2d42 0008      	movel %d2,%fp@(8)                           
}                                                                     
   48424:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
                                                                      
  _IO_Driver_address_table [major] = *driver_table;                   
                                                                      
  _Thread_Enable_dispatch();                                          
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
   4842a:	42ae 0010      	clrl %fp@(16)                               
   4842e:	42ae 000c      	clrl %fp@(12)                               
}                                                                     
   48432:	4e5e           	unlk %fp                                    
                                                                      
  _IO_Driver_address_table [major] = *driver_table;                   
                                                                      
  _Thread_Enable_dispatch();                                          
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
   48434:	4ef9 0005 1290 	jmp 51290 <rtems_io_initialize>             
    if ( rtems_io_is_empty_table( table ) )                           
      break;                                                          
  }                                                                   
                                                                      
  /* Assigns invalid value in case of failure */                      
  *major = m;                                                         
   4843a:	4292           	clrl %a2@                                   <== NOT EXECUTED
                                                                      
  if ( major == 0 ) {                                                 
    rtems_status_code sc = rtems_io_obtain_major_number( registered_major );
                                                                      
    if ( sc != RTEMS_SUCCESSFUL ) {                                   
      _Thread_Enable_dispatch();                                      
   4843c:	4eb9 0004 9e8c 	jsr 49e8c <_Thread_Enable_dispatch>         
   48442:	7005           	moveq #5,%d0                                
  _IO_Driver_address_table [major] = *driver_table;                   
                                                                      
  _Thread_Enable_dispatch();                                          
                                                                      
  return rtems_io_initialize( major, 0, NULL );                       
}                                                                     
   48444:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   4844a:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      
0004aa6a <rtems_libio_free>:                                          
 */                                                                   
                                                                      
void rtems_libio_free(                                                
  rtems_libio_t *iop                                                  
)                                                                     
{                                                                     
   4aa6a:	4e56 0000      	linkw %fp,#0                                
   4aa6e:	2f0a           	movel %a2,%sp@-                             
rtems_status_code rtems_libio_set_private_env(void);                  
rtems_status_code rtems_libio_share_private_env(rtems_id task_id) ;   
                                                                      
static inline void rtems_libio_lock( void )                           
{                                                                     
  rtems_semaphore_obtain( rtems_libio_semaphore, RTEMS_WAIT, RTEMS_NO_TIMEOUT );
   4aa70:	42a7           	clrl %sp@-                                  
   4aa72:	246e 0008      	moveal %fp@(8),%a2                          
   4aa76:	42a7           	clrl %sp@-                                  
   4aa78:	2f39 0005 ee20 	movel 5ee20 <rtems_libio_semaphore>,%sp@-   
   4aa7e:	4eb9 0004 5d2c 	jsr 45d2c <rtems_semaphore_obtain>          
  rtems_libio_lock();                                                 
                                                                      
    if (iop->sem)                                                     
   4aa84:	202a 002c      	movel %a2@(44),%d0                          
   4aa88:	4fef 000c      	lea %sp@(12),%sp                            
   4aa8c:	6630           	bnes 4aabe <rtems_libio_free+0x54>          
      rtems_semaphore_delete(iop->sem);                               
                                                                      
    iop->flags &= ~LIBIO_FLAGS_OPEN;                                  
    iop->data1 = rtems_libio_iop_freelist;                            
   4aa8e:	41f9 0005 ee1c 	lea 5ee1c <rtems_libio_iop_freelist>,%a0    <== NOT EXECUTED
  rtems_libio_lock();                                                 
                                                                      
    if (iop->sem)                                                     
      rtems_semaphore_delete(iop->sem);                               
                                                                      
    iop->flags &= ~LIBIO_FLAGS_OPEN;                                  
   4aa94:	203c ffff feff 	movel #-257,%d0                             <== NOT EXECUTED
    iop->data1 = rtems_libio_iop_freelist;                            
   4aa9a:	2550 0034      	movel %a0@,%a2@(52)                         <== NOT EXECUTED
}                                                                     
                                                                      
static inline void rtems_libio_unlock( void )                         
{                                                                     
  rtems_semaphore_release( rtems_libio_semaphore );                   
   4aa9e:	41f9 0005 ee20 	lea 5ee20 <rtems_libio_semaphore>,%a0       <== NOT EXECUTED
   4aaa4:	2d50 0008      	movel %a0@,%fp@(8)                          <== NOT EXECUTED
  rtems_libio_lock();                                                 
                                                                      
    if (iop->sem)                                                     
      rtems_semaphore_delete(iop->sem);                               
                                                                      
    iop->flags &= ~LIBIO_FLAGS_OPEN;                                  
   4aaa8:	c1aa 0014      	andl %d0,%a2@(20)                           <== NOT EXECUTED
    iop->data1 = rtems_libio_iop_freelist;                            
    rtems_libio_iop_freelist = iop;                                   
   4aaac:	23ca 0005 ee1c 	movel %a2,5ee1c <rtems_libio_iop_freelist>  <== NOT EXECUTED
                                                                      
  rtems_libio_unlock();                                               
}                                                                     
   4aab2:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   4aab6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4aab8:	4ef9 0004 5e68 	jmp 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
)                                                                     
{                                                                     
  rtems_libio_lock();                                                 
                                                                      
    if (iop->sem)                                                     
      rtems_semaphore_delete(iop->sem);                               
   4aabe:	2f00           	movel %d0,%sp@-                             
   4aac0:	4eb9 0004 5c54 	jsr 45c54 <rtems_semaphore_delete>          
   4aac6:	588f           	addql #4,%sp                                
                                                                      
    iop->flags &= ~LIBIO_FLAGS_OPEN;                                  
    iop->data1 = rtems_libio_iop_freelist;                            
   4aac8:	41f9 0005 ee1c 	lea 5ee1c <rtems_libio_iop_freelist>,%a0    
  rtems_libio_lock();                                                 
                                                                      
    if (iop->sem)                                                     
      rtems_semaphore_delete(iop->sem);                               
                                                                      
    iop->flags &= ~LIBIO_FLAGS_OPEN;                                  
   4aace:	203c ffff feff 	movel #-257,%d0                             
    iop->data1 = rtems_libio_iop_freelist;                            
   4aad4:	2550 0034      	movel %a0@,%a2@(52)                         
   4aad8:	41f9 0005 ee20 	lea 5ee20 <rtems_libio_semaphore>,%a0       
   4aade:	2d50 0008      	movel %a0@,%fp@(8)                          
  rtems_libio_lock();                                                 
                                                                      
    if (iop->sem)                                                     
      rtems_semaphore_delete(iop->sem);                               
                                                                      
    iop->flags &= ~LIBIO_FLAGS_OPEN;                                  
   4aae2:	c1aa 0014      	andl %d0,%a2@(20)                           
    iop->data1 = rtems_libio_iop_freelist;                            
    rtems_libio_iop_freelist = iop;                                   
   4aae6:	23ca 0005 ee1c 	movel %a2,5ee1c <rtems_libio_iop_freelist>  
                                                                      
  rtems_libio_unlock();                                               
}                                                                     
   4aaec:	246e fffc      	moveal %fp@(-4),%a2                         
   4aaf0:	4e5e           	unlk %fp                                    
   4aaf2:	4ef9 0004 5e68 	jmp 45e68 <rtems_semaphore_release>         
                                                                      
00042814 <rtems_libio_init>:                                          
 *                                                                    
 *  Called by BSP startup code to initialize the libio subsystem.     
 */                                                                   
                                                                      
void rtems_libio_init( void )                                         
{                                                                     
   42814:	4e56 0000      	linkw %fp,#0                                
    rtems_status_code rc;                                             
    uint32_t i;                                                       
    rtems_libio_t *iop;                                               
                                                                      
    if (rtems_libio_number_iops > 0)                                  
   42818:	2039 0005 d714 	movel 5d714 <rtems_libio_number_iops>,%d0   
   4281e:	674a           	beqs 4286a <rtems_libio_init+0x56>          
    {                                                                 
        rtems_libio_iops = (rtems_libio_t *) calloc(rtems_libio_number_iops,
   42820:	4878 0040      	pea 40 <DBL_MANT_DIG+0xb>                   
   42824:	2f00           	movel %d0,%sp@-                             
   42826:	4eb9 0004 a608 	jsr 4a608 <calloc>                          
                                                    sizeof(rtems_libio_t));
        if (rtems_libio_iops == NULL)                                 
   4282c:	508f           	addql #8,%sp                                
    uint32_t i;                                                       
    rtems_libio_t *iop;                                               
                                                                      
    if (rtems_libio_number_iops > 0)                                  
    {                                                                 
        rtems_libio_iops = (rtems_libio_t *) calloc(rtems_libio_number_iops,
   4282e:	2040           	moveal %d0,%a0                              
   42830:	23c0 0005 ee18 	movel %d0,5ee18 <rtems_libio_iops>          
                                                    sizeof(rtems_libio_t));
        if (rtems_libio_iops == NULL)                                 
   42836:	6770           	beqs 428a8 <rtems_libio_init+0x94>          
            rtems_fatal_error_occurred(RTEMS_NO_MEMORY);              
                                                                      
        iop = rtems_libio_iop_freelist = rtems_libio_iops;            
        for (i = 0 ; (i + 1) < rtems_libio_number_iops ; i++, iop++)  
   42838:	2279 0005 d714 	moveal 5d714 <rtems_libio_number_iops>,%a1  
   4283e:	7201           	moveq #1,%d1                                
        rtems_libio_iops = (rtems_libio_t *) calloc(rtems_libio_number_iops,
                                                    sizeof(rtems_libio_t));
        if (rtems_libio_iops == NULL)                                 
            rtems_fatal_error_occurred(RTEMS_NO_MEMORY);              
                                                                      
        iop = rtems_libio_iop_freelist = rtems_libio_iops;            
   42840:	23c0 0005 ee1c 	movel %d0,5ee1c <rtems_libio_iop_freelist>  
        for (i = 0 ; (i + 1) < rtems_libio_number_iops ; i++, iop++)  
   42846:	b289           	cmpl %a1,%d1                                
   42848:	641c           	bccs 42866 <rtems_libio_init+0x52>          
   4284a:	2040           	moveal %d0,%a0                              
   4284c:	41e8 0040      	lea %a0@(64),%a0                            
          iop->data1 = iop + 1;                                       
   42850:	2148 fff4      	movel %a0,%a0@(-12)                         
   42854:	41e8 0040      	lea %a0@(64),%a0                            
   42858:	5281           	addql #1,%d1                                
                                                    sizeof(rtems_libio_t));
        if (rtems_libio_iops == NULL)                                 
            rtems_fatal_error_occurred(RTEMS_NO_MEMORY);              
                                                                      
        iop = rtems_libio_iop_freelist = rtems_libio_iops;            
        for (i = 0 ; (i + 1) < rtems_libio_number_iops ; i++, iop++)  
   4285a:	b3c1           	cmpal %d1,%a1                               
   4285c:	66f2           	bnes 42850 <rtems_libio_init+0x3c>          
   4285e:	ed89           	lsll #6,%d1                                 
   42860:	2241           	moveal %d1,%a1                              
   42862:	41f1 08c0      	lea %a1@(ffffffc0,%d0:l),%a0                
          iop->data1 = iop + 1;                                       
        iop->data1 = NULL;                                            
   42866:	42a8 0034      	clrl %a0@(52)                               
  /*                                                                  
   *  Create the binary semaphore used to provide mutual exclusion    
   *  on the IOP Table.                                               
   */                                                                 
                                                                      
  rc = rtems_semaphore_create(                                        
   4286a:	4879 0005 ee20 	pea 5ee20 <rtems_libio_semaphore>           
   42870:	42a7           	clrl %sp@-                                  
   42872:	4878 0054      	pea 54 <DBL_MANT_DIG+0x1f>                  
   42876:	4878 0001      	pea 1 <ADD>                                 
   4287a:	2f3c 4c42 494f 	movel #1279412559,%sp@-                     
   42880:	4eb9 0004 5a8c 	jsr 45a8c <rtems_semaphore_create>          
    1,                                                                
    RTEMS_BINARY_SEMAPHORE | RTEMS_INHERIT_PRIORITY | RTEMS_PRIORITY, 
    RTEMS_NO_PRIORITY,                                                
    &rtems_libio_semaphore                                            
  );                                                                  
  if ( rc != RTEMS_SUCCESSFUL )                                       
   42886:	4fef 0014      	lea %sp@(20),%sp                            
   4288a:	4a80           	tstl %d0                                    
   4288c:	6612           	bnes 428a0 <rtems_libio_init+0x8c>          
                                                                      
  /*                                                                  
   *  Initialize the base file system infrastructure.                 
   */                                                                 
                                                                      
  if (rtems_fs_init_helper)                                           
   4288e:	2279 0005 d710 	moveal 5d710 <rtems_fs_init_helper>,%a1     
   42894:	4a89           	tstl %a1                                    
   42896:	6704           	beqs 4289c <rtems_libio_init+0x88>          
     (* rtems_fs_init_helper)();                                      
}                                                                     
   42898:	4e5e           	unlk %fp                                    
  /*                                                                  
   *  Initialize the base file system infrastructure.                 
   */                                                                 
                                                                      
  if (rtems_fs_init_helper)                                           
     (* rtems_fs_init_helper)();                                      
   4289a:	4ed1           	jmp %a1@                                    
}                                                                     
   4289c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4289e:	4e75           	rts                                         <== NOT EXECUTED
    RTEMS_BINARY_SEMAPHORE | RTEMS_INHERIT_PRIORITY | RTEMS_PRIORITY, 
    RTEMS_NO_PRIORITY,                                                
    &rtems_libio_semaphore                                            
  );                                                                  
  if ( rc != RTEMS_SUCCESSFUL )                                       
    rtems_fatal_error_occurred( rc );                                 
   428a0:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   428a2:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
    if (rtems_libio_number_iops > 0)                                  
    {                                                                 
        rtems_libio_iops = (rtems_libio_t *) calloc(rtems_libio_number_iops,
                                                    sizeof(rtems_libio_t));
        if (rtems_libio_iops == NULL)                                 
            rtems_fatal_error_occurred(RTEMS_NO_MEMORY);              
   428a8:	4878 001a      	pea 1a <OPER2+0x6>                          <== NOT EXECUTED
   428ac:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
	...                                                                  
                                                                      
000683a4 <rtems_libio_set_private_env>:                               
		rtems_filesystem_freenode( &env->root_directory);                   
		free(env);                                                          
	}                                                                    
}                                                                     
                                                                      
rtems_status_code rtems_libio_set_private_env(void) {                 
   683a4:	4e56 ffd4      	linkw %fp,#-44                              
   683a8:	48d7 3c04      	moveml %d2/%a2-%a5,%sp@                     
  rtems_status_code 					sc;                                          
  rtems_id          					task_id;                                     
  rtems_filesystem_location_info_t		loc;                              
                                                                      
  sc=rtems_task_ident(RTEMS_SELF,0,&task_id);                         
   683ac:	486e fffc      	pea %fp@(-4)                                
   683b0:	42a7           	clrl %sp@-                                  
   683b2:	42a7           	clrl %sp@-                                  
   683b4:	4eb9 0006 a1d4 	jsr 6a1d4 <rtems_task_ident>                
  if (sc != RTEMS_SUCCESSFUL) return sc;                              
   683ba:	4fef 000c      	lea %sp@(12),%sp                            
   683be:	4a80           	tstl %d0                                    
   683c0:	6600 00cc      	bnew 6848e <rtems_libio_set_private_env+0xea>
                                                                      
  /* Only for the first time a malloc is necesary */                  
  if (rtems_current_user_env==&rtems_global_user_env) {               
   683c4:	2479 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a2   
   683ca:	b5fc 000a 697c 	cmpal #682364,%a2                           
   683d0:	6700 00ca      	beqw 6849c <rtems_libio_set_private_env+0xf8>
     return sc;                                                       
   }                                                                  
   rtems_current_user_env = tmp;                                      
  };                                                                  
                                                                      
  *rtems_current_user_env = rtems_global_user_env; /* get the global values*/
   683d4:	4878 0048      	pea 48 <DBL_MANT_DIG+0x13>                  
   * code we must _not_ free the original locs because                
   * what we are trying to do here is forking off                     
   * clones.                                                          
   */                                                                 
                                                                      
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
   683d8:	47ee ffe8      	lea %fp@(-24),%a3                           
     return sc;                                                       
   }                                                                  
   rtems_current_user_env = tmp;                                      
  };                                                                  
                                                                      
  *rtems_current_user_env = rtems_global_user_env; /* get the global values*/
   683dc:	4879 000a 697c 	pea a697c <rtems_global_user_env>           
   * code we must _not_ free the original locs because                
   * what we are trying to do here is forking off                     
   * clones.                                                          
   */                                                                 
                                                                      
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
   683e2:	4bf9 0004 66cc 	lea 466cc <rtems_filesystem_evaluate_path>,%a5
  rtems_filesystem_root    = loc;                                     
   683e8:	49ee fff8      	lea %fp@(-8),%a4                            
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
  rtems_filesystem_current = loc;                                     
   683ec:	4282           	clrl %d2                                    
     return sc;                                                       
   }                                                                  
   rtems_current_user_env = tmp;                                      
  };                                                                  
                                                                      
  *rtems_current_user_env = rtems_global_user_env; /* get the global values*/
   683ee:	2f0a           	movel %a2,%sp@-                             
   683f0:	4eb9 0008 3e74 	jsr 83e74 <memcpy>                          
  rtems_current_user_env->task_id=task_id;         /* mark the local values*/
                                                                      
  /* get a clean root */                                              
  rtems_filesystem_root    = THE_ROOT_FS_LOC;                         
   683f6:	2079 000a 6964 	moveal a6964 <rtems_filesystem_mount_table_control>,%a0
   683fc:	2568 001c 0018 	movel %a0@(28),%a2@(24)                     
   68402:	2568 0020 001c 	movel %a0@(32),%a2@(28)                     
   68408:	2568 0024 0020 	movel %a0@(36),%a2@(32)                     
   6840e:	2568 0028 0024 	movel %a0@(40),%a2@(36)                     
   }                                                                  
   rtems_current_user_env = tmp;                                      
  };                                                                  
                                                                      
  *rtems_current_user_env = rtems_global_user_env; /* get the global values*/
  rtems_current_user_env->task_id=task_id;         /* mark the local values*/
   68414:	24ae fffc      	movel %fp@(-4),%a2@                         
                                                                      
  /* get a clean root */                                              
  rtems_filesystem_root    = THE_ROOT_FS_LOC;                         
   68418:	2568 002c 0028 	movel %a0@(44),%a2@(40)                     
   * code we must _not_ free the original locs because                
   * what we are trying to do here is forking off                     
   * clones.                                                          
   */                                                                 
                                                                      
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
   6841e:	42a7           	clrl %sp@-                                  
   68420:	2f0b           	movel %a3,%sp@-                             
   68422:	42a7           	clrl %sp@-                                  
   68424:	4878 0001      	pea 1 <ADD>                                 
   68428:	4879 000a 19ba 	pea a19ba <basefix.3841+0x26>               
   6842e:	4e95           	jsr %a5@                                    
  rtems_filesystem_root    = loc;                                     
   68430:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
   68436:	4fef 0020      	lea %sp@(32),%sp                            
   * what we are trying to do here is forking off                     
   * clones.                                                          
   */                                                                 
                                                                      
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
  rtems_filesystem_root    = loc;                                     
   6843a:	2153 0018      	movel %a3@,%a0@(24)                         
   6843e:	216e ffec 001c 	movel %fp@(-20),%a0@(28)                    
   68444:	216e fff0 0020 	movel %fp@(-16),%a0@(32)                    
   6844a:	216e fff4 0024 	movel %fp@(-12),%a0@(36)                    
   68450:	2154 0028      	movel %a4@,%a0@(40)                         
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
   68454:	42a7           	clrl %sp@-                                  
   68456:	2f0b           	movel %a3,%sp@-                             
   68458:	42a7           	clrl %sp@-                                  
   6845a:	4878 0001      	pea 1 <ADD>                                 
   6845e:	4879 000a 19ba 	pea a19ba <basefix.3841+0x26>               
   68464:	4e95           	jsr %a5@                                    
  rtems_filesystem_current = loc;                                     
   68466:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   
   6846c:	5888           	addql #4,%a0                                
                                                                      
  return RTEMS_SUCCESSFUL;                                            
   6846e:	4fef 0014      	lea %sp@(20),%sp                            
   */                                                                 
                                                                      
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
  rtems_filesystem_root    = loc;                                     
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
  rtems_filesystem_current = loc;                                     
   68472:	20d3           	movel %a3@,%a0@+                            
   68474:	20ee ffec      	movel %fp@(-20),%a0@+                       
   68478:	20ee fff0      	movel %fp@(-16),%a0@+                       
   6847c:	20ee fff4      	movel %fp@(-12),%a0@+                       
   68480:	2094           	movel %a4@,%a0@                             
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   68482:	2002           	movel %d2,%d0                               
   68484:	4cee 3c04 ffd4 	moveml %fp@(-44),%d2/%a2-%a5                
   6848a:	4e5e           	unlk %fp                                    
   6848c:	4e75           	rts                                         
  rtems_status_code 					sc;                                          
  rtems_id          					task_id;                                     
  rtems_filesystem_location_info_t		loc;                              
                                                                      
  sc=rtems_task_ident(RTEMS_SELF,0,&task_id);                         
  if (sc != RTEMS_SUCCESSFUL) return sc;                              
   6848e:	2400           	movel %d0,%d2                               <== NOT EXECUTED
  rtems_filesystem_root    = loc;                                     
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
  rtems_filesystem_current = loc;                                     
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   68490:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   68492:	4cee 3c04 ffd4 	moveml %fp@(-44),%d2/%a2-%a5                <== NOT EXECUTED
   68498:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   6849a:	4e75           	rts                                         <== NOT EXECUTED
  sc=rtems_task_ident(RTEMS_SELF,0,&task_id);                         
  if (sc != RTEMS_SUCCESSFUL) return sc;                              
                                                                      
  /* Only for the first time a malloc is necesary */                  
  if (rtems_current_user_env==&rtems_global_user_env) {               
   rtems_user_env_t	*tmp = malloc(sizeof(rtems_user_env_t));          
   6849c:	4878 0048      	pea 48 <DBL_MANT_DIG+0x13>                  
   684a0:	4eb9 0004 6e00 	jsr 46e00 <malloc>                          
   if (!tmp)                                                          
   684a6:	588f           	addql #4,%sp                                
  sc=rtems_task_ident(RTEMS_SELF,0,&task_id);                         
  if (sc != RTEMS_SUCCESSFUL) return sc;                              
                                                                      
  /* Only for the first time a malloc is necesary */                  
  if (rtems_current_user_env==&rtems_global_user_env) {               
   rtems_user_env_t	*tmp = malloc(sizeof(rtems_user_env_t));          
   684a8:	2440           	moveal %d0,%a2                              
   if (!tmp)                                                          
   684aa:	4a80           	tstl %d0                                    
   684ac:	6700 00d6      	beqw 68584 <rtems_libio_set_private_env+0x1e0>
                                                                      
#ifdef HAVE_USERENV_REFCNT                                            
   tmp->refcnt = 1;                                                   
#endif                                                                
                                                                      
   sc = rtems_task_variable_add(RTEMS_SELF,(void*)&rtems_current_user_env,(void(*)(void *))free_user_env);
   684b0:	487a fdda      	pea %pc@(6828c <free_user_env>)             
   684b4:	4879 000a 1f7c 	pea a1f7c <rtems_current_user_env>          
   684ba:	42a7           	clrl %sp@-                                  
   684bc:	4eb9 0006 a5b4 	jsr 6a5b4 <rtems_task_variable_add>         
   if (sc != RTEMS_SUCCESSFUL) {                                      
   684c2:	4fef 000c      	lea %sp@(12),%sp                            
                                                                      
#ifdef HAVE_USERENV_REFCNT                                            
   tmp->refcnt = 1;                                                   
#endif                                                                
                                                                      
   sc = rtems_task_variable_add(RTEMS_SELF,(void*)&rtems_current_user_env,(void(*)(void *))free_user_env);
   684c6:	2400           	movel %d0,%d2                               
   if (sc != RTEMS_SUCCESSFUL) {                                      
   684c8:	6600 00c8      	bnew 68592 <rtems_libio_set_private_env+0x1ee>
	  * not initialized yet                                              
	  */                                                                 
     free(tmp);                                                       
     return sc;                                                       
   }                                                                  
   rtems_current_user_env = tmp;                                      
   684cc:	23ca 000a 1f7c 	movel %a2,a1f7c <rtems_current_user_env>    
  };                                                                  
                                                                      
  *rtems_current_user_env = rtems_global_user_env; /* get the global values*/
   684d2:	4878 0048      	pea 48 <DBL_MANT_DIG+0x13>                  
   * code we must _not_ free the original locs because                
   * what we are trying to do here is forking off                     
   * clones.                                                          
   */                                                                 
                                                                      
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
   684d6:	47ee ffe8      	lea %fp@(-24),%a3                           
     return sc;                                                       
   }                                                                  
   rtems_current_user_env = tmp;                                      
  };                                                                  
                                                                      
  *rtems_current_user_env = rtems_global_user_env; /* get the global values*/
   684da:	4879 000a 697c 	pea a697c <rtems_global_user_env>           
   * code we must _not_ free the original locs because                
   * what we are trying to do here is forking off                     
   * clones.                                                          
   */                                                                 
                                                                      
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
   684e0:	4bf9 0004 66cc 	lea 466cc <rtems_filesystem_evaluate_path>,%a5
  rtems_filesystem_root    = loc;                                     
   684e6:	49ee fff8      	lea %fp@(-8),%a4                            
     return sc;                                                       
   }                                                                  
   rtems_current_user_env = tmp;                                      
  };                                                                  
                                                                      
  *rtems_current_user_env = rtems_global_user_env; /* get the global values*/
   684ea:	2f0a           	movel %a2,%sp@-                             
   */                                                                 
                                                                      
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
  rtems_filesystem_root    = loc;                                     
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
  rtems_filesystem_current = loc;                                     
   684ec:	4282           	clrl %d2                                    
     return sc;                                                       
   }                                                                  
   rtems_current_user_env = tmp;                                      
  };                                                                  
                                                                      
  *rtems_current_user_env = rtems_global_user_env; /* get the global values*/
   684ee:	4eb9 0008 3e74 	jsr 83e74 <memcpy>                          
  rtems_current_user_env->task_id=task_id;         /* mark the local values*/
                                                                      
  /* get a clean root */                                              
  rtems_filesystem_root    = THE_ROOT_FS_LOC;                         
   684f4:	2079 000a 6964 	moveal a6964 <rtems_filesystem_mount_table_control>,%a0
   684fa:	2568 001c 0018 	movel %a0@(28),%a2@(24)                     
   68500:	2568 0020 001c 	movel %a0@(32),%a2@(28)                     
   68506:	2568 0024 0020 	movel %a0@(36),%a2@(32)                     
   6850c:	2568 0028 0024 	movel %a0@(40),%a2@(36)                     
   }                                                                  
   rtems_current_user_env = tmp;                                      
  };                                                                  
                                                                      
  *rtems_current_user_env = rtems_global_user_env; /* get the global values*/
  rtems_current_user_env->task_id=task_id;         /* mark the local values*/
   68512:	24ae fffc      	movel %fp@(-4),%a2@                         
                                                                      
  /* get a clean root */                                              
  rtems_filesystem_root    = THE_ROOT_FS_LOC;                         
   68516:	2568 002c 0028 	movel %a0@(44),%a2@(40)                     
   * code we must _not_ free the original locs because                
   * what we are trying to do here is forking off                     
   * clones.                                                          
   */                                                                 
                                                                      
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
   6851c:	42a7           	clrl %sp@-                                  
   6851e:	2f0b           	movel %a3,%sp@-                             
   68520:	42a7           	clrl %sp@-                                  
   68522:	4878 0001      	pea 1 <ADD>                                 
   68526:	4879 000a 19ba 	pea a19ba <basefix.3841+0x26>               
   6852c:	4e95           	jsr %a5@                                    
  rtems_filesystem_root    = loc;                                     
   6852e:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
   68534:	4fef 0020      	lea %sp@(32),%sp                            
   * what we are trying to do here is forking off                     
   * clones.                                                          
   */                                                                 
                                                                      
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
  rtems_filesystem_root    = loc;                                     
   68538:	2153 0018      	movel %a3@,%a0@(24)                         
   6853c:	216e ffec 001c 	movel %fp@(-20),%a0@(28)                    
   68542:	216e fff0 0020 	movel %fp@(-16),%a0@(32)                    
   68548:	216e fff4 0024 	movel %fp@(-12),%a0@(36)                    
   6854e:	2154 0028      	movel %a4@,%a0@(40)                         
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
   68552:	42a7           	clrl %sp@-                                  
   68554:	2f0b           	movel %a3,%sp@-                             
   68556:	42a7           	clrl %sp@-                                  
   68558:	4878 0001      	pea 1 <ADD>                                 
   6855c:	4879 000a 19ba 	pea a19ba <basefix.3841+0x26>               
   68562:	4e95           	jsr %a5@                                    
  rtems_filesystem_current = loc;                                     
   68564:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   
   6856a:	5888           	addql #4,%a0                                
                                                                      
  return RTEMS_SUCCESSFUL;                                            
   6856c:	4fef 0014      	lea %sp@(20),%sp                            
   */                                                                 
                                                                      
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
  rtems_filesystem_root    = loc;                                     
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
  rtems_filesystem_current = loc;                                     
   68570:	20d3           	movel %a3@,%a0@+                            
   68572:	20ee ffec      	movel %fp@(-20),%a0@+                       
   68576:	20ee fff0      	movel %fp@(-16),%a0@+                       
   6857a:	20ee fff4      	movel %fp@(-12),%a0@+                       
   6857e:	2094           	movel %a4@,%a0@                             
   68580:	6000 ff00      	braw 68482 <rtems_libio_set_private_env+0xde>
  if (sc != RTEMS_SUCCESSFUL) return sc;                              
                                                                      
  /* Only for the first time a malloc is necesary */                  
  if (rtems_current_user_env==&rtems_global_user_env) {               
   rtems_user_env_t	*tmp = malloc(sizeof(rtems_user_env_t));          
   if (!tmp)                                                          
   68584:	741a           	moveq #26,%d2                               <== NOT EXECUTED
  rtems_filesystem_root    = loc;                                     
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
  rtems_filesystem_current = loc;                                     
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   68586:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   68588:	4cee 3c04 ffd4 	moveml %fp@(-44),%d2/%a2-%a5                <== NOT EXECUTED
   6858e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   68590:	4e75           	rts                                         <== NOT EXECUTED
   sc = rtems_task_variable_add(RTEMS_SELF,(void*)&rtems_current_user_env,(void(*)(void *))free_user_env);
   if (sc != RTEMS_SUCCESSFUL) {                                      
	 /* don't use free_user_env because the pathlocs are                 
	  * not initialized yet                                              
	  */                                                                 
     free(tmp);                                                       
   68592:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   68594:	4eb9 0004 67c0 	jsr 467c0 <free>                            <== NOT EXECUTED
     return sc;                                                       
   6859a:	588f           	addql #4,%sp                                <== NOT EXECUTED
  rtems_filesystem_root    = loc;                                     
  rtems_filesystem_evaluate_path("/", 1, 0, &loc, 0);                 
  rtems_filesystem_current = loc;                                     
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   6859c:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   6859e:	4cee 3c04 ffd4 	moveml %fp@(-44),%d2/%a2-%a5                <== NOT EXECUTED
   685a4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000682e6 <rtems_libio_share_private_env>:                             
 *  b) mutex access to rtems_filesystem_current, rtems_filesytem_root 
 *     while changing any of those (chdir(), chroot()).               
 */                                                                   
                                                                      
#ifndef HAVE_USERENV_REFCNT                                           
rtems_status_code rtems_libio_share_private_env(rtems_id task_id) {   
   682e6:	4e56 fff8      	linkw %fp,#-8                               <== NOT EXECUTED
   682ea:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
  rtems_status_code  sc;                                              
  rtems_user_env_t * shared_user_env;                                 
  rtems_id           current_task_id;                                 
                                                                      
  sc=rtems_task_ident(RTEMS_SELF,0,¤t_task_id);                 
   682ec:	486e fff8      	pea %fp@(-8)                                <== NOT EXECUTED
   682f0:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   682f2:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   682f4:	4eb9 0006 a1d4 	jsr 6a1d4 <rtems_task_ident>                <== NOT EXECUTED
  if (sc != RTEMS_SUCCESSFUL) return sc;                              
   682fa:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   682fe:	4a80           	tstl %d0                                    <== NOT EXECUTED
   68300:	6636           	bnes 68338 <rtems_libio_share_private_env+0x52><== NOT EXECUTED
                                                                      
  if (rtems_current_user_env->task_id==current_task_id) {             
   68302:	2479 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a2   <== NOT EXECUTED
   68308:	202e fff8      	movel %fp@(-8),%d0                          <== NOT EXECUTED
   6830c:	b092           	cmpl %a2@,%d0                               <== NOT EXECUTED
   6830e:	6730           	beqs 68340 <rtems_libio_share_private_env+0x5a><== NOT EXECUTED
   free_user_env(tmp);                                                
  };                                                                  
                                                                      
  /* AT THIS POINT, rtems_current_user_env is DANGLING */             
                                                                      
  sc = rtems_task_variable_get(task_id,(void*)&rtems_current_user_env,
   68310:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   68314:	4879 000a 1f7c 	pea a1f7c <rtems_current_user_env>          <== NOT EXECUTED
   6831a:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   6831e:	4eb9 0006 a6ec 	jsr 6a6ec <rtems_task_variable_get>         <== NOT EXECUTED
		                       (void*)&shared_user_env       );             
  if (sc != RTEMS_SUCCESSFUL)                                         
   68324:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   68328:	4a80           	tstl %d0                                    <== NOT EXECUTED
   6832a:	674c           	beqs 68378 <rtems_libio_share_private_env+0x92><== NOT EXECUTED
                                                                      
  return RTEMS_SUCCESSFUL;                                            
                                                                      
bailout:                                                              
  /* fallback to the global env */                                    
  rtems_current_user_env = &rtems_global_user_env;                    
   6832c:	223c 000a 697c 	movel #682364,%d1                           <== NOT EXECUTED
   68332:	23c1 000a 1f7c 	movel %d1,a1f7c <rtems_current_user_env>    <== NOT EXECUTED
  return sc;                                                          
}                                                                     
   68338:	246e fff4      	moveal %fp@(-12),%a2                        <== NOT EXECUTED
   6833c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   6833e:	4e75           	rts                                         <== NOT EXECUTED
  if (sc != RTEMS_SUCCESSFUL) return sc;                              
                                                                      
  if (rtems_current_user_env->task_id==current_task_id) {             
   /* kill the current user env & task_var*/                          
	rtems_user_env_t 	*tmp = rtems_current_user_env;                     
   sc = rtems_task_variable_delete(RTEMS_SELF,(void*)&rtems_current_user_env);
   68340:	4879 000a 1f7c 	pea a1f7c <rtems_current_user_env>          <== NOT EXECUTED
   68346:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   68348:	4eb9 0006 a658 	jsr 6a658 <rtems_task_variable_delete>      <== NOT EXECUTED
   if (sc != RTEMS_SUCCESSFUL) return sc;                             
   6834e:	508f           	addql #8,%sp                                <== NOT EXECUTED
   68350:	4a80           	tstl %d0                                    <== NOT EXECUTED
   68352:	66e4           	bnes 68338 <rtems_libio_share_private_env+0x52><== NOT EXECUTED
   free_user_env(tmp);                                                
   68354:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   68356:	4eba ff34      	jsr %pc@(6828c <free_user_env>)             <== NOT EXECUTED
   6835a:	588f           	addql #4,%sp                                <== NOT EXECUTED
  };                                                                  
                                                                      
  /* AT THIS POINT, rtems_current_user_env is DANGLING */             
                                                                      
  sc = rtems_task_variable_get(task_id,(void*)&rtems_current_user_env,
   6835c:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   68360:	4879 000a 1f7c 	pea a1f7c <rtems_current_user_env>          <== NOT EXECUTED
   68366:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   6836a:	4eb9 0006 a6ec 	jsr 6a6ec <rtems_task_variable_get>         <== NOT EXECUTED
		                       (void*)&shared_user_env       );             
  if (sc != RTEMS_SUCCESSFUL)                                         
   68370:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   68374:	4a80           	tstl %d0                                    <== NOT EXECUTED
   68376:	66b4           	bnes 6832c <rtems_libio_share_private_env+0x46><== NOT EXECUTED
    goto bailout;                                                     
                                                                      
  sc = rtems_task_variable_add(RTEMS_SELF,(void*)&rtems_current_user_env,free_user_env);
   68378:	487a ff12      	pea %pc@(6828c <free_user_env>)             <== NOT EXECUTED
   6837c:	4879 000a 1f7c 	pea a1f7c <rtems_current_user_env>          <== NOT EXECUTED
   68382:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   68384:	4eb9 0006 a5b4 	jsr 6a5b4 <rtems_task_variable_add>         <== NOT EXECUTED
  if (sc != RTEMS_SUCCESSFUL)                                         
   6838a:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   6838e:	4a80           	tstl %d0                                    <== NOT EXECUTED
   68390:	669a           	bnes 6832c <rtems_libio_share_private_env+0x46><== NOT EXECUTED
    goto bailout;                                                     
                                                                      
  /* the current_user_env is the same pointer that remote env */      
  rtems_current_user_env = shared_user_env;                           
   68392:	41ee fffc      	lea %fp@(-4),%a0                            <== NOT EXECUTED
                                                                      
bailout:                                                              
  /* fallback to the global env */                                    
  rtems_current_user_env = &rtems_global_user_env;                    
  return sc;                                                          
}                                                                     
   68396:	246e fff4      	moveal %fp@(-12),%a2                        <== NOT EXECUTED
   6839a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  sc = rtems_task_variable_add(RTEMS_SELF,(void*)&rtems_current_user_env,free_user_env);
  if (sc != RTEMS_SUCCESSFUL)                                         
    goto bailout;                                                     
                                                                      
  /* the current_user_env is the same pointer that remote env */      
  rtems_current_user_env = shared_user_env;                           
   6839c:	23d0 000a 1f7c 	movel %a0@,a1f7c <rtems_current_user_env>   <== NOT EXECUTED
                                                                      
bailout:                                                              
  /* fallback to the global env */                                    
  rtems_current_user_env = &rtems_global_user_env;                    
  return sc;                                                          
}                                                                     
                                                                      
0004a920 <rtems_libio_to_fcntl_flags>:                                
  uint32_t   flags                                                    
)                                                                     
{                                                                     
  uint32_t   fcntl_flags = 0;                                         
                                                                      
  if ( (flags & LIBIO_FLAGS_READ_WRITE) == LIBIO_FLAGS_READ_WRITE ) { 
   4a920:	7006           	moveq #6,%d0                                
 */                                                                   
                                                                      
uint32_t   rtems_libio_to_fcntl_flags(                                
  uint32_t   flags                                                    
)                                                                     
{                                                                     
   4a922:	4e56 0000      	linkw %fp,#0                                
   4a926:	222e 0008      	movel %fp@(8),%d1                           
  uint32_t   fcntl_flags = 0;                                         
                                                                      
  if ( (flags & LIBIO_FLAGS_READ_WRITE) == LIBIO_FLAGS_READ_WRITE ) { 
   4a92a:	c081           	andl %d1,%d0                                
 */                                                                   
                                                                      
uint32_t   rtems_libio_to_fcntl_flags(                                
  uint32_t   flags                                                    
)                                                                     
{                                                                     
   4a92c:	2f02           	movel %d2,%sp@-                             
  uint32_t   fcntl_flags = 0;                                         
                                                                      
  if ( (flags & LIBIO_FLAGS_READ_WRITE) == LIBIO_FLAGS_READ_WRITE ) { 
   4a92e:	7406           	moveq #6,%d2                                
   4a930:	b480           	cmpl %d0,%d2                                
   4a932:	6736           	beqs 4a96a <rtems_libio_to_fcntl_flags+0x4a>
    fcntl_flags |= O_RDWR;                                            
  } else if ( (flags & LIBIO_FLAGS_READ) == LIBIO_FLAGS_READ) {       
   4a934:	0801 0001      	btst #1,%d1                                 
   4a938:	6726           	beqs 4a960 <rtems_libio_to_fcntl_flags+0x40>
   4a93a:	4280           	clrl %d0                                    
    fcntl_flags |= O_RDONLY;                                          
  } else if ( (flags & LIBIO_FLAGS_WRITE) == LIBIO_FLAGS_WRITE) {     
    fcntl_flags |= O_WRONLY;                                          
  }                                                                   
                                                                      
  if ( (flags & LIBIO_FLAGS_NO_DELAY) == LIBIO_FLAGS_NO_DELAY ) {     
   4a93c:	0801 0000      	btst #0,%d1                                 
   4a940:	6704           	beqs 4a946 <rtems_libio_to_fcntl_flags+0x26>
    fcntl_flags |= O_NONBLOCK;                                        
   4a942:	08c0 000e      	bset #14,%d0                                
  }                                                                   
                                                                      
  if ( (flags & LIBIO_FLAGS_APPEND) == LIBIO_FLAGS_APPEND ) {         
   4a946:	0801 0009      	btst #9,%d1                                 
   4a94a:	6704           	beqs 4a950 <rtems_libio_to_fcntl_flags+0x30>
    fcntl_flags |= O_APPEND;                                          
   4a94c:	7408           	moveq #8,%d2                                
   4a94e:	8082           	orl %d2,%d0                                 
  }                                                                   
                                                                      
  if ( (flags & LIBIO_FLAGS_CREATE) == LIBIO_FLAGS_CREATE ) {         
   4a950:	0801 000a      	btst #10,%d1                                
   4a954:	6704           	beqs 4a95a <rtems_libio_to_fcntl_flags+0x3a>
    fcntl_flags |= O_CREAT;                                           
   4a956:	08c0 0009      	bset #9,%d0                                 
  }                                                                   
                                                                      
  return fcntl_flags;                                                 
}                                                                     
   4a95a:	241f           	movel %sp@+,%d2                             
   4a95c:	4e5e           	unlk %fp                                    
   4a95e:	4e75           	rts                                         
{                                                                     
  uint32_t   fcntl_flags = 0;                                         
                                                                      
  if ( (flags & LIBIO_FLAGS_READ_WRITE) == LIBIO_FLAGS_READ_WRITE ) { 
    fcntl_flags |= O_RDWR;                                            
  } else if ( (flags & LIBIO_FLAGS_READ) == LIBIO_FLAGS_READ) {       
   4a960:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   4a962:	e488           	lsrl #2,%d0                                 <== NOT EXECUTED
   4a964:	7401           	moveq #1,%d2                                <== NOT EXECUTED
   4a966:	c082           	andl %d2,%d0                                <== NOT EXECUTED
   4a968:	60d2           	bras 4a93c <rtems_libio_to_fcntl_flags+0x1c><== NOT EXECUTED
  uint32_t   flags                                                    
)                                                                     
{                                                                     
  uint32_t   fcntl_flags = 0;                                         
                                                                      
  if ( (flags & LIBIO_FLAGS_READ_WRITE) == LIBIO_FLAGS_READ_WRITE ) { 
   4a96a:	7002           	moveq #2,%d0                                <== NOT EXECUTED
   4a96c:	60ce           	bras 4a93c <rtems_libio_to_fcntl_flags+0x1c><== NOT EXECUTED
                                                                      
00046ed0 <rtems_malloc_statistics_at_free>:                           
 *  size and thus we skip updating the statistics.                    
 */                                                                   
static void rtems_malloc_statistics_at_free(                          
  void *pointer                                                       
)                                                                     
{                                                                     
   46ed0:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   46ed4:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   46ed6:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  uintptr_t size;                                                     
                                                                      
  if (_Protected_heap_Get_block_size(RTEMS_Malloc_Heap, pointer, &size) ) {
   46ed8:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
   46edc:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   46ee0:	2f39 000a 1c80 	movel a1c80 <RTEMS_Malloc_Heap>,%sp@-       <== NOT EXECUTED
   46ee6:	4eb9 0004 c8e8 	jsr 4c8e8 <_Protected_heap_Get_block_size>  <== NOT EXECUTED
   46eec:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   46ef0:	4a00           	tstb %d0                                    <== NOT EXECUTED
   46ef2:	671a           	beqs 46f0e <rtems_malloc_statistics_at_free+0x3e><== NOT EXECUTED
    MSBUMP(lifetime_freed, size);                                     
   46ef4:	262e fffc      	movel %fp@(-4),%d3                          <== NOT EXECUTED
   46ef8:	4282           	clrl %d2                                    <== NOT EXECUTED
   46efa:	d7b9 000a 6960 	addl %d3,a6960 <rtems_malloc_statistics+0x28><== NOT EXECUTED
   46f00:	2039 000a 695c 	movel a695c <rtems_malloc_statistics+0x24>,%d0<== NOT EXECUTED
   46f06:	d182           	addxl %d2,%d0                               <== NOT EXECUTED
   46f08:	23c0 000a 695c 	movel %d0,a695c <rtems_malloc_statistics+0x24><== NOT EXECUTED
  }                                                                   
}                                                                     
   46f0e:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   46f12:	262e fff8      	movel %fp@(-8),%d3                          <== NOT EXECUTED
   46f16:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00046f1a <rtems_malloc_statistics_at_malloc>:                         
}                                                                     
                                                                      
static void rtems_malloc_statistics_at_malloc(                        
  void *pointer                                                       
)                                                                     
{                                                                     
   46f1a:	4e56 fffc      	linkw %fp,#-4                               <== NOT EXECUTED
   46f1e:	202e 0008      	movel %fp@(8),%d0                           <== NOT EXECUTED
   46f22:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   46f24:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  uintptr_t actual_size = 0;                                          
  uint32_t current_depth;                                             
  rtems_malloc_statistics_t *s = &rtems_malloc_statistics;            
                                                                      
  if ( !pointer )                                                     
   46f26:	4a80           	tstl %d0                                    <== NOT EXECUTED
   46f28:	674e           	beqs 46f78 <rtems_malloc_statistics_at_malloc+0x5e><== NOT EXECUTED
                                                                      
static void rtems_malloc_statistics_at_malloc(                        
  void *pointer                                                       
)                                                                     
{                                                                     
  uintptr_t actual_size = 0;                                          
   46f2a:	204e           	moveal %fp,%a0                              <== NOT EXECUTED
  if ( !pointer )                                                     
    return;                                                           
                                                                      
  _Protected_heap_Get_block_size(RTEMS_Malloc_Heap, pointer, &actual_size);
                                                                      
  MSBUMP(lifetime_allocated, actual_size);                            
   46f2c:	4282           	clrl %d2                                    <== NOT EXECUTED
                                                                      
static void rtems_malloc_statistics_at_malloc(                        
  void *pointer                                                       
)                                                                     
{                                                                     
  uintptr_t actual_size = 0;                                          
   46f2e:	42a0           	clrl %a0@-                                  <== NOT EXECUTED
  rtems_malloc_statistics_t *s = &rtems_malloc_statistics;            
                                                                      
  if ( !pointer )                                                     
    return;                                                           
                                                                      
  _Protected_heap_Get_block_size(RTEMS_Malloc_Heap, pointer, &actual_size);
   46f30:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   46f32:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   46f34:	2f39 000a 1c80 	movel a1c80 <RTEMS_Malloc_Heap>,%sp@-       <== NOT EXECUTED
   46f3a:	4eb9 0004 c8e8 	jsr 4c8e8 <_Protected_heap_Get_block_size>  <== NOT EXECUTED
                                                                      
  MSBUMP(lifetime_allocated, actual_size);                            
   46f40:	262e fffc      	movel %fp@(-4),%d3                          <== NOT EXECUTED
                                                                      
  current_depth = (uint32_t) (s->lifetime_allocated - s->lifetime_freed);
  if (current_depth > s->max_depth)                                   
   46f44:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
  if ( !pointer )                                                     
    return;                                                           
                                                                      
  _Protected_heap_Get_block_size(RTEMS_Malloc_Heap, pointer, &actual_size);
                                                                      
  MSBUMP(lifetime_allocated, actual_size);                            
   46f48:	2039 000a 6954 	movel a6954 <rtems_malloc_statistics+0x1c>,%d0<== NOT EXECUTED
   46f4e:	d6b9 000a 6958 	addl a6958 <rtems_malloc_statistics+0x20>,%d3<== NOT EXECUTED
   46f54:	d580           	addxl %d0,%d2                               <== NOT EXECUTED
                                                                      
  current_depth = (uint32_t) (s->lifetime_allocated - s->lifetime_freed);
   46f56:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   46f58:	90b9 000a 6960 	subl a6960 <rtems_malloc_statistics+0x28>,%d0<== NOT EXECUTED
  if ( !pointer )                                                     
    return;                                                           
                                                                      
  _Protected_heap_Get_block_size(RTEMS_Malloc_Heap, pointer, &actual_size);
                                                                      
  MSBUMP(lifetime_allocated, actual_size);                            
   46f5e:	23c2 000a 6954 	movel %d2,a6954 <rtems_malloc_statistics+0x1c><== NOT EXECUTED
   46f64:	23c3 000a 6958 	movel %d3,a6958 <rtems_malloc_statistics+0x20><== NOT EXECUTED
                                                                      
  current_depth = (uint32_t) (s->lifetime_allocated - s->lifetime_freed);
  if (current_depth > s->max_depth)                                   
   46f6a:	b0b9 000a 6950 	cmpl a6950 <rtems_malloc_statistics+0x18>,%d0<== NOT EXECUTED
   46f70:	6306           	blss 46f78 <rtems_malloc_statistics_at_malloc+0x5e><== NOT EXECUTED
      s->max_depth = current_depth;                                   
   46f72:	23c0 000a 6950 	movel %d0,a6950 <rtems_malloc_statistics+0x18><== NOT EXECUTED
}                                                                     
   46f78:	242e fff4      	movel %fp@(-12),%d2                         <== NOT EXECUTED
   46f7c:	262e fff8      	movel %fp@(-8),%d3                          <== NOT EXECUTED
   46f80:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00046f84 <rtems_malloc_statistics_initialize>:                        
#include <sys/reent.h>                                                
#include <stdlib.h>                                                   
                                                                      
                                                                      
static void rtems_malloc_statistics_initialize( void )                
{                                                                     
   46f84:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  /*                                                                  
   * Zero all the statistics                                          
   */                                                                 
  (void) memset(&rtems_malloc_statistics, 0, sizeof(rtems_malloc_statistics));
}                                                                     
   46f88:	4e5e           	unlk %fp                                    <== NOT EXECUTED
static void rtems_malloc_statistics_initialize( void )                
{                                                                     
  /*                                                                  
   * Zero all the statistics                                          
   */                                                                 
  (void) memset(&rtems_malloc_statistics, 0, sizeof(rtems_malloc_statistics));
   46f8a:	42b9 000a 6938 	clrl a6938 <rtems_malloc_statistics>        <== NOT EXECUTED
   46f90:	42b9 000a 693c 	clrl a693c <rtems_malloc_statistics+0x4>    <== NOT EXECUTED
   46f96:	42b9 000a 6940 	clrl a6940 <rtems_malloc_statistics+0x8>    <== NOT EXECUTED
   46f9c:	42b9 000a 6944 	clrl a6944 <rtems_malloc_statistics+0xc>    <== NOT EXECUTED
   46fa2:	42b9 000a 6948 	clrl a6948 <rtems_malloc_statistics+0x10>   <== NOT EXECUTED
   46fa8:	42b9 000a 694c 	clrl a694c <rtems_malloc_statistics+0x14>   <== NOT EXECUTED
   46fae:	42b9 000a 6950 	clrl a6950 <rtems_malloc_statistics+0x18>   <== NOT EXECUTED
   46fb4:	42b9 000a 6954 	clrl a6954 <rtems_malloc_statistics+0x1c>   <== NOT EXECUTED
   46fba:	42b9 000a 6958 	clrl a6958 <rtems_malloc_statistics+0x20>   <== NOT EXECUTED
   46fc0:	42b9 000a 695c 	clrl a695c <rtems_malloc_statistics+0x24>   <== NOT EXECUTED
   46fc6:	42b9 000a 6960 	clrl a6960 <rtems_malloc_statistics+0x28>   <== NOT EXECUTED
}                                                                     
	...                                                                  
                                                                      
000501bc <rtems_memalign>:                                            
int rtems_memalign(                                                   
  void   **pointer,                                                   
  size_t   alignment,                                                 
  size_t   size                                                       
)                                                                     
{                                                                     
   501bc:	4e56 0000      	linkw %fp,#0                                
   501c0:	2f0a           	movel %a2,%sp@-                             
   501c2:	246e 0008      	moveal %fp@(8),%a2                          
   501c6:	2f02           	movel %d2,%sp@-                             
  void *return_this;                                                  
                                                                      
  /*                                                                  
   *  Parameter error checks                                          
   */                                                                 
  if ( !pointer )                                                     
   501c8:	4a8a           	tstl %a2                                    
   501ca:	675e           	beqs 5022a <rtems_memalign+0x6e>            
    return EINVAL;                                                    
                                                                      
  *pointer = NULL;                                                    
   501cc:	4292           	clrl %a2@                                   
                                                                      
  /*                                                                  
   *  Do not attempt to allocate memory if not in correct system state.
   */                                                                 
  if ( _System_state_Is_up(_System_state_Get()) &&                    
   501ce:	7003           	moveq #3,%d0                                
   501d0:	b0b9 0006 51d8 	cmpl 651d8 <_System_state_Current>,%d0      
   501d6:	6748           	beqs 50220 <rtems_memalign+0x64>            
                                                                      
  /*                                                                  
   *                                                                  
   *  If some free's have been deferred, then do them now.            
   */                                                                 
  malloc_deferred_frees_process();                                    
   501d8:	4eb9 0004 41e6 	jsr 441e6 <malloc_deferred_frees_process>   
  uintptr_t size,                                                     
  uintptr_t alignment                                                 
)                                                                     
{                                                                     
  return                                                              
    _Protected_heap_Allocate_aligned_with_boundary( heap, size, alignment, 0 );
   501de:	42a7           	clrl %sp@-                                  
   501e0:	2f2e 000c      	movel %fp@(12),%sp@-                        
   501e4:	2f2e 0010      	movel %fp@(16),%sp@-                        
   501e8:	2f39 0006 3730 	movel 63730 <RTEMS_Malloc_Heap>,%sp@-       
   501ee:	4eb9 0004 97f4 	jsr 497f4 <_Protected_heap_Allocate_aligned_with_boundary>
  return_this = _Protected_heap_Allocate_aligned(                     
    RTEMS_Malloc_Heap,                                                
    size,                                                             
    alignment                                                         
  );                                                                  
  if ( !return_this )                                                 
   501f4:	4fef 0010      	lea %sp@(16),%sp                            
   501f8:	2400           	movel %d0,%d2                               
   501fa:	673c           	beqs 50238 <rtems_memalign+0x7c>            
    return ENOMEM;                                                    
                                                                      
  /*                                                                  
   *  If configured, update the more involved statistics              
   */                                                                 
  if ( rtems_malloc_statistics_helpers )                              
   501fc:	2079 0006 3dd6 	moveal 63dd6 <rtems_malloc_statistics_helpers>,%a0
   50202:	4a88           	tstl %a0                                    
   50204:	670a           	beqs 50210 <rtems_memalign+0x54>            
    (*rtems_malloc_statistics_helpers->at_malloc)(pointer);           
   50206:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   50208:	2068 0004      	moveal %a0@(4),%a0                          <== NOT EXECUTED
   5020c:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   5020e:	588f           	addql #4,%sp                                <== NOT EXECUTED
     */                                                               
    if (rtems_malloc_boundary_helpers)                                
      (*rtems_malloc_boundary_helpers->at_malloc)(return_this, size); 
  #endif                                                              
                                                                      
  *pointer = return_this;                                             
   50210:	2482           	movel %d2,%a2@                              
  return 0;                                                           
}                                                                     
   50212:	242e fff8      	movel %fp@(-8),%d2                          
     */                                                               
    if (rtems_malloc_boundary_helpers)                                
      (*rtems_malloc_boundary_helpers->at_malloc)(return_this, size); 
  #endif                                                              
                                                                      
  *pointer = return_this;                                             
   50216:	4280           	clrl %d0                                    
  return 0;                                                           
}                                                                     
   50218:	246e fffc      	moveal %fp@(-4),%a2                         
   5021c:	4e5e           	unlk %fp                                    
   5021e:	4e75           	rts                                         
  *pointer = NULL;                                                    
                                                                      
  /*                                                                  
   *  Do not attempt to allocate memory if not in correct system state.
   */                                                                 
  if ( _System_state_Is_up(_System_state_Get()) &&                    
   50220:	4eb9 0004 418c 	jsr 4418c <malloc_is_system_state_OK>       
   50226:	4a00           	tstb %d0                                    
   50228:	66ae           	bnes 501d8 <rtems_memalign+0x1c>            
      (*rtems_malloc_boundary_helpers->at_malloc)(return_this, size); 
  #endif                                                              
                                                                      
  *pointer = return_this;                                             
  return 0;                                                           
}                                                                     
   5022a:	242e fff8      	movel %fp@(-8),%d2                          
    if (rtems_malloc_boundary_helpers)                                
      (*rtems_malloc_boundary_helpers->at_malloc)(return_this, size); 
  #endif                                                              
                                                                      
  *pointer = return_this;                                             
  return 0;                                                           
   5022e:	7016           	moveq #22,%d0                               
}                                                                     
   50230:	246e fffc      	moveal %fp@(-4),%a2                         
   50234:	4e5e           	unlk %fp                                    
   50236:	4e75           	rts                                         
   50238:	242e fff8      	movel %fp@(-8),%d2                          
  return_this = _Protected_heap_Allocate_aligned(                     
    RTEMS_Malloc_Heap,                                                
    size,                                                             
    alignment                                                         
  );                                                                  
  if ( !return_this )                                                 
   5023c:	700c           	moveq #12,%d0                               
      (*rtems_malloc_boundary_helpers->at_malloc)(return_this, size); 
  #endif                                                              
                                                                      
  *pointer = return_this;                                             
  return 0;                                                           
}                                                                     
   5023e:	246e fffc      	moveal %fp@(-4),%a2                         
   50242:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      
00047770 <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                            
)                                                                     
{                                                                     
   47770:	4e56 0000      	linkw %fp,#0                                
   47774:	2f0a           	movel %a2,%sp@-                             
   47776:	246e 0010      	moveal %fp@(16),%a2                         
   4777a:	2f02           	movel %d2,%sp@-                             
  int                  i;                                             
                                                                      
  /*                                                                  
   * Validate parameters and look up information structure.           
   */                                                                 
  if ( !info )                                                        
   4777c:	4a8a           	tstl %a2                                    
   4777e:	6766           	beqs 477e6 <rtems_object_get_class_information+0x76>
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  obj_info = _Objects_Get_information( the_api, the_class );          
   47780:	2f2e 000c      	movel %fp@(12),%sp@-                        
   47784:	2f2e 0008      	movel %fp@(8),%sp@-                         
   47788:	4eb9 0004 937c 	jsr 4937c <_Objects_Get_information>        
  if ( !obj_info )                                                    
   4778e:	508f           	addql #8,%sp                                
   * Validate parameters and look up information structure.           
   */                                                                 
  if ( !info )                                                        
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  obj_info = _Objects_Get_information( the_api, the_class );          
   47790:	2040           	moveal %d0,%a0                              
  if ( !obj_info )                                                    
   47792:	4a80           	tstl %d0                                    
   47794:	675e           	beqs 477f4 <rtems_object_get_class_information+0x84>
    return RTEMS_INVALID_NUMBER;                                      
                                                                      
  /*                                                                  
   * Return information about this object class to the user.          
   */                                                                 
  info->minimum_id  = obj_info->minimum_id;                           
   47796:	24a8 0006      	movel %a0@(6),%a2@                          
  info->maximum_id  = obj_info->maximum_id;                           
  info->auto_extend = obj_info->auto_extend;                          
  info->maximum     = obj_info->maximum;                              
   4779a:	4282           	clrl %d2                                    
                                                                      
  /*                                                                  
   * Return information about this object class to the user.          
   */                                                                 
  info->minimum_id  = obj_info->minimum_id;                           
  info->maximum_id  = obj_info->maximum_id;                           
   4779c:	2568 000a 0004 	movel %a0@(10),%a2@(4)                      
  info->auto_extend = obj_info->auto_extend;                          
  info->maximum     = obj_info->maximum;                              
   477a2:	3428 000e      	movew %a0@(14),%d2                          
  /*                                                                  
   * 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;                          
   477a6:	1568 0010 000c 	moveb %a0@(16),%a2@(12)                     
  info->maximum     = obj_info->maximum;                              
   477ac:	2542 0008      	movel %d2,%a2@(8)                           
                                                                      
  for ( unallocated=0, i=1 ; i <= info->maximum ; i++ )               
   477b0:	6750           	beqs 47802 <rtems_object_get_class_information+0x92>
   477b2:	2068 0018      	moveal %a0@(24),%a0                         
   477b6:	7201           	moveq #1,%d1                                
   477b8:	7001           	moveq #1,%d0                                
   477ba:	93c9           	subal %a1,%a1                               
   477bc:	5280           	addql #1,%d0                                
    if ( !obj_info->local_table[i] )                                  
   477be:	4ab0 1c00      	tstl %a0@(00000000,%d1:l:4)                 
   477c2:	6718           	beqs 477dc <rtems_object_get_class_information+0x6c>
  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++ )               
   477c4:	2200           	movel %d0,%d1                               
   477c6:	b082           	cmpl %d2,%d0                                
   477c8:	63f2           	blss 477bc <rtems_object_get_class_information+0x4c>
    if ( !obj_info->local_table[i] )                                  
      unallocated++;                                                  
                                                                      
  info->unallocated = unallocated;                                    
   477ca:	2549 000e      	movel %a1,%a2@(14)                          
   477ce:	4280           	clrl %d0                                    
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   477d0:	242e fff8      	movel %fp@(-8),%d2                          
   477d4:	246e fffc      	moveal %fp@(-4),%a2                         
   477d8:	4e5e           	unlk %fp                                    
   477da:	4e75           	rts                                         
  info->auto_extend = obj_info->auto_extend;                          
  info->maximum     = obj_info->maximum;                              
                                                                      
  for ( unallocated=0, i=1 ; i <= info->maximum ; i++ )               
    if ( !obj_info->local_table[i] )                                  
      unallocated++;                                                  
   477dc:	5289           	addql #1,%a1                                
  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++ )               
   477de:	2200           	movel %d0,%d1                               
   477e0:	b082           	cmpl %d2,%d0                                
   477e2:	63d8           	blss 477bc <rtems_object_get_class_information+0x4c>
   477e4:	60e4           	bras 477ca <rtems_object_get_class_information+0x5a>
      unallocated++;                                                  
                                                                      
  info->unallocated = unallocated;                                    
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   477e6:	242e fff8      	movel %fp@(-8),%d2                          
  int                  i;                                             
                                                                      
  /*                                                                  
   * Validate parameters and look up information structure.           
   */                                                                 
  if ( !info )                                                        
   477ea:	7009           	moveq #9,%d0                                
      unallocated++;                                                  
                                                                      
  info->unallocated = unallocated;                                    
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   477ec:	246e fffc      	moveal %fp@(-4),%a2                         
   477f0:	4e5e           	unlk %fp                                    
   477f2:	4e75           	rts                                         
   477f4:	242e fff8      	movel %fp@(-8),%d2                          
   */                                                                 
  if ( !info )                                                        
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  obj_info = _Objects_Get_information( the_api, the_class );          
  if ( !obj_info )                                                    
   477f8:	700a           	moveq #10,%d0                               
      unallocated++;                                                  
                                                                      
  info->unallocated = unallocated;                                    
                                                                      
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   477fa:	246e fffc      	moveal %fp@(-4),%a2                         
   477fe:	4e5e           	unlk %fp                                    
   47800:	4e75           	rts                                         
  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++ )               
   47802:	93c9           	subal %a1,%a1                               <== NOT EXECUTED
    if ( !obj_info->local_table[i] )                                  
      unallocated++;                                                  
                                                                      
  info->unallocated = unallocated;                                    
   47804:	4280           	clrl %d0                                    <== NOT EXECUTED
   47806:	2549 000e      	movel %a1,%a2@(14)                          <== NOT EXECUTED
   4780a:	60c4           	bras 477d0 <rtems_object_get_class_information+0x60><== NOT EXECUTED
                                                                      
00042526 <rtems_panic>:                                               
                                                                      
void rtems_panic(                                                     
    const char *printf_format,                                        
    ...                                                               
  )                                                                   
{                                                                     
   42526:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
    va_list arglist;                                                  
                                                                      
    va_start(arglist, printf_format);                                 
    (void) rtems_verror(RTEMS_ERROR_PANIC, printf_format, arglist);   
   4252a:	486e 000c      	pea %fp@(12)                                <== NOT EXECUTED
   4252e:	2f2e 0008      	movel %fp@(8),%sp@-                         <== NOT EXECUTED
   42532:	2f3c 2000 0000 	movel #536870912,%sp@-                      <== NOT EXECUTED
   42538:	4eba fdf6      	jsr %pc@(42330 <rtems_verror>)              <== NOT EXECUTED
   4253c:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
    va_end(arglist);                                                  
}                                                                     
   42540:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004c70e <rtems_pipe_initialize>:                                     
                                                                      
/*                                                                    
 * Initialization of FIFO/pipe module.                                
 */                                                                   
void rtems_pipe_initialize (void)                                     
{                                                                     
   4c70e:	4e56 0000      	linkw %fp,#0                                
  if (!rtems_pipe_configured)                                         
   4c712:	4a39 0005 dda4 	tstb 5dda4 <rtems_pipe_configured>          
   4c718:	6708           	beqs 4c722 <rtems_pipe_initialize+0x14>     
    return;                                                           
                                                                      
  if (rtems_pipe_semaphore)                                           
   4c71a:	4ab9 0005 e724 	tstl 5e724 <rtems_pipe_semaphore>           <== NOT EXECUTED
   4c720:	6704           	beqs 4c726 <rtems_pipe_initialize+0x18>     <== NOT EXECUTED
    rtems_fatal_error_occurred (sc);                                  
                                                                      
  rtems_interval now;                                                 
  now = rtems_clock_get_ticks_since_boot();                           
  rtems_pipe_no = now;                                                
}                                                                     
   4c722:	4e5e           	unlk %fp                                    
   4c724:	4e75           	rts                                         
                                                                      
  if (rtems_pipe_semaphore)                                           
    return;                                                           
                                                                      
  rtems_status_code sc;                                               
  sc = rtems_semaphore_create(                                        
   4c726:	4879 0005 e724 	pea 5e724 <rtems_pipe_semaphore>            <== NOT EXECUTED
   4c72c:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4c72e:	4878 0054      	pea 54 <DBL_MANT_DIG+0x1f>                  <== NOT EXECUTED
   4c732:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   4c736:	2f3c 5049 5045 	movel #1346981957,%sp@-                     <== NOT EXECUTED
   4c73c:	4eb9 0004 5a8c 	jsr 45a8c <rtems_semaphore_create>          <== NOT EXECUTED
        rtems_build_name ('P', 'I', 'P', 'E'), 1,                     
        RTEMS_BINARY_SEMAPHORE | RTEMS_INHERIT_PRIORITY | RTEMS_PRIORITY,
        RTEMS_NO_PRIORITY, &rtems_pipe_semaphore);                    
  if (sc != RTEMS_SUCCESSFUL)                                         
   4c742:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   4c746:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4c748:	6610           	bnes 4c75a <rtems_pipe_initialize+0x4c>     <== NOT EXECUTED
    rtems_fatal_error_occurred (sc);                                  
                                                                      
  rtems_interval now;                                                 
  now = rtems_clock_get_ticks_since_boot();                           
   4c74a:	4eb9 0004 55fc 	jsr 455fc <rtems_clock_get_ticks_since_boot><== NOT EXECUTED
  rtems_pipe_no = now;                                                
}                                                                     
   4c750:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  if (sc != RTEMS_SUCCESSFUL)                                         
    rtems_fatal_error_occurred (sc);                                  
                                                                      
  rtems_interval now;                                                 
  now = rtems_clock_get_ticks_since_boot();                           
  rtems_pipe_no = now;                                                
   4c752:	33c0 0005 e72c 	movew %d0,5e72c <rtems_pipe_no>             <== NOT EXECUTED
}                                                                     
   4c758:	4e75           	rts                                         <== NOT EXECUTED
  sc = rtems_semaphore_create(                                        
        rtems_build_name ('P', 'I', 'P', 'E'), 1,                     
        RTEMS_BINARY_SEMAPHORE | RTEMS_INHERIT_PRIORITY | RTEMS_PRIORITY,
        RTEMS_NO_PRIORITY, &rtems_pipe_semaphore);                    
  if (sc != RTEMS_SUCCESSFUL)                                         
    rtems_fatal_error_occurred (sc);                                  
   4c75a:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4c75c:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
                                                                      
0007b7b0 <rtems_rate_monotonic_period>:                               
                                                                      
rtems_status_code rtems_rate_monotonic_period(                        
  rtems_id       id,                                                  
  rtems_interval length                                               
)                                                                     
{                                                                     
   7b7b0:	4e56 ffec      	linkw %fp,#-20                              
   7b7b4:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
   7b7b8:	486e fffc      	pea %fp@(-4)                                
   7b7bc:	242e 0008      	movel %fp@(8),%d2                           
   7b7c0:	2f02           	movel %d2,%sp@-                             
   7b7c2:	4879 000a 7530 	pea a7530 <_Rate_monotonic_Information>     
   7b7c8:	4eb9 0004 c5f8 	jsr 4c5f8 <_Objects_Get>                    
  rtems_rate_monotonic_period_states   local_state;                   
  ISR_Level                            level;                         
                                                                      
  the_period = _Rate_monotonic_Get( id, &location );                  
                                                                      
  switch ( location ) {                                               
   7b7ce:	4fef 000c      	lea %sp@(12),%sp                            
   7b7d2:	2440           	moveal %d0,%a2                              
   7b7d4:	4aae fffc      	tstl %fp@(-4)                               
   7b7d8:	661e           	bnes 7b7f8 <rtems_rate_monotonic_period+0x48>
    case OBJECTS_LOCAL:                                               
      if ( !_Thread_Is_executing( the_period->owner ) ) {             
   7b7da:	2039 000a 6b46 	movel a6b46 <_Thread_Executing>,%d0         
   7b7e0:	b0aa 0040      	cmpl %a2@(64),%d0                           
   7b7e4:	671e           	beqs 7b804 <rtems_rate_monotonic_period+0x54>
        _Thread_Enable_dispatch();                                    
   7b7e6:	4eb9 0004 cf38 	jsr 4cf38 <_Thread_Enable_dispatch>         
   7b7ec:	7017           	moveq #23,%d0                               
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   7b7ee:	4cee 040c ffec 	moveml %fp@(-20),%d2-%d3/%a2                
   7b7f4:	4e5e           	unlk %fp                                    
   7b7f6:	4e75           	rts                                         
          the_period->state = RATE_MONOTONIC_ACTIVE;                  
          the_period->next_length = length;                           
                                                                      
          _Watchdog_Insert_ticks( &the_period->Timer, length );       
          _Thread_Enable_dispatch();                                  
          return RTEMS_TIMEOUT;                                       
   7b7f8:	7004           	moveq #4,%d0                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   7b7fa:	4cee 040c ffec 	moveml %fp@(-20),%d2-%d3/%a2                
   7b800:	4e5e           	unlk %fp                                    
   7b802:	4e75           	rts                                         
      if ( !_Thread_Is_executing( the_period->owner ) ) {             
        _Thread_Enable_dispatch();                                    
        return RTEMS_NOT_OWNER_OF_RESOURCE;                           
      }                                                               
                                                                      
      if ( length == RTEMS_PERIOD_STATUS ) {                          
   7b804:	4aae 000c      	tstl %fp@(12)                               
   7b808:	6700 00ce      	beqw 7b8d8 <rtems_rate_monotonic_period+0x128>
        }                                                             
        _Thread_Enable_dispatch();                                    
        return( return_value );                                       
      }                                                               
                                                                      
      _ISR_Disable( level );                                          
   7b80c:	203c 0000 0700 	movel #1792,%d0                             
   7b812:	40c3           	movew %sr,%d3                               
   7b814:	8083           	orl %d3,%d0                                 
   7b816:	46c0           	movew %d0,%sr                               
      switch ( the_period->state ) {                                  
   7b818:	202a 0038      	movel %a2@(56),%d0                          
   7b81c:	7202           	moveq #2,%d1                                
   7b81e:	b280           	cmpl %d0,%d1                                
   7b820:	6700 00dc      	beqw 7b8fe <rtems_rate_monotonic_period+0x14e>
   7b824:	123c 0004      	moveb #4,%d1                                
   7b828:	b280           	cmpl %d0,%d1                                
   7b82a:	6762           	beqs 7b88e <rtems_rate_monotonic_period+0xde>
   7b82c:	4a80           	tstl %d0                                    
   7b82e:	66c8           	bnes 7b7f8 <rtems_rate_monotonic_period+0x48>
        case RATE_MONOTONIC_INACTIVE: {                               
                                                                      
          _ISR_Enable( level );                                       
   7b830:	46c3           	movew %d3,%sr                               
                                                                      
          /*                                                          
           *  Baseline statistics information for the beginning of a period.
           */                                                         
          _Rate_monotonic_Initiate_statistics( the_period );          
   7b832:	2f0a           	movel %a2,%sp@-                             
   7b834:	2d40 fff8      	movel %d0,%fp@(-8)                          
   7b838:	4eb9 0007 b568 	jsr 7b568 <_Rate_monotonic_Initiate_statistics>
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
  the_watchdog->routine   = routine;                                  
   7b83e:	223c 0007 b99c 	movel #506268,%d1                           
  the_watchdog->id        = id;                                       
   7b844:	2542 0030      	movel %d2,%a2@(48)                          
  Watchdog_Control      *the_watchdog,                                
  Watchdog_Interval      units                                        
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
   7b848:	242e 000c      	movel %fp@(12),%d2                          
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
  the_watchdog->routine   = routine;                                  
   7b84c:	2541 002c      	movel %d1,%a2@(44)                          
                                                                      
          the_period->state = RATE_MONOTONIC_ACTIVE;                  
   7b850:	7202           	moveq #2,%d1                                
  Watchdog_Control      *the_watchdog,                                
  Watchdog_Interval      units                                        
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
   7b852:	2542 001c      	movel %d2,%a2@(28)                          
   7b856:	2541 0038      	movel %d1,%a2@(56)                          
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   7b85a:	42aa 0018      	clrl %a2@(24)                               
  the_watchdog->routine   = routine;                                  
  the_watchdog->id        = id;                                       
  the_watchdog->user_data = user_data;                                
   7b85e:	42aa 0034      	clrl %a2@(52)                               
            _Rate_monotonic_Timeout,                                  
            id,                                                       
            NULL                                                      
          );                                                          
                                                                      
          the_period->next_length = length;                           
   7b862:	2542 003c      	movel %d2,%a2@(60)                          
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
                                                                      
  _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );           
   7b866:	486a 0010      	pea %a2@(16)                                
   7b86a:	4879 000a 6b64 	pea a6b64 <_Watchdog_Ticks_chain>           
   7b870:	4eb9 0004 e0d8 	jsr 4e0d8 <_Watchdog_Insert>                
                                                                      
          _Watchdog_Insert_ticks( &the_period->Timer, length );       
          _Thread_Enable_dispatch();                                  
   7b876:	4eb9 0004 cf38 	jsr 4cf38 <_Thread_Enable_dispatch>         
          return RTEMS_SUCCESSFUL;                                    
   7b87c:	202e fff8      	movel %fp@(-8),%d0                          
   7b880:	4fef 000c      	lea %sp@(12),%sp                            
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   7b884:	4cee 040c ffec 	moveml %fp@(-20),%d2-%d3/%a2                
   7b88a:	4e5e           	unlk %fp                                    
   7b88c:	4e75           	rts                                         
        case RATE_MONOTONIC_EXPIRED:                                  
                                                                      
          /*                                                          
           *  Update statistics from the concluding period            
           */                                                         
          _Rate_monotonic_Update_statistics( the_period );            
   7b88e:	2f0a           	movel %a2,%sp@-                             
   7b890:	4eb9 0007 b696 	jsr 7b696 <_Rate_monotonic_Update_statistics>
                                                                      
          _ISR_Enable( level );                                       
   7b896:	46c3           	movew %d3,%sr                               
                                                                      
          the_period->state = RATE_MONOTONIC_ACTIVE;                  
   7b898:	7202           	moveq #2,%d1                                
          the_period->next_length = length;                           
                                                                      
          _Watchdog_Insert_ticks( &the_period->Timer, length );       
          _Thread_Enable_dispatch();                                  
   7b89a:	7006           	moveq #6,%d0                                
  Watchdog_Control      *the_watchdog,                                
  Watchdog_Interval      units                                        
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
   7b89c:	242e 000c      	movel %fp@(12),%d2                          
           */                                                         
          _Rate_monotonic_Update_statistics( the_period );            
                                                                      
          _ISR_Enable( level );                                       
                                                                      
          the_period->state = RATE_MONOTONIC_ACTIVE;                  
   7b8a0:	2541 0038      	movel %d1,%a2@(56)                          
   7b8a4:	2542 001c      	movel %d2,%a2@(28)                          
          the_period->next_length = length;                           
   7b8a8:	2542 003c      	movel %d2,%a2@(60)                          
                                                                      
  _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );           
   7b8ac:	486a 0010      	pea %a2@(16)                                
   7b8b0:	4879 000a 6b64 	pea a6b64 <_Watchdog_Ticks_chain>           
   7b8b6:	2d40 fff8      	movel %d0,%fp@(-8)                          
   7b8ba:	4eb9 0004 e0d8 	jsr 4e0d8 <_Watchdog_Insert>                
                                                                      
          _Watchdog_Insert_ticks( &the_period->Timer, length );       
          _Thread_Enable_dispatch();                                  
   7b8c0:	4eb9 0004 cf38 	jsr 4cf38 <_Thread_Enable_dispatch>         
          return RTEMS_TIMEOUT;                                       
   7b8c6:	202e fff8      	movel %fp@(-8),%d0                          
   7b8ca:	4fef 000c      	lea %sp@(12),%sp                            
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   7b8ce:	4cee 040c ffec 	moveml %fp@(-20),%d2-%d3/%a2                
   7b8d4:	4e5e           	unlk %fp                                    
   7b8d6:	4e75           	rts                                         
        _Thread_Enable_dispatch();                                    
        return RTEMS_NOT_OWNER_OF_RESOURCE;                           
      }                                                               
                                                                      
      if ( length == RTEMS_PERIOD_STATUS ) {                          
        switch ( the_period->state ) {                                
   7b8d8:	202a 0038      	movel %a2@(56),%d0                          
   7b8dc:	7204           	moveq #4,%d1                                
   7b8de:	b280           	cmpl %d0,%d1                                
   7b8e0:	6400 009c      	bccw 7b97e <rtems_rate_monotonic_period+0x1ce>
   7b8e4:	4280           	clrl %d0                                    <== NOT EXECUTED
          case RATE_MONOTONIC_ACTIVE:                                 
          default:              /* unreached -- only to remove warnings */
            return_value = RTEMS_SUCCESSFUL;                          
            break;                                                    
        }                                                             
        _Thread_Enable_dispatch();                                    
   7b8e6:	2d40 fff8      	movel %d0,%fp@(-8)                          <== NOT EXECUTED
   7b8ea:	4eb9 0004 cf38 	jsr 4cf38 <_Thread_Enable_dispatch>         <== NOT EXECUTED
        return( return_value );                                       
   7b8f0:	202e fff8      	movel %fp@(-8),%d0                          <== NOT EXECUTED
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   7b8f4:	4cee 040c ffec 	moveml %fp@(-20),%d2-%d3/%a2                
   7b8fa:	4e5e           	unlk %fp                                    
   7b8fc:	4e75           	rts                                         
        case RATE_MONOTONIC_ACTIVE:                                   
                                                                      
          /*                                                          
           *  Update statistics from the concluding period.           
           */                                                         
          _Rate_monotonic_Update_statistics( the_period );            
   7b8fe:	2f0a           	movel %a2,%sp@-                             
   7b900:	4eb9 0007 b696 	jsr 7b696 <_Rate_monotonic_Update_statistics>
           *  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;       
          the_period->next_length = length;                           
   7b906:	242e 000c      	movel %fp@(12),%d2                          
          /*                                                          
           *  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;       
   7b90a:	7001           	moveq #1,%d0                                
          the_period->next_length = length;                           
   7b90c:	2542 003c      	movel %d2,%a2@(60)                          
          /*                                                          
           *  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;       
   7b910:	2540 0038      	movel %d0,%a2@(56)                          
          the_period->next_length = length;                           
                                                                      
          _ISR_Enable( level );                                       
   7b914:	46c3           	movew %d3,%sr                               
                                                                      
          _Thread_Executing->Wait.id = the_period->Object.id;         
   7b916:	2079 000a 6b46 	moveal a6b46 <_Thread_Executing>,%a0        
   7b91c:	216a 0008 0020 	movel %a2@(8),%a0@(32)                      
          _Thread_Set_state( _Thread_Executing, STATES_WAITING_FOR_PERIOD );
   7b922:	4878 4000      	pea 4000 <D_MAX_EXP+0x3801>                 
   7b926:	2f08           	movel %a0,%sp@-                             
   7b928:	4eb9 0004 d89c 	jsr 4d89c <_Thread_Set_state>               
                                                                      
          /*                                                          
           *  Did the watchdog timer expire while we were actually blocking
           *  on it?                                                  
           */                                                         
          _ISR_Disable( level );                                      
   7b92e:	203c 0000 0700 	movel #1792,%d0                             
   7b934:	40c1           	movew %sr,%d1                               
   7b936:	8081           	orl %d1,%d0                                 
   7b938:	46c0           	movew %d0,%sr                               
            local_state = the_period->state;                          
            the_period->state = RATE_MONOTONIC_ACTIVE;                
   7b93a:	7402           	moveq #2,%d2                                
          /*                                                          
           *  Did the watchdog timer expire while we were actually blocking
           *  on it?                                                  
           */                                                         
          _ISR_Disable( level );                                      
            local_state = the_period->state;                          
   7b93c:	202a 0038      	movel %a2@(56),%d0                          
            the_period->state = RATE_MONOTONIC_ACTIVE;                
   7b940:	2542 0038      	movel %d2,%a2@(56)                          
          _ISR_Enable( level );                                       
   7b944:	46c1           	movew %d1,%sr                               
                                                                      
          /*                                                          
           *  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 ) 
   7b946:	7203           	moveq #3,%d1                                
   7b948:	4fef 000c      	lea %sp@(12),%sp                            
   7b94c:	b280           	cmpl %d0,%d1                                
   7b94e:	6712           	beqs 7b962 <rtems_rate_monotonic_period+0x1b2>
            _Thread_Clear_state( _Thread_Executing, STATES_WAITING_FOR_PERIOD );
                                                                      
          _Thread_Enable_dispatch();                                  
   7b950:	4eb9 0004 cf38 	jsr 4cf38 <_Thread_Enable_dispatch>         
   7b956:	4280           	clrl %d0                                    
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   7b958:	4cee 040c ffec 	moveml %fp@(-20),%d2-%d3/%a2                
   7b95e:	4e5e           	unlk %fp                                    
   7b960:	4e75           	rts                                         
          /*                                                          
           *  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 ) 
            _Thread_Clear_state( _Thread_Executing, STATES_WAITING_FOR_PERIOD );
   7b962:	4878 4000      	pea 4000 <D_MAX_EXP+0x3801>                 
   7b966:	2f39 000a 6b46 	movel a6b46 <_Thread_Executing>,%sp@-       
   7b96c:	4eb9 0004 cb64 	jsr 4cb64 <_Thread_Clear_state>             
   7b972:	508f           	addql #8,%sp                                
                                                                      
          _Thread_Enable_dispatch();                                  
   7b974:	4eb9 0004 cf38 	jsr 4cf38 <_Thread_Enable_dispatch>         
   7b97a:	4280           	clrl %d0                                    
   7b97c:	60da           	bras 7b958 <rtems_rate_monotonic_period+0x1a8>
        _Thread_Enable_dispatch();                                    
        return RTEMS_NOT_OWNER_OF_RESOURCE;                           
      }                                                               
                                                                      
      if ( length == RTEMS_PERIOD_STATUS ) {                          
        switch ( the_period->state ) {                                
   7b97e:	41f9 000a 0ac0 	lea a0ac0 <CSWTCH.43>,%a0                   
   7b984:	2030 0c00      	movel %a0@(00000000,%d0:l:4),%d0            
          case RATE_MONOTONIC_ACTIVE:                                 
          default:              /* unreached -- only to remove warnings */
            return_value = RTEMS_SUCCESSFUL;                          
            break;                                                    
        }                                                             
        _Thread_Enable_dispatch();                                    
   7b988:	2d40 fff8      	movel %d0,%fp@(-8)                          
   7b98c:	4eb9 0004 cf38 	jsr 4cf38 <_Thread_Enable_dispatch>         
        return( return_value );                                       
   7b992:	202e fff8      	movel %fp@(-8),%d0                          
   7b996:	6000 ff5c      	braw 7b8f4 <rtems_rate_monotonic_period+0x144>
	...                                                                  
                                                                      
00069e48 <rtems_rate_monotonic_report_statistics_with_plugin>:        
 */                                                                   
void rtems_rate_monotonic_report_statistics_with_plugin(              
  void                  *context,                                     
  rtems_printk_plugin_t  print                                        
)                                                                     
{                                                                     
   69e48:	4e56 ff78      	linkw %fp,#-136                             
   69e4c:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 
   69e50:	262e 0008      	movel %fp@(8),%d3                           
   69e54:	246e 000c      	moveal %fp@(12),%a2                         
  rtems_id                               id;                          
  rtems_rate_monotonic_period_statistics the_stats;                   
  rtems_rate_monotonic_period_status     the_status;                  
  char                                   name[5];                     
                                                                      
  if ( !print )                                                       
   69e58:	4a8a           	tstl %a2                                    
   69e5a:	6700 0082      	beqw 69ede <rtems_rate_monotonic_report_statistics_with_plugin+0x96>
    return;                                                           
                                                                      
  (*print)( context, "Period information by period\n" );              
   69e5e:	4879 0009 d696 	pea 9d696 <_TOD_Days_per_month+0x68>        
   69e64:	2f03           	movel %d3,%sp@-                             
   69e66:	4e92           	jsr %a2@                                    
  #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                          
    (*print)( context, "--- CPU times are in seconds ---\n" );        
   69e68:	4879 0009 d6b4 	pea 9d6b4 <_TOD_Days_per_month+0x86>        
   69e6e:	2f03           	movel %d3,%sp@-                             
   69e70:	4e92           	jsr %a2@                                    
    (*print)( context, "--- Wall times are in seconds ---\n" );       
   69e72:	4879 0009 d6d6 	pea 9d6d6 <_TOD_Days_per_month+0xa8>        
   69e78:	2f03           	movel %d3,%sp@-                             
   69e7a:	4e92           	jsr %a2@                                    
  Be sure to test the various cases.                                  
  (*print)( context,"\                                                
1234567890123456789012345678901234567890123456789012345678901234567890123456789\
\n");                                                                 
*/                                                                    
  (*print)( context, "   ID     OWNER COUNT MISSED     "              
   69e7c:	4879 0009 d6f9 	pea 9d6f9 <_TOD_Days_per_month+0xcb>        
   69e82:	2f03           	movel %d3,%sp@-                             
   69e84:	4e92           	jsr %a2@                                    
       #ifndef __RTEMS_USE_TICKS_FOR_STATISTICS__                     
          "          "                                                
       #endif                                                         
          "   WALL TIME\n"                                            
  );                                                                  
  (*print)( context, "                               "                
   69e86:	4fef 001c      	lea %sp@(28),%sp                            
   69e8a:	2ebc 0009 d744 	movel #644932,%sp@                          
   69e90:	2f03           	movel %d3,%sp@-                             
   69e92:	4e92           	jsr %a2@                                    
                                                                      
  /*                                                                  
   * 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 ;                   
   69e94:	2439 000a 7536 	movel a7536 <_Rate_monotonic_Information+0x6>,%d2
   69e9a:	508f           	addql #8,%sp                                
   69e9c:	b4b9 000a 753a 	cmpl a753a <_Rate_monotonic_Information+0xa>,%d2
   69ea2:	623a           	bhis 69ede <rtems_rate_monotonic_report_statistics_with_plugin+0x96>
   69ea4:	280e           	movel %fp,%d4                               
    #if defined(RTEMS_DEBUG)                                          
      if ( status != RTEMS_SUCCESSFUL )                               
        continue;                                                     
    #endif                                                            
                                                                      
    rtems_object_get_name( the_status.owner, sizeof(name), name );    
   69ea6:	2a0e           	movel %fp,%d5                               
   69ea8:	0684 ffff ffa2 	addil #-94,%d4                              
   69eae:	47f9 0007 b3e0 	lea 7b3e0 <rtems_rate_monotonic_get_statistics>,%a3
    status = rtems_rate_monotonic_get_statistics( id, &the_stats );   
    if ( status != RTEMS_SUCCESSFUL )                                 
      continue;                                                       
                                                                      
    /* If the above passed, so should this but check it anyway */     
    status = rtems_rate_monotonic_get_status( id, &the_status );      
   69eb4:	4bf9 0007 b4a0 	lea 7b4a0 <rtems_rate_monotonic_get_status>,%a5
    #if defined(RTEMS_DEBUG)                                          
      if ( status != RTEMS_SUCCESSFUL )                               
        continue;                                                     
    #endif                                                            
                                                                      
    rtems_object_get_name( the_status.owner, sizeof(name), name );    
   69eba:	5b85           	subql #5,%d5                                
   69ebc:	49f9 0004 a93c 	lea 4a93c <rtems_object_get_name>,%a4       
      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 );
   69ec2:	2e3c 0006 b69c 	movel #439964,%d7                           
   * 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++ ) {                                                      
    status = rtems_rate_monotonic_get_statistics( id, &the_stats );   
   69ec8:	2f04           	movel %d4,%sp@-                             
   69eca:	2f02           	movel %d2,%sp@-                             
   69ecc:	4e93           	jsr %a3@                                    
    if ( status != RTEMS_SUCCESSFUL )                                 
   69ece:	508f           	addql #8,%sp                                
   69ed0:	4a80           	tstl %d0                                    
   69ed2:	6714           	beqs 69ee8 <rtems_rate_monotonic_report_statistics_with_plugin+0xa0>
   * 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++ ) {                                                      
   69ed4:	5282           	addql #1,%d2                                
                                                                      
  /*                                                                  
   * 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 ;                   
   69ed6:	b4b9 000a 753a 	cmpl a753a <_Rate_monotonic_Information+0xa>,%d2
   69edc:	63ea           	blss 69ec8 <rtems_rate_monotonic_report_statistics_with_plugin+0x80>
        the_stats.min_wall_time, the_stats.max_wall_time, ival_wall, fval_wall
      );                                                              
    #endif                                                            
    }                                                                 
  }                                                                   
}                                                                     
   69ede:	4cee 3cfc ff78 	moveml %fp@(-136),%d2-%d7/%a2-%a5           
   69ee4:	4e5e           	unlk %fp                                    
   69ee6:	4e75           	rts                                         
    status = rtems_rate_monotonic_get_statistics( id, &the_stats );   
    if ( status != RTEMS_SUCCESSFUL )                                 
      continue;                                                       
                                                                      
    /* If the above passed, so should this but check it anyway */     
    status = rtems_rate_monotonic_get_status( id, &the_status );      
   69ee8:	486e ffda      	pea %fp@(-38)                               
   69eec:	2f02           	movel %d2,%sp@-                             
   69eee:	4e95           	jsr %a5@                                    
    #if defined(RTEMS_DEBUG)                                          
      if ( status != RTEMS_SUCCESSFUL )                               
        continue;                                                     
    #endif                                                            
                                                                      
    rtems_object_get_name( the_status.owner, sizeof(name), name );    
   69ef0:	2f05           	movel %d5,%sp@-                             
   69ef2:	4878 0005      	pea 5 <COMPARE>                             
   69ef6:	2f2e ffda      	movel %fp@(-38),%sp@-                       
   69efa:	4e94           	jsr %a4@                                    
                                                                      
    /*                                                                
     *  Print part of report line that is not dependent on granularity
     */                                                               
    (*print)( context,                                                
   69efc:	2f2e ffa6      	movel %fp@(-90),%sp@-                       
   69f00:	2f2e ffa2      	movel %fp@(-94),%sp@-                       
   69f04:	2f05           	movel %d5,%sp@-                             
   69f06:	2f02           	movel %d2,%sp@-                             
   69f08:	4879 0009 d790 	pea 9d790 <_TOD_Days_per_month+0x162>       
   69f0e:	2f03           	movel %d3,%sp@-                             
   69f10:	4e92           	jsr %a2@                                    
    );                                                                
                                                                      
    /*                                                                
     *  If the count is zero, don't print statistics                  
     */                                                               
    if (the_stats.count == 0) {                                       
   69f12:	202e ffa2      	movel %fp@(-94),%d0                         
   69f16:	4fef 002c      	lea %sp@(44),%sp                            
   69f1a:	6618           	bnes 69f34 <rtems_rate_monotonic_report_statistics_with_plugin+0xec>
      (*print)( context, "\n" );                                      
   69f1c:	4879 0009 ef87 	pea 9ef87 <__FUNCTION__.5975+0x5d>          
   * 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++ ) {                                                      
   69f22:	5282           	addql #1,%d2                                
                                                                      
    /*                                                                
     *  If the count is zero, don't print statistics                  
     */                                                               
    if (the_stats.count == 0) {                                       
      (*print)( context, "\n" );                                      
   69f24:	2f03           	movel %d3,%sp@-                             
   69f26:	4e92           	jsr %a2@                                    
      continue;                                                       
   69f28:	508f           	addql #8,%sp                                
                                                                      
  /*                                                                  
   * 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 ;                   
   69f2a:	b4b9 000a 753a 	cmpl a753a <_Rate_monotonic_Information+0xa>,%d2
   69f30:	6396           	blss 69ec8 <rtems_rate_monotonic_report_statistics_with_plugin+0x80>
   69f32:	60aa           	bras 69ede <rtems_rate_monotonic_report_statistics_with_plugin+0x96><== 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 );
   69f34:	486e fff2      	pea %fp@(-14)                               
   69f38:	2047           	moveal %d7,%a0                              
   * 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++ ) {                                                      
   69f3a:	5282           	addql #1,%d2                                
      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 );
   69f3c:	2f00           	movel %d0,%sp@-                             
   69f3e:	486e ffba      	pea %fp@(-70)                               
   69f42:	4e90           	jsr %a0@                                    
      (*print)( context,                                              
   69f44:	202e fff6      	movel %fp@(-10),%d0                         
   69f48:	223c 0000 03e8 	movel #1000,%d1                             
   69f4e:	4c41 0800      	remsl %d1,%d0,%d0                           
   69f52:	2c2e ffb6      	movel %fp@(-74),%d6                         
   69f56:	2f00           	movel %d0,%sp@-                             
   69f58:	2001           	movel %d1,%d0                               
   69f5a:	2f2e fff2      	movel %fp@(-14),%sp@-                       
   69f5e:	4c40 6806      	remsl %d0,%d6,%d6                           
   69f62:	202e ffae      	movel %fp@(-82),%d0                         
   69f66:	2246           	moveal %d6,%a1                              
   69f68:	223c 0000 03e8 	movel #1000,%d1                             
   69f6e:	2f09           	movel %a1,%sp@-                             
   69f70:	2f2e ffb2      	movel %fp@(-78),%sp@-                       
   69f74:	4c41 0800      	remsl %d1,%d0,%d0                           
      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);
      (*print)( context,                                              
   69f78:	2c3c 0000 03e8 	movel #1000,%d6                             
      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 );
      (*print)( context,                                              
   69f7e:	2f00           	movel %d0,%sp@-                             
   69f80:	2f2e ffaa      	movel %fp@(-86),%sp@-                       
   69f84:	4879 0009 d7a7 	pea 9d7a7 <_TOD_Days_per_month+0x179>       
   69f8a:	2f03           	movel %d3,%sp@-                             
   69f8c:	4e92           	jsr %a2@                                    
      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);
   69f8e:	4fef 002c      	lea %sp@(44),%sp                            
   69f92:	2047           	moveal %d7,%a0                              
   69f94:	486e fff2      	pea %fp@(-14)                               
   69f98:	2f2e ffa2      	movel %fp@(-94),%sp@-                       
   69f9c:	486e ffd2      	pea %fp@(-46)                               
   69fa0:	4e90           	jsr %a0@                                    
      (*print)( context,                                              
   69fa2:	202e fff6      	movel %fp@(-10),%d0                         
   69fa6:	4c46 0800      	remsl %d6,%d0,%d0                           
   69faa:	222e ffce      	movel %fp@(-50),%d1                         
   69fae:	2f00           	movel %d0,%sp@-                             
   69fb0:	2f2e fff2      	movel %fp@(-14),%sp@-                       
   69fb4:	4c46 1801      	remsl %d6,%d1,%d1                           
   69fb8:	202e ffc6      	movel %fp@(-58),%d0                         
   69fbc:	2241           	moveal %d1,%a1                              
   69fbe:	2f09           	movel %a1,%sp@-                             
   69fc0:	2f2e ffca      	movel %fp@(-54),%sp@-                       
   69fc4:	4c46 0800      	remsl %d6,%d0,%d0                           
   69fc8:	2f00           	movel %d0,%sp@-                             
   69fca:	2f2e ffc2      	movel %fp@(-62),%sp@-                       
   69fce:	4879 0009 d7c6 	pea 9d7c6 <_TOD_Days_per_month+0x198>       
   69fd4:	2f03           	movel %d3,%sp@-                             
   69fd6:	4e92           	jsr %a2@                                    
   69fd8:	4fef 002c      	lea %sp@(44),%sp                            
                                                                      
  /*                                                                  
   * 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 ;                   
   69fdc:	b4b9 000a 753a 	cmpl a753a <_Rate_monotonic_Information+0xa>,%d2
   69fe2:	6300 fee4      	blsw 69ec8 <rtems_rate_monotonic_report_statistics_with_plugin+0x80>
   69fe6:	6000 fef6      	braw 69ede <rtems_rate_monotonic_report_statistics_with_plugin+0x96><== NOT EXECUTED
                                                                      
0006a004 <rtems_rate_monotonic_reset_all_statistics>:                 
                                                                      
/*                                                                    
 *  rtems_rate_monotonic_reset_all_statistics                         
 */                                                                   
void rtems_rate_monotonic_reset_all_statistics( void )                
{                                                                     
   6a004:	4e56 0000      	linkw %fp,#0                                
   6a008:	2039 000a 6a8c 	movel a6a8c <_Thread_Dispatch_disable_level>,%d0
   6a00e:	5280           	addql #1,%d0                                
   6a010:	2f0a           	movel %a2,%sp@-                             
   6a012:	23c0 000a 6a8c 	movel %d0,a6a8c <_Thread_Dispatch_disable_level>
   6a018:	2f02           	movel %d2,%sp@-                             
                                                                      
    /*                                                                
     * 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 ;                 
   6a01a:	2439 000a 7536 	movel a7536 <_Rate_monotonic_Information+0x6>,%d2
   6a020:	b4b9 000a 753a 	cmpl a753a <_Rate_monotonic_Information+0xa>,%d2
   6a026:	6216           	bhis 6a03e <rtems_rate_monotonic_reset_all_statistics+0x3a>
   6a028:	45f9 0006 a050 	lea 6a050 <rtems_rate_monotonic_reset_statistics>,%a2
          id <= _Rate_monotonic_Information.maximum_id ;              
          id++ ) {                                                    
      status = rtems_rate_monotonic_reset_statistics( id );           
   6a02e:	2f02           	movel %d2,%sp@-                             
     * 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++ ) {                                                    
   6a030:	5282           	addql #1,%d2                                
      status = rtems_rate_monotonic_reset_statistics( id );           
   6a032:	4e92           	jsr %a2@                                    
                                                                      
    /*                                                                
     * 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 ;                 
   6a034:	588f           	addql #4,%sp                                
   6a036:	b4b9 000a 753a 	cmpl a753a <_Rate_monotonic_Information+0xa>,%d2
   6a03c:	63f0           	blss 6a02e <rtems_rate_monotonic_reset_all_statistics+0x2a>
                                                                      
  /*                                                                  
   *  Done so exit thread dispatching disabled critical section.      
   */                                                                 
  _Thread_Enable_dispatch();                                          
}                                                                     
   6a03e:	242e fff8      	movel %fp@(-8),%d2                          
   6a042:	246e fffc      	moveal %fp@(-4),%a2                         
   6a046:	4e5e           	unlk %fp                                    
    }                                                                 
                                                                      
  /*                                                                  
   *  Done so exit thread dispatching disabled critical section.      
   */                                                                 
  _Thread_Enable_dispatch();                                          
   6a048:	4ef9 0004 cf38 	jmp 4cf38 <_Thread_Enable_dispatch>         
	...                                                                  
                                                                      
00057468 <rtems_region_create>:                                       
  uintptr_t           length,                                         
  uintptr_t           page_size,                                      
  rtems_attribute     attribute_set,                                  
  rtems_id           *id                                              
)                                                                     
{                                                                     
   57468:	4e56 ffec      	linkw %fp,#-20                              
   5746c:	48d7 0c0c      	moveml %d2-%d3/%a2-%a3,%sp@                 
   57470:	262e 0008      	movel %fp@(8),%d3                           
   57474:	242e 000c      	movel %fp@(12),%d2                          
   57478:	246e 001c      	moveal %fp@(28),%a2                         
  rtems_status_code  return_status;                                   
  Region_Control    *the_region;                                      
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
   5747c:	4a83           	tstl %d3                                    
   5747e:	6700 0096      	beqw 57516 <rtems_region_create+0xae>       
    return RTEMS_INVALID_NAME;                                        
                                                                      
  if ( !starting_address )                                            
   57482:	4a82           	tstl %d2                                    
   57484:	670a           	beqs 57490 <rtems_region_create+0x28>       
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !id )                                                          
   57486:	4a8a           	tstl %a2                                    
   57488:	6706           	beqs 57490 <rtems_region_create+0x28>       
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !_Addresses_Is_aligned( starting_address ) )                   
   5748a:	7003           	moveq #3,%d0                                
   5748c:	c082           	andl %d2,%d0                                
   5748e:	670c           	beqs 5749c <rtems_region_create+0x34>       
        return_status = RTEMS_SUCCESSFUL;                             
      }                                                               
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
  return return_status;                                               
   57490:	7009           	moveq #9,%d0                                
}                                                                     
   57492:	4cee 0c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a3            
   57498:	4e5e           	unlk %fp                                    
   5749a:	4e75           	rts                                         
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !_Addresses_Is_aligned( starting_address ) )                   
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  _RTEMS_Lock_allocator();                      /* to prevent deletion */
   5749c:	2f39 0007 e87e 	movel 7e87e <_RTEMS_Allocator_Mutex>,%sp@-  
   574a2:	4eb9 0005 9e3c 	jsr 59e3c <_API_Mutex_Lock>                 
 *  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 );
   574a8:	4879 0007 e6ca 	pea 7e6ca <_Region_Information>             
   574ae:	4eb9 0005 b4cc 	jsr 5b4cc <_Objects_Allocate>               
                                                                      
    the_region = _Region_Allocate();                                  
                                                                      
    if ( !the_region )                                                
   574b4:	508f           	addql #8,%sp                                
   574b6:	2640           	moveal %d0,%a3                              
   574b8:	4a80           	tstl %d0                                    
   574ba:	6766           	beqs 57522 <rtems_region_create+0xba>       
      return_status = RTEMS_TOO_MANY;                                 
                                                                      
    else {                                                            
                                                                      
      the_region->maximum_segment_size = _Heap_Initialize(            
   574bc:	2f2e 0014      	movel %fp@(20),%sp@-                        
   574c0:	2f2e 0010      	movel %fp@(16),%sp@-                        
   574c4:	2f02           	movel %d2,%sp@-                             
   574c6:	486b 0068      	pea %a3@(104)                               
   574ca:	4eb9 0005 af50 	jsr 5af50 <_Heap_Initialize>                
        &the_region->Memory, starting_address, length, page_size      
      );                                                              
                                                                      
      if ( !the_region->maximum_segment_size ) {                      
   574d0:	4fef 0010      	lea %sp@(16),%sp                            
    if ( !the_region )                                                
      return_status = RTEMS_TOO_MANY;                                 
                                                                      
    else {                                                            
                                                                      
      the_region->maximum_segment_size = _Heap_Initialize(            
   574d4:	2740 005c      	movel %d0,%a3@(92)                          
        &the_region->Memory, starting_address, length, page_size      
      );                                                              
                                                                      
      if ( !the_region->maximum_segment_size ) {                      
   574d8:	6662           	bnes 5753c <rtems_region_create+0xd4>       
 */                                                                   
RTEMS_INLINE_ROUTINE void _Region_Free (                              
  Region_Control *the_region                                          
)                                                                     
{                                                                     
  _Objects_Free( &_Region_Information, &the_region->Object );         
   574da:	2f0b           	movel %a3,%sp@-                             
   574dc:	4879 0007 e6ca 	pea 7e6ca <_Region_Information>             
   574e2:	103c 0008      	moveb #8,%d0                                
   574e6:	2d40 fffc      	movel %d0,%fp@(-4)                          
   574ea:	4eb9 0005 b804 	jsr 5b804 <_Objects_Free>                   
   574f0:	202e fffc      	movel %fp@(-4),%d0                          
   574f4:	508f           	addql #8,%sp                                
        *id = the_region->Object.id;                                  
        return_status = RTEMS_SUCCESSFUL;                             
      }                                                               
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   574f6:	2f39 0007 e87e 	movel 7e87e <_RTEMS_Allocator_Mutex>,%sp@-  
   574fc:	2d40 fffc      	movel %d0,%fp@(-4)                          
   57500:	4eb9 0005 9e9c 	jsr 59e9c <_API_Mutex_Unlock>               
  return return_status;                                               
   57506:	202e fffc      	movel %fp@(-4),%d0                          
   5750a:	588f           	addql #4,%sp                                
}                                                                     
   5750c:	4cee 0c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a3            
   57512:	4e5e           	unlk %fp                                    
   57514:	4e75           	rts                                         
)                                                                     
{                                                                     
  rtems_status_code  return_status;                                   
  Region_Control    *the_region;                                      
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
   57516:	7003           	moveq #3,%d0                                
      }                                                               
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
  return return_status;                                               
}                                                                     
   57518:	4cee 0c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a3            
   5751e:	4e5e           	unlk %fp                                    
   57520:	4e75           	rts                                         
        *id = the_region->Object.id;                                  
        return_status = RTEMS_SUCCESSFUL;                             
      }                                                               
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   57522:	2f39 0007 e87e 	movel 7e87e <_RTEMS_Allocator_Mutex>,%sp@-  
                                                                      
  _RTEMS_Lock_allocator();                      /* to prevent deletion */
                                                                      
    the_region = _Region_Allocate();                                  
                                                                      
    if ( !the_region )                                                
   57528:	7005           	moveq #5,%d0                                
        *id = the_region->Object.id;                                  
        return_status = RTEMS_SUCCESSFUL;                             
      }                                                               
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   5752a:	2d40 fffc      	movel %d0,%fp@(-4)                          
   5752e:	4eb9 0005 9e9c 	jsr 59e9c <_API_Mutex_Unlock>               
  return return_status;                                               
   57534:	202e fffc      	movel %fp@(-4),%d0                          
   57538:	588f           	addql #4,%sp                                
   5753a:	60d0           	bras 5750c <rtems_region_create+0xa4>       
        return_status = RTEMS_INVALID_SIZE;                           
      }                                                               
                                                                      
      else {                                                          
                                                                      
        the_region->starting_address      = starting_address;         
   5753c:	2742 0050      	movel %d2,%a3@(80)                          
        the_region->length                = length;                   
        the_region->page_size             = page_size;                
        the_region->attribute_set         = attribute_set;            
        the_region->number_of_used_blocks = 0;                        
                                                                      
        _Thread_queue_Initialize(                                     
   57540:	222e 0018      	movel %fp@(24),%d1                          
      }                                                               
                                                                      
      else {                                                          
                                                                      
        the_region->starting_address      = starting_address;         
        the_region->length                = length;                   
   57544:	202e 0010      	movel %fp@(16),%d0                          
        the_region->page_size             = page_size;                
        the_region->attribute_set         = attribute_set;            
        the_region->number_of_used_blocks = 0;                        
                                                                      
        _Thread_queue_Initialize(                                     
   57548:	e489           	lsrl #2,%d1                                 
                                                                      
      else {                                                          
                                                                      
        the_region->starting_address      = starting_address;         
        the_region->length                = length;                   
        the_region->page_size             = page_size;                
   5754a:	242e 0014      	movel %fp@(20),%d2                          
        the_region->attribute_set         = attribute_set;            
   5754e:	206e 0018      	moveal %fp@(24),%a0                         
      }                                                               
                                                                      
      else {                                                          
                                                                      
        the_region->starting_address      = starting_address;         
        the_region->length                = length;                   
   57552:	2740 0054      	movel %d0,%a3@(84)                          
          &_Region_Information,                                       
          &the_region->Object,                                        
          (Objects_Name) name                                         
        );                                                            
                                                                      
        *id = the_region->Object.id;                                  
   57556:	4280           	clrl %d0                                    
                                                                      
      else {                                                          
                                                                      
        the_region->starting_address      = starting_address;         
        the_region->length                = length;                   
        the_region->page_size             = page_size;                
   57558:	2742 0058      	movel %d2,%a3@(88)                          
        the_region->attribute_set         = attribute_set;            
        the_region->number_of_used_blocks = 0;                        
                                                                      
        _Thread_queue_Initialize(                                     
   5755c:	7401           	moveq #1,%d2                                
      else {                                                          
                                                                      
        the_region->starting_address      = starting_address;         
        the_region->length                = length;                   
        the_region->page_size             = page_size;                
        the_region->attribute_set         = attribute_set;            
   5755e:	2748 0060      	movel %a0,%a3@(96)                          
        the_region->number_of_used_blocks = 0;                        
                                                                      
        _Thread_queue_Initialize(                                     
   57562:	c481           	andl %d1,%d2                                
                                                                      
        the_region->starting_address      = starting_address;         
        the_region->length                = length;                   
        the_region->page_size             = page_size;                
        the_region->attribute_set         = attribute_set;            
        the_region->number_of_used_blocks = 0;                        
   57564:	42ab 0064      	clrl %a3@(100)                              
                                                                      
        _Thread_queue_Initialize(                                     
   57568:	4878 0006      	pea 6 <EXTENDSFDF>                          
   5756c:	4878 0040      	pea 40 <DBL_MANT_DIG+0xb>                   
   57570:	2f02           	movel %d2,%sp@-                             
   57572:	486b 0010      	pea %a3@(16)                                
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   57576:	4282           	clrl %d2                                    
   57578:	2d40 fffc      	movel %d0,%fp@(-4)                          
   5757c:	4eb9 0005 cac8 	jsr 5cac8 <_Thread_queue_Initialize>        
   57582:	222b 0008      	movel %a3@(8),%d1                           
          &_Region_Information,                                       
          &the_region->Object,                                        
          (Objects_Name) name                                         
        );                                                            
                                                                      
        *id = the_region->Object.id;                                  
   57586:	4fef 0010      	lea %sp@(16),%sp                            
   5758a:	2079 0007 e6e2 	moveal 7e6e2 <_Region_Information+0x18>,%a0 
   57590:	3401           	movew %d1,%d2                               
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
    the_object                                                        
  );                                                                  
                                                                      
  the_object->name = name;                                            
   57592:	2743 000c      	movel %d3,%a3@(12)                          
   57596:	202e fffc      	movel %fp@(-4),%d0                          
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   5759a:	218b 2c00      	movel %a3,%a0@(00000000,%d2:l:4)            
   5759e:	2481           	movel %d1,%a2@                              
        return_status = RTEMS_SUCCESSFUL;                             
      }                                                               
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   575a0:	2f39 0007 e87e 	movel 7e87e <_RTEMS_Allocator_Mutex>,%sp@-  
   575a6:	2d40 fffc      	movel %d0,%fp@(-4)                          
   575aa:	4eb9 0005 9e9c 	jsr 59e9c <_API_Mutex_Unlock>               
  return return_status;                                               
   575b0:	202e fffc      	movel %fp@(-4),%d0                          
   575b4:	588f           	addql #4,%sp                                
   575b6:	6000 ff54      	braw 5750c <rtems_region_create+0xa4>       
	...                                                                  
                                                                      
0005766c <rtems_region_extend>:                                       
rtems_status_code rtems_region_extend(                                
  rtems_id   id,                                                      
  void      *starting_address,                                        
  uintptr_t  length                                                   
)                                                                     
{                                                                     
   5766c:	4e56 fff8      	linkw %fp,#-8                               
   57670:	2f0a           	movel %a2,%sp@-                             
   57672:	2f02           	movel %d2,%sp@-                             
   57674:	242e 000c      	movel %fp@(12),%d2                          
  Heap_Extend_status  heap_status;                                    
  Objects_Locations   location;                                       
  rtems_status_code   return_status;                                  
  Region_Control     *the_region;                                     
                                                                      
  if ( !starting_address )                                            
   57678:	677e           	beqs 576f8 <rtems_region_extend+0x8c>       
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  _RTEMS_Lock_allocator();                      /* to prevent deletion */
   5767a:	2f39 0007 e87e 	movel 7e87e <_RTEMS_Allocator_Mutex>,%sp@-  
   57680:	4eb9 0005 9e3c 	jsr 59e3c <_API_Mutex_Lock>                 
RTEMS_INLINE_ROUTINE Region_Control *_Region_Get (                    
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Region_Control *)                                           
   57686:	486e fff8      	pea %fp@(-8)                                
   5768a:	2f2e 0008      	movel %fp@(8),%sp@-                         
   5768e:	4879 0007 e6ca 	pea 7e6ca <_Region_Information>             
   57694:	4eb9 0005 b968 	jsr 5b968 <_Objects_Get_no_protection>      
                                                                      
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
   5769a:	4fef 0010      	lea %sp@(16),%sp                            
   5769e:	2440           	moveal %d0,%a2                              
   576a0:	4aae fff8      	tstl %fp@(-8)                               
   576a4:	6640           	bnes 576e6 <rtems_region_extend+0x7a>       
                                                                      
      case OBJECTS_LOCAL:                                             
                                                                      
        heap_status = _Heap_Extend(                                   
   576a6:	486e fffc      	pea %fp@(-4)                                
   576aa:	2f2e 0010      	movel %fp@(16),%sp@-                        
   576ae:	2f02           	movel %d2,%sp@-                             
   576b0:	486a 0068      	pea %a2@(104)                               
   576b4:	4eb9 0005 ac40 	jsr 5ac40 <_Heap_Extend>                    
          starting_address,                                           
          length,                                                     
          &amount_extended                                            
        );                                                            
                                                                      
        if ( heap_status == HEAP_EXTEND_SUCCESSFUL ) {                
   576ba:	4fef 0010      	lea %sp@(16),%sp                            
   576be:	4a80           	tstl %d0                                    
   576c0:	6748           	beqs 5770a <rtems_region_extend+0x9e>       
          the_region->length                += amount_extended;       
          the_region->maximum_segment_size  += amount_extended;       
          return_status = RTEMS_SUCCESSFUL;                           
        } else if ( heap_status == HEAP_EXTEND_ERROR ) {              
   576c2:	7201           	moveq #1,%d1                                
   576c4:	b280           	cmpl %d0,%d1                                
   576c6:	6760           	beqs 57728 <rtems_region_extend+0xbc>       
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   576c8:	2f39 0007 e87e 	movel 7e87e <_RTEMS_Allocator_Mutex>,%sp@-  
                                                                      
        if ( heap_status == HEAP_EXTEND_SUCCESSFUL ) {                
          the_region->length                += amount_extended;       
          the_region->maximum_segment_size  += amount_extended;       
          return_status = RTEMS_SUCCESSFUL;                           
        } else if ( heap_status == HEAP_EXTEND_ERROR ) {              
   576ce:	7418           	moveq #24,%d2                               
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   576d0:	4eb9 0005 9e9c 	jsr 59e9c <_API_Mutex_Unlock>               
  return return_status;                                               
   576d6:	588f           	addql #4,%sp                                
}                                                                     
   576d8:	2002           	movel %d2,%d0                               
   576da:	242e fff0      	movel %fp@(-16),%d2                         
   576de:	246e fff4      	moveal %fp@(-12),%a2                        
   576e2:	4e5e           	unlk %fp                                    
   576e4:	4e75           	rts                                         
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   576e6:	2f39 0007 e87e 	movel 7e87e <_RTEMS_Allocator_Mutex>,%sp@-  
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  _RTEMS_Lock_allocator();                      /* to prevent deletion */
                                                                      
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
   576ec:	7404           	moveq #4,%d2                                
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   576ee:	4eb9 0005 9e9c 	jsr 59e9c <_API_Mutex_Unlock>               
  return return_status;                                               
   576f4:	588f           	addql #4,%sp                                
   576f6:	60e0           	bras 576d8 <rtems_region_extend+0x6c>       
  Heap_Extend_status  heap_status;                                    
  Objects_Locations   location;                                       
  rtems_status_code   return_status;                                  
  Region_Control     *the_region;                                     
                                                                      
  if ( !starting_address )                                            
   576f8:	143c 0009      	moveb #9,%d2                                
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
  return return_status;                                               
}                                                                     
   576fc:	2002           	movel %d2,%d0                               
   576fe:	242e fff0      	movel %fp@(-16),%d2                         
   57702:	246e fff4      	moveal %fp@(-12),%a2                        
   57706:	4e5e           	unlk %fp                                    
   57708:	4e75           	rts                                         
          length,                                                     
          &amount_extended                                            
        );                                                            
                                                                      
        if ( heap_status == HEAP_EXTEND_SUCCESSFUL ) {                
          the_region->length                += amount_extended;       
   5770a:	202e fffc      	movel %fp@(-4),%d0                          
          the_region->maximum_segment_size  += amount_extended;       
   5770e:	d1aa 005c      	addl %d0,%a2@(92)                           
   57712:	4282           	clrl %d2                                    
          length,                                                     
          &amount_extended                                            
        );                                                            
                                                                      
        if ( heap_status == HEAP_EXTEND_SUCCESSFUL ) {                
          the_region->length                += amount_extended;       
   57714:	d1aa 0054      	addl %d0,%a2@(84)                           
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   57718:	2f39 0007 e87e 	movel 7e87e <_RTEMS_Allocator_Mutex>,%sp@-  
   5771e:	4eb9 0005 9e9c 	jsr 59e9c <_API_Mutex_Unlock>               
  return return_status;                                               
   57724:	588f           	addql #4,%sp                                
   57726:	60b0           	bras 576d8 <rtems_region_extend+0x6c>       
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   57728:	2f39 0007 e87e 	movel 7e87e <_RTEMS_Allocator_Mutex>,%sp@-  
                                                                      
        if ( heap_status == HEAP_EXTEND_SUCCESSFUL ) {                
          the_region->length                += amount_extended;       
          the_region->maximum_segment_size  += amount_extended;       
          return_status = RTEMS_SUCCESSFUL;                           
        } else if ( heap_status == HEAP_EXTEND_ERROR ) {              
   5772e:	7409           	moveq #9,%d2                                
      default:                                                        
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   57730:	4eb9 0005 9e9c 	jsr 59e9c <_API_Mutex_Unlock>               
  return return_status;                                               
   57736:	588f           	addql #4,%sp                                
   57738:	609e           	bras 576d8 <rtems_region_extend+0x6c>       
	...                                                                  
                                                                      
000579c0 <rtems_region_get_segment_size>:                             
rtems_status_code rtems_region_get_segment_size(                      
  rtems_id   id,                                                      
  void      *segment,                                                 
  uintptr_t *size                                                     
)                                                                     
{                                                                     
   579c0:	4e56 fffc      	linkw %fp,#-4                               
   579c4:	2f03           	movel %d3,%sp@-                             
   579c6:	262e 0010      	movel %fp@(16),%d3                          
   579ca:	2f02           	movel %d2,%sp@-                             
   579cc:	242e 000c      	movel %fp@(12),%d2                          
  Objects_Locations        location;                                  
  rtems_status_code        return_status = RTEMS_SUCCESSFUL;          
  register Region_Control *the_region;                                
                                                                      
  if ( !segment )                                                     
   579d0:	6700 0092      	beqw 57a64 <rtems_region_get_segment_size+0xa4>
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !size )                                                        
   579d4:	4a83           	tstl %d3                                    
   579d6:	6700 008c      	beqw 57a64 <rtems_region_get_segment_size+0xa4>
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  _RTEMS_Lock_allocator();                                            
   579da:	2f39 0007 e87e 	movel 7e87e <_RTEMS_Allocator_Mutex>,%sp@-  
   579e0:	4eb9 0005 9e3c 	jsr 59e3c <_API_Mutex_Lock>                 
   579e6:	486e fffc      	pea %fp@(-4)                                
   579ea:	2f2e 0008      	movel %fp@(8),%sp@-                         
   579ee:	4879 0007 e6ca 	pea 7e6ca <_Region_Information>             
   579f4:	4eb9 0005 b968 	jsr 5b968 <_Objects_Get_no_protection>      
                                                                      
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
   579fa:	222e fffc      	movel %fp@(-4),%d1                          
   579fe:	4fef 0010      	lea %sp@(16),%sp                            
   57a02:	6636           	bnes 57a3a <rtems_region_get_segment_size+0x7a>
                                                                      
      case OBJECTS_LOCAL:                                             
        if ( !_Heap_Size_of_alloc_area( &the_region->Memory, segment, size ) )
   57a04:	2f03           	movel %d3,%sp@-                             
   57a06:	2040           	moveal %d0,%a0                              
   57a08:	2f02           	movel %d2,%sp@-                             
   57a0a:	4868 0068      	pea %a0@(104)                               
   57a0e:	4eb9 0005 b3a4 	jsr 5b3a4 <_Heap_Size_of_alloc_area>        
   57a14:	4fef 000c      	lea %sp@(12),%sp                            
   57a18:	4a00           	tstb %d0                                    
   57a1a:	6624           	bnes 57a40 <rtems_region_get_segment_size+0x80>
      case OBJECTS_ERROR:                                             
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   57a1c:	2f39 0007 e87e 	movel 7e87e <_RTEMS_Allocator_Mutex>,%sp@-  <== NOT EXECUTED
                                                                      
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
                                                                      
      case OBJECTS_LOCAL:                                             
        if ( !_Heap_Size_of_alloc_area( &the_region->Memory, segment, size ) )
   57a22:	7409           	moveq #9,%d2                                <== NOT EXECUTED
      case OBJECTS_ERROR:                                             
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   57a24:	4eb9 0005 9e9c 	jsr 59e9c <_API_Mutex_Unlock>               <== NOT EXECUTED
  return return_status;                                               
   57a2a:	588f           	addql #4,%sp                                <== NOT EXECUTED
}                                                                     
   57a2c:	2002           	movel %d2,%d0                               
   57a2e:	242e fff4      	movel %fp@(-12),%d2                         
   57a32:	262e fff8      	movel %fp@(-8),%d3                          
   57a36:	4e5e           	unlk %fp                                    
   57a38:	4e75           	rts                                         
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  _RTEMS_Lock_allocator();                                            
                                                                      
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
   57a3a:	7001           	moveq #1,%d0                                
   57a3c:	b081           	cmpl %d1,%d0                                
   57a3e:	6712           	beqs 57a52 <rtems_region_get_segment_size+0x92>
      case OBJECTS_ERROR:                                             
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   57a40:	2f39 0007 e87e 	movel 7e87e <_RTEMS_Allocator_Mutex>,%sp@-  
                                                                      
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
                                                                      
      case OBJECTS_LOCAL:                                             
        if ( !_Heap_Size_of_alloc_area( &the_region->Memory, segment, size ) )
   57a46:	4282           	clrl %d2                                    
      case OBJECTS_ERROR:                                             
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   57a48:	4eb9 0005 9e9c 	jsr 59e9c <_API_Mutex_Unlock>               
  return return_status;                                               
   57a4e:	588f           	addql #4,%sp                                
   57a50:	60da           	bras 57a2c <rtems_region_get_segment_size+0x6c>
      case OBJECTS_ERROR:                                             
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   57a52:	2f39 0007 e87e 	movel 7e87e <_RTEMS_Allocator_Mutex>,%sp@-  
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  _RTEMS_Lock_allocator();                                            
                                                                      
    the_region = _Region_Get( id, &location );                        
    switch ( location ) {                                             
   57a58:	7404           	moveq #4,%d2                                
      case OBJECTS_ERROR:                                             
        return_status = RTEMS_INVALID_ID;                             
        break;                                                        
    }                                                                 
                                                                      
  _RTEMS_Unlock_allocator();                                          
   57a5a:	4eb9 0005 9e9c 	jsr 59e9c <_API_Mutex_Unlock>               
  return return_status;                                               
   57a60:	588f           	addql #4,%sp                                
   57a62:	60c8           	bras 57a2c <rtems_region_get_segment_size+0x6c>
   57a64:	7409           	moveq #9,%d2                                
}                                                                     
   57a66:	2002           	movel %d2,%d0                               
   57a68:	242e fff4      	movel %fp@(-12),%d2                         
   57a6c:	262e fff8      	movel %fp@(-8),%d3                          
   57a70:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00045a8c <rtems_semaphore_create>:                                    
  uint32_t             count,                                         
  rtems_attribute      attribute_set,                                 
  rtems_task_priority  priority_ceiling,                              
  rtems_id            *id                                             
)                                                                     
{                                                                     
   45a8c:	4e56 ffd4      	linkw %fp,#-44                              
   45a90:	48d7 0c1c      	moveml %d2-%d4/%a2-%a3,%sp@                 
   45a94:	262e 0008      	movel %fp@(8),%d3                           
   45a98:	242e 0010      	movel %fp@(16),%d2                          
   45a9c:	246e 0018      	moveal %fp@(24),%a2                         
  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 ) )                                 
   45aa0:	4a83           	tstl %d3                                    
   45aa2:	6748           	beqs 45aec <rtems_semaphore_create+0x60>    
    return RTEMS_INVALID_NAME;                                        
                                                                      
  if ( !id )                                                          
   45aa4:	4a8a           	tstl %a2                                    
   45aa6:	6700 00ea      	beqw 45b92 <rtems_semaphore_create+0x106>   
 *    id       - semaphore id                                         
 *    RTEMS_SUCCESSFUL - if successful                                
 *    error code - if unsuccessful                                    
 */                                                                   
                                                                      
rtems_status_code rtems_semaphore_create(                             
   45aaa:	2002           	movel %d2,%d0                               
   45aac:	0280 0000 00c0 	andil #192,%d0                              
      return RTEMS_NOT_DEFINED;                                       
                                                                      
  } else                                                              
#endif                                                                
                                                                      
  if ( _Attributes_Is_inherit_priority( attribute_set ) ||            
   45ab2:	6744           	beqs 45af8 <rtems_semaphore_create+0x6c>    
              _Attributes_Is_priority_ceiling( attribute_set ) ) {    
                                                                      
    if ( ! (_Attributes_Is_binary_semaphore( attribute_set ) &&       
   45ab4:	7230           	moveq #48,%d1                               
   45ab6:	7810           	moveq #16,%d4                               
   45ab8:	c282           	andl %d2,%d1                                
   45aba:	b881           	cmpl %d1,%d4                                
   45abc:	670c           	beqs 45aca <rtems_semaphore_create+0x3e>    
      name,                                                           
      0                          /* Not used */                       
    );                                                                
#endif                                                                
  _Thread_Enable_dispatch();                                          
  return RTEMS_SUCCESSFUL;                                            
   45abe:	700b           	moveq #11,%d0                               
}                                                                     
   45ac0:	4cee 0c1c ffd4 	moveml %fp@(-44),%d2-%d4/%a2-%a3            
   45ac6:	4e5e           	unlk %fp                                    
   45ac8:	4e75           	rts                                         
#endif                                                                
                                                                      
  if ( _Attributes_Is_inherit_priority( attribute_set ) ||            
              _Attributes_Is_priority_ceiling( attribute_set ) ) {    
                                                                      
    if ( ! (_Attributes_Is_binary_semaphore( attribute_set ) &&       
   45aca:	44c2           	movew %d2,%ccr                              
   45acc:	66f0           	bnes 45abe <rtems_semaphore_create+0x32>    
            _Attributes_Is_priority( attribute_set ) ) )              
      return RTEMS_NOT_DEFINED;                                       
                                                                      
  }                                                                   
                                                                      
  if ( _Attributes_Is_inherit_priority( attribute_set ) &&            
   45ace:	0c80 0000 00c0 	cmpil #192,%d0                              
   45ad4:	67e8           	beqs 45abe <rtems_semaphore_create+0x32>    
       _Attributes_Is_priority_ceiling( attribute_set ) )             
    return RTEMS_NOT_DEFINED;                                         
                                                                      
  if ( !_Attributes_Is_counting_semaphore( attribute_set ) && ( count > 1 ) )
   45ad6:	7001           	moveq #1,%d0                                
   45ad8:	b0ae 000c      	cmpl %fp@(12),%d0                           
   45adc:	6420           	bccs 45afe <rtems_semaphore_create+0x72>    
   45ade:	103c 000a      	moveb #10,%d0                               
      0                          /* Not used */                       
    );                                                                
#endif                                                                
  _Thread_Enable_dispatch();                                          
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   45ae2:	4cee 0c1c ffd4 	moveml %fp@(-44),%d2-%d4/%a2-%a3            
   45ae8:	4e5e           	unlk %fp                                    
   45aea:	4e75           	rts                                         
  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 ) )                                 
   45aec:	7003           	moveq #3,%d0                                
      0                          /* Not used */                       
    );                                                                
#endif                                                                
  _Thread_Enable_dispatch();                                          
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   45aee:	4cee 0c1c ffd4 	moveml %fp@(-44),%d2-%d4/%a2-%a3            
   45af4:	4e5e           	unlk %fp                                    
   45af6:	4e75           	rts                                         
 */                                                                   
RTEMS_INLINE_ROUTINE bool _Attributes_Is_counting_semaphore(          
  rtems_attribute attribute_set                                       
)                                                                     
{                                                                     
  return ((attribute_set & RTEMS_SEMAPHORE_CLASS) == RTEMS_COUNTING_SEMAPHORE);
   45af8:	7830           	moveq #48,%d4                               
   45afa:	c882           	andl %d2,%d4                                
                                                                      
  if ( _Attributes_Is_inherit_priority( attribute_set ) &&            
       _Attributes_Is_priority_ceiling( attribute_set ) )             
    return RTEMS_NOT_DEFINED;                                         
                                                                      
  if ( !_Attributes_Is_counting_semaphore( attribute_set ) && ( count > 1 ) )
   45afc:	66d8           	bnes 45ad6 <rtems_semaphore_create+0x4a>    
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   45afe:	2039 0005 ef78 	movel 5ef78 <_Thread_Dispatch_disable_level>,%d0
   45b04:	5280           	addql #1,%d0                                
   45b06:	23c0 0005 ef78 	movel %d0,5ef78 <_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 );
   45b0c:	4879 0005 eeb0 	pea 5eeb0 <_Semaphore_Information>          
   45b12:	4eb9 0004 7090 	jsr 47090 <_Objects_Allocate>               
                                                                      
  _Thread_Disable_dispatch();             /* prevents deletion */     
                                                                      
  the_semaphore = _Semaphore_Allocate();                              
                                                                      
  if ( !the_semaphore ) {                                             
   45b18:	588f           	addql #4,%sp                                
   45b1a:	2640           	moveal %d0,%a3                              
   45b1c:	4a80           	tstl %d0                                    
   45b1e:	6700 00d8      	beqw 45bf8 <rtems_semaphore_create+0x16c>   
    _Thread_Enable_dispatch();                                        
    return RTEMS_TOO_MANY;                                            
  }                                                                   
#endif                                                                
                                                                      
  the_semaphore->attribute_set = attribute_set;                       
   45b22:	2742 0010      	movel %d2,%a3@(16)                          
                                                                      
  /*                                                                  
   *  Initialize it as a counting semaphore.                          
   */                                                                 
  if ( _Attributes_Is_counting_semaphore( attribute_set ) ) {         
   45b26:	4a84           	tstl %d4                                    
   45b28:	6774           	beqs 45b9e <rtems_semaphore_create+0x112>   
    /*                                                                
     *  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;    
   45b2a:	44c2           	movew %d2,%ccr                              
   45b2c:	56c0           	sne %d0                                     
   45b2e:	49c0           	extbl %d0                                   
   45b30:	5280           	addql #1,%d0                                
   45b32:	2d40 fff0      	movel %d0,%fp@(-16)                         
    else                                                              
      the_mutex_attr.discipline = CORE_MUTEX_DISCIPLINES_FIFO;        
                                                                      
    if ( _Attributes_Is_binary_semaphore( attribute_set ) ) {         
   45b36:	7010           	moveq #16,%d0                               
   45b38:	b084           	cmpl %d4,%d0                                
   45b3a:	6700 00ce      	beqw 45c0a <rtems_semaphore_create+0x17e>   
          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;
   45b3e:	7202           	moveq #2,%d1                                
      the_mutex_attr.only_owner_release = false;                      
   45b40:	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;
   45b42:	2d41 ffea      	movel %d1,%fp@(-22)                         
      the_mutex_attr.only_owner_release = false;                      
   45b46:	1d44 ffee      	moveb %d4,%fp@(-18)                         
    }                                                                 
                                                                      
    mutex_status = _CORE_mutex_Initialize(                            
   45b4a:	7001           	moveq #1,%d0                                
   45b4c:	b0ae 000c      	cmpl %fp@(12),%d0                           
   45b50:	57c0           	seq %d0                                     
   45b52:	49c0           	extbl %d0                                   
   45b54:	4480           	negl %d0                                    
   45b56:	2f00           	movel %d0,%sp@-                             
   45b58:	486e ffea      	pea %fp@(-22)                               
   45b5c:	486b 0014      	pea %a3@(20)                                
   45b60:	4eb9 0004 67dc 	jsr 467dc <_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 ) {       
   45b66:	4fef 000c      	lea %sp@(12),%sp                            
   45b6a:	7206           	moveq #6,%d1                                
   45b6c:	b280           	cmpl %d0,%d1                                
   45b6e:	665e           	bnes 45bce <rtems_semaphore_create+0x142>   
 */                                                                   
RTEMS_INLINE_ROUTINE void _Semaphore_Free (                           
  Semaphore_Control *the_semaphore                                    
)                                                                     
{                                                                     
  _Objects_Free( &_Semaphore_Information, &the_semaphore->Object );   
   45b70:	2f0b           	movel %a3,%sp@-                             
   45b72:	4879 0005 eeb0 	pea 5eeb0 <_Semaphore_Information>          
   45b78:	4eb9 0004 73c8 	jsr 473c8 <_Objects_Free>                   
      _Semaphore_Free( the_semaphore );                               
      _Thread_Enable_dispatch();                                      
   45b7e:	4eb9 0004 7dbc 	jsr 47dbc <_Thread_Enable_dispatch>         
      return RTEMS_INVALID_PRIORITY;                                  
   45b84:	508f           	addql #8,%sp                                
      (count == 1) ? CORE_MUTEX_UNLOCKED : CORE_MUTEX_LOCKED          
    );                                                                
                                                                      
    if ( mutex_status == CORE_MUTEX_STATUS_CEILING_VIOLATED ) {       
      _Semaphore_Free( the_semaphore );                               
      _Thread_Enable_dispatch();                                      
   45b86:	7013           	moveq #19,%d0                               
      0                          /* Not used */                       
    );                                                                
#endif                                                                
  _Thread_Enable_dispatch();                                          
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   45b88:	4cee 0c1c ffd4 	moveml %fp@(-44),%d2-%d4/%a2-%a3            
   45b8e:	4e5e           	unlk %fp                                    
   45b90:	4e75           	rts                                         
  CORE_mutex_Status           mutex_status;                           
                                                                      
  if ( !rtems_is_name_valid( name ) )                                 
    return RTEMS_INVALID_NAME;                                        
                                                                      
  if ( !id )                                                          
   45b92:	7009           	moveq #9,%d0                                
      0                          /* Not used */                       
    );                                                                
#endif                                                                
  _Thread_Enable_dispatch();                                          
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   45b94:	4cee 0c1c ffd4 	moveml %fp@(-44),%d2-%d4/%a2-%a3            
   45b9a:	4e5e           	unlk %fp                                    
   45b9c:	4e75           	rts                                         
     *  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(                                       
   45b9e:	2f2e 000c      	movel %fp@(12),%sp@-                        
   */                                                                 
  if ( _Attributes_Is_counting_semaphore( attribute_set ) ) {         
    /*                                                                
     *  This effectively disables limit checking.                     
     */                                                               
    the_semaphore_attr.maximum_count = 0xFFFFFFFF;                    
   45ba2:	72ff           	moveq #-1,%d1                               
     *  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(                                       
   45ba4:	486e fff8      	pea %fp@(-8)                                
   45ba8:	486b 0014      	pea %a3@(20)                                
     *  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;
   45bac:	44c2           	movew %d2,%ccr                              
   45bae:	56c0           	sne %d0                                     
   */                                                                 
  if ( _Attributes_Is_counting_semaphore( attribute_set ) ) {         
    /*                                                                
     *  This effectively disables limit checking.                     
     */                                                               
    the_semaphore_attr.maximum_count = 0xFFFFFFFF;                    
   45bb0:	2d41 fff8      	movel %d1,%fp@(-8)                          
                                                                      
    if ( _Attributes_Is_priority( attribute_set ) )                   
      the_semaphore_attr.discipline = CORE_SEMAPHORE_DISCIPLINES_PRIORITY;
   45bb4:	49c0           	extbl %d0                                   
   45bb6:	5280           	addql #1,%d0                                
      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;
   45bb8:	42ae ffea      	clrl %fp@(-22)                              
     *  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;
   45bbc:	2d40 fffc      	movel %d0,%fp@(-4)                          
                                                                      
    /*                                                                
     *  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;               
   45bc0:	42ae fff4      	clrl %fp@(-12)                              
                                                                      
    _CORE_semaphore_Initialize(                                       
   45bc4:	4eb9 0004 6b24 	jsr 46b24 <_CORE_semaphore_Initialize>      
   45bca:	4fef 000c      	lea %sp@(12),%sp                            
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   45bce:	202b 0008      	movel %a3@(8),%d0                           
   45bd2:	4281           	clrl %d1                                    
   45bd4:	2079 0005 eec8 	moveal 5eec8 <_Semaphore_Information+0x18>,%a0
   45bda:	3200           	movew %d0,%d1                               
    information,                                                      
    _Objects_Get_index( the_object->id ),                             
    the_object                                                        
  );                                                                  
                                                                      
  the_object->name = name;                                            
   45bdc:	2743 000c      	movel %d3,%a3@(12)                          
  #if defined(RTEMS_DEBUG)                                            
    if ( index > information->maximum )                               
      return;                                                         
  #endif                                                              
                                                                      
  information->local_table[ index ] = the_object;                     
   45be0:	218b 1c00      	movel %a3,%a0@(00000000,%d1:l:4)            
    &_Semaphore_Information,                                          
    &the_semaphore->Object,                                           
    (Objects_Name) name                                               
  );                                                                  
                                                                      
  *id = the_semaphore->Object.id;                                     
   45be4:	2480           	movel %d0,%a2@                              
      the_semaphore->Object.id,                                       
      name,                                                           
      0                          /* Not used */                       
    );                                                                
#endif                                                                
  _Thread_Enable_dispatch();                                          
   45be6:	4eb9 0004 7dbc 	jsr 47dbc <_Thread_Enable_dispatch>         
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   45bec:	4cee 0c1c ffd4 	moveml %fp@(-44),%d2-%d4/%a2-%a3            
      the_semaphore->Object.id,                                       
      name,                                                           
      0                          /* Not used */                       
    );                                                                
#endif                                                                
  _Thread_Enable_dispatch();                                          
   45bf2:	4280           	clrl %d0                                    
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   45bf4:	4e5e           	unlk %fp                                    
   45bf6:	4e75           	rts                                         
  _Thread_Disable_dispatch();             /* prevents deletion */     
                                                                      
  the_semaphore = _Semaphore_Allocate();                              
                                                                      
  if ( !the_semaphore ) {                                             
    _Thread_Enable_dispatch();                                        
   45bf8:	4eb9 0004 7dbc 	jsr 47dbc <_Thread_Enable_dispatch>         
   45bfe:	7005           	moveq #5,%d0                                
      0                          /* Not used */                       
    );                                                                
#endif                                                                
  _Thread_Enable_dispatch();                                          
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   45c00:	4cee 0c1c ffd4 	moveml %fp@(-44),%d2-%d4/%a2-%a3            
   45c06:	4e5e           	unlk %fp                                    
   45c08:	4e75           	rts                                         
    else                                                              
      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;
   45c0a:	42ae ffea      	clrl %fp@(-22)                              
      the_mutex_attr.only_owner_release    = false;                   
                                                                      
      if ( the_mutex_attr.discipline == CORE_MUTEX_DISCIPLINES_PRIORITY ) {
   45c0e:	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;                   
   45c10:	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;        
   45c12:	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;                   
   45c18:	1d41 ffee      	moveb %d1,%fp@(-18)                         
                                                                      
      if ( the_mutex_attr.discipline == CORE_MUTEX_DISCIPLINES_PRIORITY ) {
   45c1c:	b8ae fff0      	cmpl %fp@(-16),%d4                          
   45c20:	6600 ff28      	bnew 45b4a <rtems_semaphore_create+0xbe>    
        if ( _Attributes_Is_inherit_priority( attribute_set ) ) {     
   45c24:	0802 0006      	btst #6,%d2                                 
   45c28:	6712           	beqs 45c3c <rtems_semaphore_create+0x1b0>   
          the_mutex_attr.discipline = CORE_MUTEX_DISCIPLINES_PRIORITY_INHERIT;
   45c2a:	103c 0002      	moveb #2,%d0                                
          the_mutex_attr.only_owner_release = true;                   
   45c2e:	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;
   45c30:	2d40 fff0      	movel %d0,%fp@(-16)                         
          the_mutex_attr.only_owner_release = true;                   
   45c34:	1d41 ffee      	moveb %d1,%fp@(-18)                         
   45c38:	6000 ff10      	braw 45b4a <rtems_semaphore_create+0xbe>    
        } else if ( _Attributes_Is_priority_ceiling( attribute_set ) ) {
   45c3c:	4a02           	tstb %d2                                    
   45c3e:	6c00 ff0a      	bgew 45b4a <rtems_semaphore_create+0xbe>    
          the_mutex_attr.discipline = CORE_MUTEX_DISCIPLINES_PRIORITY_CEILING;
   45c42:	7803           	moveq #3,%d4                                
          the_mutex_attr.only_owner_release = true;                   
   45c44:	7001           	moveq #1,%d0                                
      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;
   45c46:	2d44 fff0      	movel %d4,%fp@(-16)                         
          the_mutex_attr.only_owner_release = true;                   
   45c4a:	1d40 ffee      	moveb %d0,%fp@(-18)                         
   45c4e:	6000 fefa      	braw 45b4a <rtems_semaphore_create+0xbe>    
	...                                                                  
                                                                      
00045c54 <rtems_semaphore_delete>:                                    
#endif                                                                
                                                                      
rtems_status_code rtems_semaphore_delete(                             
  rtems_id   id                                                       
)                                                                     
{                                                                     
   45c54:	4e56 fffc      	linkw %fp,#-4                               
   45c58:	2f0a           	movel %a2,%sp@-                             
RTEMS_INLINE_ROUTINE Semaphore_Control *_Semaphore_Get (              
  Objects_Id         id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (Semaphore_Control *)                                        
   45c5a:	486e fffc      	pea %fp@(-4)                                
   45c5e:	2f2e 0008      	movel %fp@(8),%sp@-                         
   45c62:	4879 0005 eeb0 	pea 5eeb0 <_Semaphore_Information>          
   45c68:	4eb9 0004 752c 	jsr 4752c <_Objects_Get>                    
  register Semaphore_Control *the_semaphore;                          
  Objects_Locations           location;                               
                                                                      
  the_semaphore = _Semaphore_Get( id, &location );                    
  switch ( location ) {                                               
   45c6e:	4fef 000c      	lea %sp@(12),%sp                            
   45c72:	2440           	moveal %d0,%a2                              
   45c74:	4aae fffc      	tstl %fp@(-4)                               
   45c78:	670a           	beqs 45c84 <rtems_semaphore_delete+0x30>    
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   45c7a:	246e fff8      	moveal %fp@(-8),%a2                         
{                                                                     
  register Semaphore_Control *the_semaphore;                          
  Objects_Locations           location;                               
                                                                      
  the_semaphore = _Semaphore_Get( id, &location );                    
  switch ( location ) {                                               
   45c7e:	7004           	moveq #4,%d0                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   45c80:	4e5e           	unlk %fp                                    
   45c82:	4e75           	rts                                         
   45c84:	7030           	moveq #48,%d0                               
   45c86:	c0aa 0010      	andl %a2@(16),%d0                           
                                                                      
  the_semaphore = _Semaphore_Get( id, &location );                    
  switch ( location ) {                                               
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( !_Attributes_Is_counting_semaphore(the_semaphore->attribute_set) ) {
   45c8a:	6760           	beqs 45cec <rtems_semaphore_delete+0x98>    
        if ( _CORE_mutex_Is_locked( &the_semaphore->Core_control.mutex ) &&
   45c8c:	4aaa 0062      	tstl %a2@(98)                               
   45c90:	6616           	bnes 45ca8 <rtems_semaphore_delete+0x54>    
   45c92:	7220           	moveq #32,%d1                               
   45c94:	b280           	cmpl %d0,%d1                                
   45c96:	6710           	beqs 45ca8 <rtems_semaphore_delete+0x54>    
             !_Attributes_Is_simple_binary_semaphore(                 
                 the_semaphore->attribute_set ) ) {                   
          _Thread_Enable_dispatch();                                  
   45c98:	4eb9 0004 7dbc 	jsr 47dbc <_Thread_Enable_dispatch>         
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   45c9e:	246e fff8      	moveal %fp@(-8),%a2                         
    case OBJECTS_LOCAL:                                               
      if ( !_Attributes_Is_counting_semaphore(the_semaphore->attribute_set) ) {
        if ( _CORE_mutex_Is_locked( &the_semaphore->Core_control.mutex ) &&
             !_Attributes_Is_simple_binary_semaphore(                 
                 the_semaphore->attribute_set ) ) {                   
          _Thread_Enable_dispatch();                                  
   45ca2:	700c           	moveq #12,%d0                               
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   45ca4:	4e5e           	unlk %fp                                    
   45ca6:	4e75           	rts                                         
             !_Attributes_Is_simple_binary_semaphore(                 
                 the_semaphore->attribute_set ) ) {                   
          _Thread_Enable_dispatch();                                  
          return RTEMS_RESOURCE_IN_USE;                               
        }                                                             
        _CORE_mutex_Flush(                                            
   45ca8:	4878 0004      	pea 4 <CONTEXT_ARG>                         
   45cac:	42a7           	clrl %sp@-                                  
   45cae:	486a 0014      	pea %a2@(20)                                
   45cb2:	4eb9 0004 67d0 	jsr 467d0 <_CORE_mutex_Flush>               
   45cb8:	4fef 000c      	lea %sp@(12),%sp                            
          SEMAPHORE_MP_OBJECT_WAS_DELETED,                            
          CORE_SEMAPHORE_WAS_DELETED                                  
        );                                                            
     }                                                                
                                                                      
      _Objects_Close( &_Semaphore_Information, &the_semaphore->Object );
   45cbc:	2f0a           	movel %a2,%sp@-                             
   45cbe:	4879 0005 eeb0 	pea 5eeb0 <_Semaphore_Information>          
   45cc4:	4eb9 0004 7120 	jsr 47120 <_Objects_Close>                  
 */                                                                   
RTEMS_INLINE_ROUTINE void _Semaphore_Free (                           
  Semaphore_Control *the_semaphore                                    
)                                                                     
{                                                                     
  _Objects_Free( &_Semaphore_Information, &the_semaphore->Object );   
   45cca:	2f0a           	movel %a2,%sp@-                             
   45ccc:	4879 0005 eeb0 	pea 5eeb0 <_Semaphore_Information>          
   45cd2:	4eb9 0004 73c8 	jsr 473c8 <_Objects_Free>                   
          0,                         /* Not used */                   
          0                          /* Not used */                   
        );                                                            
      }                                                               
#endif                                                                
      _Thread_Enable_dispatch();                                      
   45cd8:	4eb9 0004 7dbc 	jsr 47dbc <_Thread_Enable_dispatch>         
      return RTEMS_SUCCESSFUL;                                        
   45cde:	4fef 0010      	lea %sp@(16),%sp                            
          0,                         /* Not used */                   
          0                          /* Not used */                   
        );                                                            
      }                                                               
#endif                                                                
      _Thread_Enable_dispatch();                                      
   45ce2:	4280           	clrl %d0                                    
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   45ce4:	246e fff8      	moveal %fp@(-8),%a2                         
   45ce8:	4e5e           	unlk %fp                                    
   45cea:	4e75           	rts                                         
          &the_semaphore->Core_control.mutex,                         
          SEMAPHORE_MP_OBJECT_WAS_DELETED,                            
          CORE_MUTEX_WAS_DELETED                                      
        );                                                            
      } else {                                                        
        _CORE_semaphore_Flush(                                        
   45cec:	4878 0002      	pea 2 <DOUBLE_FLOAT>                        
   45cf0:	42a7           	clrl %sp@-                                  
   45cf2:	486a 0014      	pea %a2@(20)                                
   45cf6:	4eb9 0004 6b18 	jsr 46b18 <_CORE_semaphore_Flush>           
   45cfc:	4fef 000c      	lea %sp@(12),%sp                            
          SEMAPHORE_MP_OBJECT_WAS_DELETED,                            
          CORE_SEMAPHORE_WAS_DELETED                                  
        );                                                            
     }                                                                
                                                                      
      _Objects_Close( &_Semaphore_Information, &the_semaphore->Object );
   45d00:	2f0a           	movel %a2,%sp@-                             
   45d02:	4879 0005 eeb0 	pea 5eeb0 <_Semaphore_Information>          
   45d08:	4eb9 0004 7120 	jsr 47120 <_Objects_Close>                  
   45d0e:	2f0a           	movel %a2,%sp@-                             
   45d10:	4879 0005 eeb0 	pea 5eeb0 <_Semaphore_Information>          
   45d16:	4eb9 0004 73c8 	jsr 473c8 <_Objects_Free>                   
          0,                         /* Not used */                   
          0                          /* Not used */                   
        );                                                            
      }                                                               
#endif                                                                
      _Thread_Enable_dispatch();                                      
   45d1c:	4eb9 0004 7dbc 	jsr 47dbc <_Thread_Enable_dispatch>         
      return RTEMS_SUCCESSFUL;                                        
   45d22:	4fef 0010      	lea %sp@(16),%sp                            
          0,                         /* Not used */                   
          0                          /* Not used */                   
        );                                                            
      }                                                               
#endif                                                                
      _Thread_Enable_dispatch();                                      
   45d26:	4280           	clrl %d0                                    
   45d28:	60ba           	bras 45ce4 <rtems_semaphore_delete+0x90>    
	...                                                                  
                                                                      
00050dc4 <rtems_semaphore_flush>:                                     
#endif                                                                
                                                                      
rtems_status_code rtems_semaphore_flush(                              
  rtems_id        id                                                  
)                                                                     
{                                                                     
   50dc4:	4e56 fffc      	linkw %fp,#-4                               
   50dc8:	486e fffc      	pea %fp@(-4)                                
   50dcc:	2f2e 0008      	movel %fp@(8),%sp@-                         
   50dd0:	4879 0006 4f88 	pea 64f88 <_Semaphore_Information>          
   50dd6:	4eb9 0004 957c 	jsr 4957c <_Objects_Get>                    
  register Semaphore_Control *the_semaphore;                          
  Objects_Locations           location;                               
                                                                      
  the_semaphore = _Semaphore_Get( id, &location );                    
  switch ( location ) {                                               
   50ddc:	4fef 000c      	lea %sp@(12),%sp                            
   50de0:	4aae fffc      	tstl %fp@(-4)                               
   50de4:	6706           	beqs 50dec <rtems_semaphore_flush+0x28>     
   50de6:	7004           	moveq #4,%d0                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   50de8:	4e5e           	unlk %fp                                    
   50dea:	4e75           	rts                                         
                                                                      
  the_semaphore = _Semaphore_Get( id, &location );                    
  switch ( location ) {                                               
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( !_Attributes_Is_counting_semaphore(the_semaphore->attribute_set) ) {
   50dec:	7230           	moveq #48,%d1                               
   50dee:	2040           	moveal %d0,%a0                              
   50df0:	c2a8 0010      	andl %a0@(16),%d1                           
   50df4:	6720           	beqs 50e16 <rtems_semaphore_flush+0x52>     
        _CORE_mutex_Flush(                                            
   50df6:	4878 0001      	pea 1 <ADD>                                 
   50dfa:	42a7           	clrl %sp@-                                  
   50dfc:	4868 0014      	pea %a0@(20)                                
   50e00:	4eb9 0004 8784 	jsr 48784 <_CORE_mutex_Flush>               
   50e06:	4fef 000c      	lea %sp@(12),%sp                            
          &the_semaphore->Core_control.semaphore,                     
          SEND_OBJECT_WAS_DELETED,                                    
          CORE_SEMAPHORE_STATUS_UNSATISFIED_NOWAIT                    
        );                                                            
      }                                                               
      _Thread_Enable_dispatch();                                      
   50e0a:	4eb9 0004 9e8c 	jsr 49e8c <_Thread_Enable_dispatch>         
   50e10:	4280           	clrl %d0                                    
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   50e12:	4e5e           	unlk %fp                                    
   50e14:	4e75           	rts                                         
          &the_semaphore->Core_control.mutex,                         
          SEND_OBJECT_WAS_DELETED,                                    
          CORE_MUTEX_STATUS_UNSATISFIED_NOWAIT                        
        );                                                            
      } else {                                                        
        _CORE_semaphore_Flush(                                        
   50e16:	4878 0001      	pea 1 <ADD>                                 
   50e1a:	2040           	moveal %d0,%a0                              
   50e1c:	42a7           	clrl %sp@-                                  
   50e1e:	4868 0014      	pea %a0@(20)                                
   50e22:	4eb9 0004 8acc 	jsr 48acc <_CORE_semaphore_Flush>           
   50e28:	4fef 000c      	lea %sp@(12),%sp                            
          &the_semaphore->Core_control.semaphore,                     
          SEND_OBJECT_WAS_DELETED,                                    
          CORE_SEMAPHORE_STATUS_UNSATISFIED_NOWAIT                    
        );                                                            
      }                                                               
      _Thread_Enable_dispatch();                                      
   50e2c:	4eb9 0004 9e8c 	jsr 49e8c <_Thread_Enable_dispatch>         
   50e32:	4280           	clrl %d0                                    
   50e34:	60dc           	bras 50e12 <rtems_semaphore_flush+0x4e>     
	...                                                                  
                                                                      
00044ae8 <rtems_stack_checker_is_blown>:                              
                                                                      
/*                                                                    
 *  Check if blown                                                    
 */                                                                   
bool rtems_stack_checker_is_blown( void )                             
{                                                                     
   44ae8:	4e56 0000      	linkw %fp,#0                                
  Stack_Control *the_stack = &_Thread_Executing->Start.Initial_stack; 
   44aec:	2279 000a 6b46 	moveal a6b46 <_Thread_Executing>,%a1        
)                                                                     
{                                                                     
  #if defined(__GNUC__)                                               
    void *sp = __builtin_frame_address(0);                            
                                                                      
    if ( sp < the_stack->area ) {                                     
   44af2:	2069 00c2      	moveal %a1@(194),%a0                        
                                                                      
/*                                                                    
 *  Check if blown                                                    
 */                                                                   
bool rtems_stack_checker_is_blown( void )                             
{                                                                     
   44af6:	2f02           	movel %d2,%sp@-                             
)                                                                     
{                                                                     
  #if defined(__GNUC__)                                               
    void *sp = __builtin_frame_address(0);                            
                                                                      
    if ( sp < the_stack->area ) {                                     
   44af8:	b1ce           	cmpal %fp,%a0                               
   44afa:	6354           	blss 44b50 <rtems_stack_checker_is_blown+0x68>
   44afc:	4202           	clrb %d2                                    <== NOT EXECUTED
                                                                      
  /*                                                                  
   * The stack checker must be initialized before the pattern is there
   * to check.                                                        
   */                                                                 
  if ( Stack_check_Initialized ) {                                    
   44afe:	4ab9 000a 39c0 	tstl a39c0 <Stack_check_Initialized>        
   44b04:	662a           	bnes 44b30 <rtems_stack_checker_is_blown+0x48>
   44b06:	7001           	moveq #1,%d0                                <== NOT EXECUTED
  }                                                                   
                                                                      
  /*                                                                  
   * The Stack Pointer and the Pattern Area are OK so return false.   
   */                                                                 
  if ( sp_ok && pattern_ok )                                          
   44b08:	4a02           	tstb %d2                                    
   44b0a:	6704           	beqs 44b10 <rtems_stack_checker_is_blown+0x28>
   44b0c:	4a00           	tstb %d0                                    
   44b0e:	664e           	bnes 44b5e <rtems_stack_checker_is_blown+0x76>
    return false;                                                     
                                                                      
  /*                                                                  
   * Let's report as much as we can.                                  
   */                                                                 
  Stack_check_report_blown_task( _Thread_Executing, pattern_ok );     
   44b10:	0280 0000 00ff 	andil #255,%d0                              <== NOT EXECUTED
   44b16:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   44b18:	2f39 000a 6b46 	movel a6b46 <_Thread_Executing>,%sp@-       <== NOT EXECUTED
   44b1e:	4eb9 0004 4a38 	jsr 44a38 <Stack_check_report_blown_task>   <== NOT EXECUTED
  return true;                                                        
}                                                                     
   44b24:	242e fffc      	movel %fp@(-4),%d2                          <== NOT EXECUTED
                                                                      
  /*                                                                  
   * Let's report as much as we can.                                  
   */                                                                 
  Stack_check_report_blown_task( _Thread_Executing, pattern_ok );     
  return true;                                                        
   44b28:	508f           	addql #8,%sp                                <== NOT EXECUTED
}                                                                     
   44b2a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
    return false;                                                     
                                                                      
  /*                                                                  
   * Let's report as much as we can.                                  
   */                                                                 
  Stack_check_report_blown_task( _Thread_Executing, pattern_ok );     
   44b2c:	7001           	moveq #1,%d0                                <== NOT EXECUTED
  return true;                                                        
}                                                                     
   44b2e:	4e75           	rts                                         <== NOT EXECUTED
  /*                                                                  
   * The stack checker must be initialized before the pattern is there
   * to check.                                                        
   */                                                                 
  if ( Stack_check_Initialized ) {                                    
    pattern_ok = (!memcmp(                                            
   44b30:	4878 0010      	pea 10 <INVALID_OPERATION>                  
   44b34:	4879 000a 6904 	pea a6904 <Stack_check_Pattern>             
   44b3a:	4868 0008      	pea %a0@(8)                                 
   44b3e:	4eb9 0008 3dfc 	jsr 83dfc <memcmp>                          
   44b44:	4fef 000c      	lea %sp@(12),%sp                            
   44b48:	4a80           	tstl %d0                                    
   44b4a:	57c0           	seq %d0                                     
   44b4c:	4480           	negl %d0                                    
   44b4e:	60b8           	bras 44b08 <rtems_stack_checker_is_blown+0x20>
}                                                                     
                                                                      
/*                                                                    
 *  Check if blown                                                    
 */                                                                   
bool rtems_stack_checker_is_blown( void )                             
   44b50:	2008           	movel %a0,%d0                               
   44b52:	d0a9 00be      	addl %a1@(190),%d0                          
   44b56:	b08e           	cmpl %fp,%d0                                
   44b58:	54c2           	scc %d2                                     
   44b5a:	4482           	negl %d2                                    
   44b5c:	60a0           	bras 44afe <rtems_stack_checker_is_blown+0x16>
  /*                                                                  
   * Let's report as much as we can.                                  
   */                                                                 
  Stack_check_report_blown_task( _Thread_Executing, pattern_ok );     
  return true;                                                        
}                                                                     
   44b5e:	242e fffc      	movel %fp@(-4),%d2                          
   44b62:	4e5e           	unlk %fp                                    
  }                                                                   
                                                                      
  /*                                                                  
   * The Stack Pointer and the Pattern Area are OK so return false.   
   */                                                                 
  if ( sp_ok && pattern_ok )                                          
   44b64:	4200           	clrb %d0                                    <== NOT EXECUTED
  /*                                                                  
   * Let's report as much as we can.                                  
   */                                                                 
  Stack_check_report_blown_task( _Thread_Executing, pattern_ok );     
  return true;                                                        
}                                                                     
                                                                      
00044a20 <rtems_stack_checker_report_usage>:                          
                                                                      
void rtems_stack_checker_report_usage( void )                         
{                                                                     
   44a20:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  rtems_stack_checker_report_usage_with_plugin( NULL, printk_plugin );
   44a24:	4879 0004 7a0c 	pea 47a0c <printk_plugin>                   <== NOT EXECUTED
   44a2a:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   44a2c:	4eb9 0004 49be 	jsr 449be <rtems_stack_checker_report_usage_with_plugin><== NOT EXECUTED
   44a32:	508f           	addql #8,%sp                                <== NOT EXECUTED
}                                                                     
   44a34:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000449be <rtems_stack_checker_report_usage_with_plugin>:              
                                                                      
void rtems_stack_checker_report_usage_with_plugin(                    
  void                  *context,                                     
  rtems_printk_plugin_t  print                                        
)                                                                     
{                                                                     
   449be:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   449c2:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   449c4:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
   449c8:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
  print_context = context;                                            
  print_handler = print;                                              
                                                                      
  (*print)( context, "Stack usage by thread\n");                      
   449ca:	4879 0009 92ac 	pea 992ac <IntUartPollCallbacks.6602+0x6c>  <== NOT EXECUTED
                                                                      
void rtems_stack_checker_report_usage_with_plugin(                    
  void                  *context,                                     
  rtems_printk_plugin_t  print                                        
)                                                                     
{                                                                     
   449d0:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
  print_context = context;                                            
  print_handler = print;                                              
   449d4:	23ca 000a 39c8 	movel %a2,a39c8 <print_handler>             <== NOT EXECUTED
                                                                      
  (*print)( context, "Stack usage by thread\n");                      
   449da:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
void rtems_stack_checker_report_usage_with_plugin(                    
  void                  *context,                                     
  rtems_printk_plugin_t  print                                        
)                                                                     
{                                                                     
  print_context = context;                                            
   449dc:	23c2 000a 39c4 	movel %d2,a39c4 <print_context>             <== NOT EXECUTED
  print_handler = print;                                              
                                                                      
  (*print)( context, "Stack usage by thread\n");                      
   449e2:	4e92           	jsr %a2@                                    <== NOT EXECUTED
  (*print)( context,                                                  
   449e4:	4879 0009 92c3 	pea 992c3 <IntUartPollCallbacks.6602+0x83>  <== NOT EXECUTED
   449ea:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   449ec:	4e92           	jsr %a2@                                    <== NOT EXECUTED
"    ID      NAME    LOW          HIGH     CURRENT     AVAILABLE     USED\n"
  );                                                                  
                                                                      
  /* iterate over all threads and dump the usage */                   
  rtems_iterate_over_all_threads( Stack_check_Dump_threads_usage );   
   449ee:	4879 0004 4836 	pea 44836 <Stack_check_Dump_threads_usage>  <== NOT EXECUTED
   449f4:	4eb9 0004 bffc 	jsr 4bffc <rtems_iterate_over_all_threads>  <== NOT EXECUTED
                                                                      
  /* dump interrupt stack info if any */                              
  Stack_check_Dump_threads_usage((Thread_Control *) -1);              
   449fa:	4878 ffff      	pea ffffffff <LESS>                         <== NOT EXECUTED
   449fe:	4eb9 0004 4836 	jsr 44836 <Stack_check_Dump_threads_usage>  <== NOT EXECUTED
                                                                      
  print_context = NULL;                                               
  print_handler = NULL;                                               
                                                                      
}                                                                     
   44a04:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
                                                                      
  /* dump interrupt stack info if any */                              
  Stack_check_Dump_threads_usage((Thread_Control *) -1);              
                                                                      
  print_context = NULL;                                               
  print_handler = NULL;                                               
   44a08:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
                                                                      
}                                                                     
   44a0c:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   44a10:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  rtems_iterate_over_all_threads( Stack_check_Dump_threads_usage );   
                                                                      
  /* dump interrupt stack info if any */                              
  Stack_check_Dump_threads_usage((Thread_Control *) -1);              
                                                                      
  print_context = NULL;                                               
   44a12:	42b9 000a 39c4 	clrl a39c4 <print_context>                  <== NOT EXECUTED
  print_handler = NULL;                                               
   44a18:	42b9 000a 39c8 	clrl a39c8 <print_handler>                  <== NOT EXECUTED
                                                                      
}                                                                     
                                                                      
00044b68 <rtems_stack_checker_switch_extension>:                      
 */                                                                   
void rtems_stack_checker_switch_extension(                            
  Thread_Control *running __attribute__((unused)),                    
  Thread_Control *heir __attribute__((unused))                        
)                                                                     
{                                                                     
   44b68:	4e56 0000      	linkw %fp,#0                                
   44b6c:	2f0a           	movel %a2,%sp@-                             
   44b6e:	246e 0008      	moveal %fp@(8),%a2                          
  Stack_Control *the_stack = &running->Start.Initial_stack;           
  void          *pattern;                                             
  bool        sp_ok;                                                  
  bool        pattern_ok = true;                                      
                                                                      
  pattern = (void *) Stack_check_Get_pattern_area(the_stack)->pattern;
   44b72:	222a 00c2      	movel %a2@(194),%d1                         
   44b76:	5081           	addql #8,%d1                                
)                                                                     
{                                                                     
  #if defined(__GNUC__)                                               
    void *sp = __builtin_frame_address(0);                            
                                                                      
    if ( sp < the_stack->area ) {                                     
   44b78:	202a 00c2      	movel %a2@(194),%d0                         
   44b7c:	b08e           	cmpl %fp,%d0                                
   44b7e:	6208           	bhis 44b88 <rtems_stack_checker_switch_extension+0x20>
void rtems_stack_checker_switch_extension(                            
  Thread_Control *running __attribute__((unused)),                    
  Thread_Control *heir __attribute__((unused))                        
)                                                                     
{                                                                     
  Stack_Control *the_stack = &running->Start.Initial_stack;           
   44b80:	d0aa 00be      	addl %a2@(190),%d0                          
   44b84:	b08e           	cmpl %fp,%d0                                
   44b86:	6436           	bccs 44bbe <rtems_stack_checker_switch_extension+0x56>
  /*                                                                  
   *  Check for an out of bounds stack pointer or an overwrite        
   */                                                                 
  sp_ok = Stack_check_Frame_pointer_in_range( the_stack );            
                                                                      
  pattern_ok = (!memcmp( pattern,                                     
   44b88:	4878 0010      	pea 10 <INVALID_OPERATION>                  <== NOT EXECUTED
   44b8c:	4879 000a 6904 	pea a6904 <Stack_check_Pattern>             <== NOT EXECUTED
   44b92:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   44b94:	4eb9 0008 3dfc 	jsr 83dfc <memcmp>                          <== NOT EXECUTED
   44b9a:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   44b9e:	4a80           	tstl %d0                                    <== NOT EXECUTED
   44ba0:	57c0           	seq %d0                                     <== NOT EXECUTED
            (void *) Stack_check_Pattern.pattern, PATTERN_SIZE_BYTES));
                                                                      
  if ( !sp_ok || !pattern_ok ) {                                      
    Stack_check_report_blown_task( running, pattern_ok );             
   44ba2:	2d4a 0008      	movel %a2,%fp@(8)                           <== NOT EXECUTED
  }                                                                   
}                                                                     
   44ba6:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
  /*                                                                  
   *  Check for an out of bounds stack pointer or an overwrite        
   */                                                                 
  sp_ok = Stack_check_Frame_pointer_in_range( the_stack );            
                                                                      
  pattern_ok = (!memcmp( pattern,                                     
   44baa:	4480           	negl %d0                                    <== NOT EXECUTED
            (void *) Stack_check_Pattern.pattern, PATTERN_SIZE_BYTES));
                                                                      
  if ( !sp_ok || !pattern_ok ) {                                      
    Stack_check_report_blown_task( running, pattern_ok );             
   44bac:	0280 0000 00ff 	andil #255,%d0                              <== NOT EXECUTED
   44bb2:	2d40 000c      	movel %d0,%fp@(12)                          <== NOT EXECUTED
  }                                                                   
}                                                                     
   44bb6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
  pattern_ok = (!memcmp( pattern,                                     
            (void *) Stack_check_Pattern.pattern, PATTERN_SIZE_BYTES));
                                                                      
  if ( !sp_ok || !pattern_ok ) {                                      
    Stack_check_report_blown_task( running, pattern_ok );             
   44bb8:	4ef9 0004 4a38 	jmp 44a38 <Stack_check_report_blown_task>   <== NOT EXECUTED
  /*                                                                  
   *  Check for an out of bounds stack pointer or an overwrite        
   */                                                                 
  sp_ok = Stack_check_Frame_pointer_in_range( the_stack );            
                                                                      
  pattern_ok = (!memcmp( pattern,                                     
   44bbe:	4878 0010      	pea 10 <INVALID_OPERATION>                  
   44bc2:	4879 000a 6904 	pea a6904 <Stack_check_Pattern>             
   44bc8:	2f01           	movel %d1,%sp@-                             
   44bca:	4eb9 0008 3dfc 	jsr 83dfc <memcmp>                          
   44bd0:	4fef 000c      	lea %sp@(12),%sp                            
            (void *) Stack_check_Pattern.pattern, PATTERN_SIZE_BYTES));
                                                                      
  if ( !sp_ok || !pattern_ok ) {                                      
   44bd4:	4a80           	tstl %d0                                    
   44bd6:	671c           	beqs 44bf4 <rtems_stack_checker_switch_extension+0x8c>
    Stack_check_report_blown_task( running, pattern_ok );             
   44bd8:	2d4a 0008      	movel %a2,%fp@(8)                           <== NOT EXECUTED
  }                                                                   
}                                                                     
   44bdc:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
  sp_ok = Stack_check_Frame_pointer_in_range( the_stack );            
                                                                      
  pattern_ok = (!memcmp( pattern,                                     
            (void *) Stack_check_Pattern.pattern, PATTERN_SIZE_BYTES));
                                                                      
  if ( !sp_ok || !pattern_ok ) {                                      
   44be0:	4200           	clrb %d0                                    <== NOT EXECUTED
    Stack_check_report_blown_task( running, pattern_ok );             
   44be2:	0280 0000 00ff 	andil #255,%d0                              <== NOT EXECUTED
   44be8:	2d40 000c      	movel %d0,%fp@(12)                          <== NOT EXECUTED
  }                                                                   
}                                                                     
   44bec:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
  pattern_ok = (!memcmp( pattern,                                     
            (void *) Stack_check_Pattern.pattern, PATTERN_SIZE_BYTES));
                                                                      
  if ( !sp_ok || !pattern_ok ) {                                      
    Stack_check_report_blown_task( running, pattern_ok );             
   44bee:	4ef9 0004 4a38 	jmp 44a38 <Stack_check_report_blown_task>   <== NOT EXECUTED
  }                                                                   
}                                                                     
   44bf4:	246e fffc      	moveal %fp@(-4),%a2                         
   44bf8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004d534 <rtems_string_to_double>:                                    
  #if defined(STRING_TO_INTEGER) && !defined(STRING_TO_POINTER)       
    ,                                                                 
    int              base                                             
  #endif                                                              
)                                                                     
{                                                                     
   4d534:	4e56 ffe4      	linkw %fp,#-28                              <== NOT EXECUTED
   4d538:	48d7 1c1c      	moveml %d2-%d4/%a2-%a4,%sp@                 <== NOT EXECUTED
   4d53c:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
   4d540:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
   4d544:	266e 0010      	moveal %fp@(16),%a3                         <== NOT EXECUTED
  STRING_TO_INPUT_TYPE  result;                                       
  char                 *end;                                          
                                                                      
  if ( !n )                                                           
   4d548:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   4d54a:	677a           	beqs 4d5c6 <rtems_string_to_double+0x92>    <== NOT EXECUTED
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  errno = 0;                                                          
   4d54c:	49f9 0005 0368 	lea 50368 <__errno>,%a4                     <== NOT EXECUTED
   4d552:	4e94           	jsr %a4@                                    <== NOT EXECUTED
  *n    = 0;                                                          
   4d554:	4281           	clrl %d1                                    <== NOT EXECUTED
  char                 *end;                                          
                                                                      
  if ( !n )                                                           
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  errno = 0;                                                          
   4d556:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  *n    = 0;                                                          
   4d558:	4280           	clrl %d0                                    <== NOT EXECUTED
  char                 *end;                                          
                                                                      
  if ( !n )                                                           
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  errno = 0;                                                          
   4d55a:	4290           	clrl %a0@                                   <== NOT EXECUTED
  *n    = 0;                                                          
                                                                      
  #ifdef STRING_TO_FLOAT                                              
    result = STRING_TO_METHOD( s, &end );                             
   4d55c:	486e fffc      	pea %fp@(-4)                                <== NOT EXECUTED
                                                                      
  if ( !n )                                                           
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  errno = 0;                                                          
  *n    = 0;                                                          
   4d560:	2480           	movel %d0,%a2@                              <== NOT EXECUTED
   4d562:	2541 0004      	movel %d1,%a2@(4)                           <== NOT EXECUTED
                                                                      
  #ifdef STRING_TO_FLOAT                                              
    result = STRING_TO_METHOD( s, &end );                             
   4d566:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4d568:	4eb9 0005 2dbc 	jsr 52dbc <strtod>                          <== NOT EXECUTED
  #elif defined(STRING_TO_INTEGER)                                    
    result = STRING_TO_METHOD( s, &end, base );                       
  #endif                                                              
                                                                      
  /* If the user wants the end pointer back, then return it. */       
  if ( endptr )                                                       
   4d56e:	508f           	addql #8,%sp                                <== NOT EXECUTED
                                                                      
  errno = 0;                                                          
  *n    = 0;                                                          
                                                                      
  #ifdef STRING_TO_FLOAT                                              
    result = STRING_TO_METHOD( s, &end );                             
   4d570:	2600           	movel %d0,%d3                               <== NOT EXECUTED
   4d572:	2801           	movel %d1,%d4                               <== NOT EXECUTED
  #elif defined(STRING_TO_INTEGER)                                    
    result = STRING_TO_METHOD( s, &end, base );                       
  #endif                                                              
                                                                      
  /* If the user wants the end pointer back, then return it. */       
  if ( endptr )                                                       
   4d574:	4a8b           	tstl %a3                                    <== NOT EXECUTED
   4d576:	6704           	beqs 4d57c <rtems_string_to_double+0x48>    <== NOT EXECUTED
    *endptr = end;                                                    
   4d578:	26ae fffc      	movel %fp@(-4),%a3@                         <== NOT EXECUTED
                                                                      
  /* nothing was converted */                                         
  if ( end == s )                                                     
   4d57c:	b4ae fffc      	cmpl %fp@(-4),%d2                           <== NOT EXECUTED
   4d580:	6750           	beqs 4d5d2 <rtems_string_to_double+0x9e>    <== NOT EXECUTED
    return RTEMS_INVALID_NUMBER;                                      
  #endif                                                              
                                                                      
  #ifdef STRING_TO_MAX                                                
    /* there was an overflow */                                       
    if ( (result == STRING_TO_MAX) && (errno == ERANGE))              
   4d582:	4878 ffff      	pea ffffffff <LESS>                         <== NOT EXECUTED
   4d586:	2f3c 7fef ffff 	movel #2146435071,%sp@-                     <== NOT EXECUTED
   4d58c:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   4d58e:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4d590:	4eb9 0005 dc64 	jsr 5dc64 <__gtdf2>                         <== NOT EXECUTED
   4d596:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   4d59a:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4d59c:	6e12           	bgts 4d5b0 <rtems_string_to_double+0x7c>    <== NOT EXECUTED
  #endif                                                              
                                                                      
  #if defined(STRING_TO_POINTER)                                      
    *n = (STRING_TO_TYPE) (uintptr_t)result;                          
  #else                                                               
    *n = (STRING_TO_TYPE) result;                                     
   4d59e:	2483           	movel %d3,%a2@                              <== NOT EXECUTED
   4d5a0:	4280           	clrl %d0                                    <== NOT EXECUTED
   4d5a2:	2544 0004      	movel %d4,%a2@(4)                           <== NOT EXECUTED
  #endif                                                              
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4d5a6:	4cee 1c1c ffe4 	moveml %fp@(-28),%d2-%d4/%a2-%a4            <== NOT EXECUTED
   4d5ac:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4d5ae:	4e75           	rts                                         <== NOT EXECUTED
    return RTEMS_INVALID_NUMBER;                                      
  #endif                                                              
                                                                      
  #ifdef STRING_TO_MAX                                                
    /* there was an overflow */                                       
    if ( (result == STRING_TO_MAX) && (errno == ERANGE))              
   4d5b0:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   4d5b2:	7222           	moveq #34,%d1                               <== NOT EXECUTED
   4d5b4:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4d5b6:	b290           	cmpl %a0@,%d1                               <== NOT EXECUTED
   4d5b8:	66e4           	bnes 4d59e <rtems_string_to_double+0x6a>    <== NOT EXECUTED
   4d5ba:	700a           	moveq #10,%d0                               <== NOT EXECUTED
    *n = (STRING_TO_TYPE) (uintptr_t)result;                          
  #else                                                               
    *n = (STRING_TO_TYPE) result;                                     
  #endif                                                              
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4d5bc:	4cee 1c1c ffe4 	moveml %fp@(-28),%d2-%d4/%a2-%a4            <== NOT EXECUTED
   4d5c2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4d5c4:	4e75           	rts                                         <== NOT EXECUTED
)                                                                     
{                                                                     
  STRING_TO_INPUT_TYPE  result;                                       
  char                 *end;                                          
                                                                      
  if ( !n )                                                           
   4d5c6:	7009           	moveq #9,%d0                                <== NOT EXECUTED
    *n = (STRING_TO_TYPE) (uintptr_t)result;                          
  #else                                                               
    *n = (STRING_TO_TYPE) result;                                     
  #endif                                                              
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4d5c8:	4cee 1c1c ffe4 	moveml %fp@(-28),%d2-%d4/%a2-%a4            <== NOT EXECUTED
   4d5ce:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4d5d0:	4e75           	rts                                         <== NOT EXECUTED
  /* If the user wants the end pointer back, then return it. */       
  if ( endptr )                                                       
    *endptr = end;                                                    
                                                                      
  /* nothing was converted */                                         
  if ( end == s )                                                     
   4d5d2:	700b           	moveq #11,%d0                               <== NOT EXECUTED
    *n = (STRING_TO_TYPE) (uintptr_t)result;                          
  #else                                                               
    *n = (STRING_TO_TYPE) result;                                     
  #endif                                                              
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4d5d4:	4cee 1c1c ffe4 	moveml %fp@(-28),%d2-%d4/%a2-%a4            <== NOT EXECUTED
   4d5da:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
0004d5e0 <rtems_string_to_float>:                                     
  #if defined(STRING_TO_INTEGER) && !defined(STRING_TO_POINTER)       
    ,                                                                 
    int              base                                             
  #endif                                                              
)                                                                     
{                                                                     
   4d5e0:	4e56 ffe8      	linkw %fp,#-24                              
   4d5e4:	48d7 1c0c      	moveml %d2-%d3/%a2-%a4,%sp@                 
   4d5e8:	242e 0008      	movel %fp@(8),%d2                           
   4d5ec:	246e 000c      	moveal %fp@(12),%a2                         
   4d5f0:	266e 0010      	moveal %fp@(16),%a3                         
  STRING_TO_INPUT_TYPE  result;                                       
  char                 *end;                                          
                                                                      
  if ( !n )                                                           
   4d5f4:	4a8a           	tstl %a2                                    
   4d5f6:	6768           	beqs 4d660 <rtems_string_to_float+0x80>     
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  errno = 0;                                                          
   4d5f8:	49f9 0005 0368 	lea 50368 <__errno>,%a4                     
   4d5fe:	4e94           	jsr %a4@                                    
   4d600:	2040           	moveal %d0,%a0                              
   4d602:	4290           	clrl %a0@                                   
  *n    = 0;                                                          
                                                                      
  #ifdef STRING_TO_FLOAT                                              
    result = STRING_TO_METHOD( s, &end );                             
   4d604:	486e fffc      	pea %fp@(-4)                                
                                                                      
  if ( !n )                                                           
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  errno = 0;                                                          
  *n    = 0;                                                          
   4d608:	24bc 0000 0000 	movel #0,%a2@                               
                                                                      
  #ifdef STRING_TO_FLOAT                                              
    result = STRING_TO_METHOD( s, &end );                             
   4d60e:	2f02           	movel %d2,%sp@-                             
   4d610:	4eb9 0005 2d5e 	jsr 52d5e <strtof>                          
  #elif defined(STRING_TO_INTEGER)                                    
    result = STRING_TO_METHOD( s, &end, base );                       
  #endif                                                              
                                                                      
  /* If the user wants the end pointer back, then return it. */       
  if ( endptr )                                                       
   4d616:	508f           	addql #8,%sp                                
                                                                      
  errno = 0;                                                          
  *n    = 0;                                                          
                                                                      
  #ifdef STRING_TO_FLOAT                                              
    result = STRING_TO_METHOD( s, &end );                             
   4d618:	2600           	movel %d0,%d3                               
  #elif defined(STRING_TO_INTEGER)                                    
    result = STRING_TO_METHOD( s, &end, base );                       
  #endif                                                              
                                                                      
  /* If the user wants the end pointer back, then return it. */       
  if ( endptr )                                                       
   4d61a:	4a8b           	tstl %a3                                    
   4d61c:	6704           	beqs 4d622 <rtems_string_to_float+0x42>     
    *endptr = end;                                                    
   4d61e:	26ae fffc      	movel %fp@(-4),%a3@                         
                                                                      
  /* nothing was converted */                                         
  if ( end == s )                                                     
   4d622:	b4ae fffc      	cmpl %fp@(-4),%d2                           
   4d626:	6744           	beqs 4d66c <rtems_string_to_float+0x8c>     
    return RTEMS_INVALID_NUMBER;                                      
  #endif                                                              
                                                                      
  #ifdef STRING_TO_MAX                                                
    /* there was an overflow */                                       
    if ( (result == STRING_TO_MAX) && (errno == ERANGE))              
   4d628:	2f3c 7f7f ffff 	movel #2139095039,%sp@-                     
   4d62e:	2f03           	movel %d3,%sp@-                             
   4d630:	4eb9 0005 dcf4 	jsr 5dcf4 <__gtsf2>                         
   4d636:	508f           	addql #8,%sp                                
   4d638:	4a80           	tstl %d0                                    
   4d63a:	6e0e           	bgts 4d64a <rtems_string_to_float+0x6a>     
  #endif                                                              
                                                                      
  #if defined(STRING_TO_POINTER)                                      
    *n = (STRING_TO_TYPE) (uintptr_t)result;                          
  #else                                                               
    *n = (STRING_TO_TYPE) result;                                     
   4d63c:	2483           	movel %d3,%a2@                              
   4d63e:	4280           	clrl %d0                                    
  #endif                                                              
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4d640:	4cee 1c0c ffe8 	moveml %fp@(-24),%d2-%d3/%a2-%a4            
   4d646:	4e5e           	unlk %fp                                    
   4d648:	4e75           	rts                                         
    return RTEMS_INVALID_NUMBER;                                      
  #endif                                                              
                                                                      
  #ifdef STRING_TO_MAX                                                
    /* there was an overflow */                                       
    if ( (result == STRING_TO_MAX) && (errno == ERANGE))              
   4d64a:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   4d64c:	7222           	moveq #34,%d1                               <== NOT EXECUTED
   4d64e:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   4d650:	b290           	cmpl %a0@,%d1                               <== NOT EXECUTED
   4d652:	66e8           	bnes 4d63c <rtems_string_to_float+0x5c>     <== NOT EXECUTED
   4d654:	700a           	moveq #10,%d0                               <== NOT EXECUTED
    *n = (STRING_TO_TYPE) (uintptr_t)result;                          
  #else                                                               
    *n = (STRING_TO_TYPE) result;                                     
  #endif                                                              
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4d656:	4cee 1c0c ffe8 	moveml %fp@(-24),%d2-%d3/%a2-%a4            <== NOT EXECUTED
   4d65c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4d65e:	4e75           	rts                                         <== NOT EXECUTED
)                                                                     
{                                                                     
  STRING_TO_INPUT_TYPE  result;                                       
  char                 *end;                                          
                                                                      
  if ( !n )                                                           
   4d660:	7009           	moveq #9,%d0                                
    *n = (STRING_TO_TYPE) (uintptr_t)result;                          
  #else                                                               
    *n = (STRING_TO_TYPE) result;                                     
  #endif                                                              
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4d662:	4cee 1c0c ffe8 	moveml %fp@(-24),%d2-%d3/%a2-%a4            
   4d668:	4e5e           	unlk %fp                                    
   4d66a:	4e75           	rts                                         
  /* If the user wants the end pointer back, then return it. */       
  if ( endptr )                                                       
    *endptr = end;                                                    
                                                                      
  /* nothing was converted */                                         
  if ( end == s )                                                     
   4d66c:	700b           	moveq #11,%d0                               
    *n = (STRING_TO_TYPE) (uintptr_t)result;                          
  #else                                                               
    *n = (STRING_TO_TYPE) result;                                     
  #endif                                                              
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   4d66e:	4cee 1c0c ffe8 	moveml %fp@(-24),%d2-%d3/%a2-%a4            
   4d674:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0005cd90 <rtems_string_to_pointer>:                                   
  #if defined(STRING_TO_INTEGER) && !defined(STRING_TO_POINTER)       
    ,                                                                 
    int              base                                             
  #endif                                                              
)                                                                     
{                                                                     
   5cd90:	4e56 ffe8      	linkw %fp,#-24                              
   5cd94:	48d7 1c0c      	moveml %d2-%d3/%a2-%a4,%sp@                 
   5cd98:	242e 0008      	movel %fp@(8),%d2                           
   5cd9c:	246e 000c      	moveal %fp@(12),%a2                         
   5cda0:	266e 0010      	moveal %fp@(16),%a3                         
  STRING_TO_INPUT_TYPE  result;                                       
  char                 *end;                                          
                                                                      
  if ( !n )                                                           
   5cda4:	4a8a           	tstl %a2                                    
   5cda6:	675c           	beqs 5ce04 <rtems_string_to_pointer+0x74>   
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  errno = 0;                                                          
   5cda8:	49f9 0008 0e3c 	lea 80e3c <__errno>,%a4                     
   5cdae:	4e94           	jsr %a4@                                    
   5cdb0:	2040           	moveal %d0,%a0                              
   5cdb2:	4290           	clrl %a0@                                   
  *n    = 0;                                                          
                                                                      
  #ifdef STRING_TO_FLOAT                                              
    result = STRING_TO_METHOD( s, &end );                             
  #elif defined(STRING_TO_POINTER)                                    
    result = STRING_TO_METHOD( s, &end, 16 );                         
   5cdb4:	4878 0010      	pea 10 <INVALID_OPERATION>                  
   5cdb8:	486e fffc      	pea %fp@(-4)                                
                                                                      
  if ( !n )                                                           
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  errno = 0;                                                          
  *n    = 0;                                                          
   5cdbc:	4292           	clrl %a2@                                   
                                                                      
  #ifdef STRING_TO_FLOAT                                              
    result = STRING_TO_METHOD( s, &end );                             
  #elif defined(STRING_TO_POINTER)                                    
    result = STRING_TO_METHOD( s, &end, 16 );                         
   5cdbe:	2f02           	movel %d2,%sp@-                             
   5cdc0:	4eb9 0008 8060 	jsr 88060 <strtoul>                         
  #elif defined(STRING_TO_INTEGER)                                    
    result = STRING_TO_METHOD( s, &end, base );                       
  #endif                                                              
                                                                      
  /* If the user wants the end pointer back, then return it. */       
  if ( endptr )                                                       
   5cdc6:	4fef 000c      	lea %sp@(12),%sp                            
  *n    = 0;                                                          
                                                                      
  #ifdef STRING_TO_FLOAT                                              
    result = STRING_TO_METHOD( s, &end );                             
  #elif defined(STRING_TO_POINTER)                                    
    result = STRING_TO_METHOD( s, &end, 16 );                         
   5cdca:	2600           	movel %d0,%d3                               
  #elif defined(STRING_TO_INTEGER)                                    
    result = STRING_TO_METHOD( s, &end, base );                       
  #endif                                                              
                                                                      
  /* If the user wants the end pointer back, then return it. */       
  if ( endptr )                                                       
   5cdcc:	4a8b           	tstl %a3                                    
   5cdce:	6704           	beqs 5cdd4 <rtems_string_to_pointer+0x44>   
    *endptr = end;                                                    
   5cdd0:	26ae fffc      	movel %fp@(-4),%a3@                         
                                                                      
  /* nothing was converted */                                         
  if ( end == s )                                                     
   5cdd4:	b4ae fffc      	cmpl %fp@(-4),%d2                           
   5cdd8:	6736           	beqs 5ce10 <rtems_string_to_pointer+0x80>   
    return RTEMS_INVALID_NUMBER;                                      
  #endif                                                              
                                                                      
  #ifdef STRING_TO_MAX                                                
    /* there was an overflow */                                       
    if ( (result == STRING_TO_MAX) && (errno == ERANGE))              
   5cdda:	70ff           	moveq #-1,%d0                               
   5cddc:	b083           	cmpl %d3,%d0                                
   5cdde:	670e           	beqs 5cdee <rtems_string_to_pointer+0x5e>   
    if ( (result == STRING_TO_MIN) && (errno == ERANGE))              
      return RTEMS_INVALID_NUMBER;                                    
  #endif                                                              
                                                                      
  #if defined(STRING_TO_POINTER)                                      
    *n = (STRING_TO_TYPE) (uintptr_t)result;                          
   5cde0:	2483           	movel %d3,%a2@                              
   5cde2:	4280           	clrl %d0                                    
  #else                                                               
    *n = (STRING_TO_TYPE) result;                                     
  #endif                                                              
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   5cde4:	4cee 1c0c ffe8 	moveml %fp@(-24),%d2-%d3/%a2-%a4            
   5cdea:	4e5e           	unlk %fp                                    
   5cdec:	4e75           	rts                                         
    return RTEMS_INVALID_NUMBER;                                      
  #endif                                                              
                                                                      
  #ifdef STRING_TO_MAX                                                
    /* there was an overflow */                                       
    if ( (result == STRING_TO_MAX) && (errno == ERANGE))              
   5cdee:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   5cdf0:	7222           	moveq #34,%d1                               <== NOT EXECUTED
   5cdf2:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   5cdf4:	b290           	cmpl %a0@,%d1                               <== NOT EXECUTED
   5cdf6:	66e8           	bnes 5cde0 <rtems_string_to_pointer+0x50>   <== NOT EXECUTED
   5cdf8:	700a           	moveq #10,%d0                               <== NOT EXECUTED
    *n = (STRING_TO_TYPE) (uintptr_t)result;                          
  #else                                                               
    *n = (STRING_TO_TYPE) result;                                     
  #endif                                                              
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   5cdfa:	4cee 1c0c ffe8 	moveml %fp@(-24),%d2-%d3/%a2-%a4            <== NOT EXECUTED
   5ce00:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   5ce02:	4e75           	rts                                         <== NOT EXECUTED
)                                                                     
{                                                                     
  STRING_TO_INPUT_TYPE  result;                                       
  char                 *end;                                          
                                                                      
  if ( !n )                                                           
   5ce04:	7009           	moveq #9,%d0                                
    *n = (STRING_TO_TYPE) (uintptr_t)result;                          
  #else                                                               
    *n = (STRING_TO_TYPE) result;                                     
  #endif                                                              
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   5ce06:	4cee 1c0c ffe8 	moveml %fp@(-24),%d2-%d3/%a2-%a4            
   5ce0c:	4e5e           	unlk %fp                                    
   5ce0e:	4e75           	rts                                         
  /* If the user wants the end pointer back, then return it. */       
  if ( endptr )                                                       
    *endptr = end;                                                    
                                                                      
  /* nothing was converted */                                         
  if ( end == s )                                                     
   5ce10:	700b           	moveq #11,%d0                               
    *n = (STRING_TO_TYPE) (uintptr_t)result;                          
  #else                                                               
    *n = (STRING_TO_TYPE) result;                                     
  #endif                                                              
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   5ce12:	4cee 1c0c ffe8 	moveml %fp@(-24),%d2-%d3/%a2-%a4            
   5ce18:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00044640 <rtems_termios_baud_to_index>:                               
  rtems_termios_baud_t termios_baud                                   
)                                                                     
{                                                                     
  int baud_index;                                                     
                                                                      
  switch (termios_baud) {                                             
   44640:	7209           	moveq #9,%d1                                
#include <rtems/termiostypes.h>                                       
                                                                      
int rtems_termios_baud_to_index(                                      
  rtems_termios_baud_t termios_baud                                   
)                                                                     
{                                                                     
   44642:	4e56 0000      	linkw %fp,#0                                
   44646:	202e 0008      	movel %fp@(8),%d0                           
  int baud_index;                                                     
                                                                      
  switch (termios_baud) {                                             
   4464a:	b280           	cmpl %d0,%d1                                
   4464c:	6700 010a      	beqw 44758 <rtems_termios_baud_to_index+0x118>
   44650:	6c32           	bges 44684 <rtems_termios_baud_to_index+0x44>
   44652:	720e           	moveq #14,%d1                               <== NOT EXECUTED
   44654:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   44656:	6700 00d6      	beqw 4472e <rtems_termios_baud_to_index+0xee><== NOT EXECUTED
   4465a:	6c56           	bges 446b2 <rtems_termios_baud_to_index+0x72><== NOT EXECUTED
   4465c:	0c80 0000 1002 	cmpil #4098,%d0                             <== NOT EXECUTED
   44662:	6700 00e2      	beqw 44746 <rtems_termios_baud_to_index+0x106><== NOT EXECUTED
   44666:	6f00 0098      	blew 44700 <rtems_termios_baud_to_index+0xc0><== NOT EXECUTED
   4466a:	0c80 0000 1003 	cmpil #4099,%d0                             <== NOT EXECUTED
   44670:	6700 00b6      	beqw 44728 <rtems_termios_baud_to_index+0xe8><== NOT EXECUTED
   44674:	0c80 0000 1004 	cmpil #4100,%d0                             <== NOT EXECUTED
   4467a:	6700 009a      	beqw 44716 <rtems_termios_baud_to_index+0xd6><== NOT EXECUTED
    case B19200:    baud_index = 14;  break;                          
    case B38400:    baud_index = 15;  break;                          
    case B57600:    baud_index = 16;  break;                          
    case B115200:   baud_index = 17;  break;                          
    case B230400:   baud_index = 18;  break;                          
    case B460800:   baud_index = 19;  break;                          
   4467e:	70ff           	moveq #-1,%d0                               
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   44680:	4e5e           	unlk %fp                                    
   44682:	4e75           	rts                                         
  rtems_termios_baud_t termios_baud                                   
)                                                                     
{                                                                     
  int baud_index;                                                     
                                                                      
  switch (termios_baud) {                                             
   44684:	123c 0004      	moveb #4,%d1                                
   44688:	b280           	cmpl %d0,%d1                                
   4468a:	6700 00d2      	beqw 4475e <rtems_termios_baud_to_index+0x11e>
   4468e:	6d46           	blts 446d6 <rtems_termios_baud_to_index+0x96>
   44690:	123c 0001      	moveb #1,%d1                                
   44694:	b280           	cmpl %d0,%d1                                
   44696:	6700 00a2      	beqw 4473a <rtems_termios_baud_to_index+0xfa>
   4469a:	6c00 00c8      	bgew 44764 <rtems_termios_baud_to_index+0x124>
   4469e:	7202           	moveq #2,%d1                                <== NOT EXECUTED
   446a0:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   446a2:	677e           	beqs 44722 <rtems_termios_baud_to_index+0xe2><== NOT EXECUTED
   446a4:	123c 0003      	moveb #3,%d1                                <== NOT EXECUTED
   446a8:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   446aa:	66d2           	bnes 4467e <rtems_termios_baud_to_index+0x3e><== NOT EXECUTED
    case B0:        baud_index =  0;  break;                          
    case B50:       baud_index =  1;  break;                          
    case B75:       baud_index =  2;  break;                          
   446ac:	7003           	moveq #3,%d0                                <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   446ae:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   446b0:	4e75           	rts                                         <== NOT EXECUTED
  rtems_termios_baud_t termios_baud                                   
)                                                                     
{                                                                     
  int baud_index;                                                     
                                                                      
  switch (termios_baud) {                                             
   446b2:	123c 000b      	moveb #11,%d1                               <== NOT EXECUTED
   446b6:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   446b8:	6700 0086      	beqw 44740 <rtems_termios_baud_to_index+0x100><== NOT EXECUTED
   446bc:	6e3c           	bgts 446fa <rtems_termios_baud_to_index+0xba><== NOT EXECUTED
   446be:	123c 000c      	moveb #12,%d1                               <== NOT EXECUTED
   446c2:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   446c4:	6700 008c      	beqw 44752 <rtems_termios_baud_to_index+0x112><== NOT EXECUTED
   446c8:	123c 000d      	moveb #13,%d1                               <== NOT EXECUTED
   446cc:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   446ce:	66ae           	bnes 4467e <rtems_termios_baud_to_index+0x3e><== NOT EXECUTED
    case B300:      baud_index =  7;  break;                          
    case B600:      baud_index =  8;  break;                          
    case B1200:     baud_index =  9;  break;                          
    case B1800:     baud_index = 10;  break;                          
    case B2400:     baud_index = 11;  break;                          
    case B4800:     baud_index = 12;  break;                          
   446d0:	700d           	moveq #13,%d0                               <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   446d2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   446d4:	4e75           	rts                                         <== NOT EXECUTED
  rtems_termios_baud_t termios_baud                                   
)                                                                     
{                                                                     
  int baud_index;                                                     
                                                                      
  switch (termios_baud) {                                             
   446d6:	7206           	moveq #6,%d1                                <== NOT EXECUTED
   446d8:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   446da:	6758           	beqs 44734 <rtems_termios_baud_to_index+0xf4><== NOT EXECUTED
   446dc:	6e16           	bgts 446f4 <rtems_termios_baud_to_index+0xb4><== NOT EXECUTED
   446de:	123c 0007      	moveb #7,%d1                                <== NOT EXECUTED
   446e2:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   446e4:	6766           	beqs 4474c <rtems_termios_baud_to_index+0x10c><== NOT EXECUTED
   446e6:	123c 0008      	moveb #8,%d1                                <== NOT EXECUTED
   446ea:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   446ec:	6690           	bnes 4467e <rtems_termios_baud_to_index+0x3e><== NOT EXECUTED
    case B75:       baud_index =  2;  break;                          
    case B110:      baud_index =  3;  break;                          
    case B134:      baud_index =  4;  break;                          
    case B150:      baud_index =  5;  break;                          
    case B200:      baud_index =  6;  break;                          
    case B300:      baud_index =  7;  break;                          
   446ee:	7008           	moveq #8,%d0                                <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   446f0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   446f2:	4e75           	rts                                         <== NOT EXECUTED
  switch (termios_baud) {                                             
    case B0:        baud_index =  0;  break;                          
    case B50:       baud_index =  1;  break;                          
    case B75:       baud_index =  2;  break;                          
    case B110:      baud_index =  3;  break;                          
    case B134:      baud_index =  4;  break;                          
   446f4:	7005           	moveq #5,%d0                                <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   446f6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   446f8:	4e75           	rts                                         <== NOT EXECUTED
    case B134:      baud_index =  4;  break;                          
    case B150:      baud_index =  5;  break;                          
    case B200:      baud_index =  6;  break;                          
    case B300:      baud_index =  7;  break;                          
    case B600:      baud_index =  8;  break;                          
    case B1200:     baud_index =  9;  break;                          
   446fa:	700a           	moveq #10,%d0                               <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   446fc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   446fe:	4e75           	rts                                         <== NOT EXECUTED
  rtems_termios_baud_t termios_baud                                   
)                                                                     
{                                                                     
  int baud_index;                                                     
                                                                      
  switch (termios_baud) {                                             
   44700:	720f           	moveq #15,%d1                               <== NOT EXECUTED
   44702:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   44704:	6716           	beqs 4471c <rtems_termios_baud_to_index+0xdc><== NOT EXECUTED
   44706:	0c80 0000 1001 	cmpil #4097,%d0                             <== NOT EXECUTED
   4470c:	6600 ff70      	bnew 4467e <rtems_termios_baud_to_index+0x3e><== NOT EXECUTED
    case B1800:     baud_index = 10;  break;                          
    case B2400:     baud_index = 11;  break;                          
    case B4800:     baud_index = 12;  break;                          
    case B9600:     baud_index = 13;  break;                          
    case B19200:    baud_index = 14;  break;                          
    case B38400:    baud_index = 15;  break;                          
   44710:	7010           	moveq #16,%d0                               <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   44712:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44714:	4e75           	rts                                         <== NOT EXECUTED
    case B9600:     baud_index = 13;  break;                          
    case B19200:    baud_index = 14;  break;                          
    case B38400:    baud_index = 15;  break;                          
    case B57600:    baud_index = 16;  break;                          
    case B115200:   baud_index = 17;  break;                          
    case B230400:   baud_index = 18;  break;                          
   44716:	7013           	moveq #19,%d0                               <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   44718:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4471a:	4e75           	rts                                         <== NOT EXECUTED
    case B1200:     baud_index =  9;  break;                          
    case B1800:     baud_index = 10;  break;                          
    case B2400:     baud_index = 11;  break;                          
    case B4800:     baud_index = 12;  break;                          
    case B9600:     baud_index = 13;  break;                          
    case B19200:    baud_index = 14;  break;                          
   4471c:	700f           	moveq #15,%d0                               <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   4471e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44720:	4e75           	rts                                         <== NOT EXECUTED
  rtems_termios_baud_t termios_baud                                   
)                                                                     
{                                                                     
  int baud_index;                                                     
                                                                      
  switch (termios_baud) {                                             
   44722:	7002           	moveq #2,%d0                                <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   44724:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44726:	4e75           	rts                                         <== NOT EXECUTED
    case B4800:     baud_index = 12;  break;                          
    case B9600:     baud_index = 13;  break;                          
    case B19200:    baud_index = 14;  break;                          
    case B38400:    baud_index = 15;  break;                          
    case B57600:    baud_index = 16;  break;                          
    case B115200:   baud_index = 17;  break;                          
   44728:	7012           	moveq #18,%d0                               <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   4472a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4472c:	4e75           	rts                                         <== NOT EXECUTED
    case B600:      baud_index =  8;  break;                          
    case B1200:     baud_index =  9;  break;                          
    case B1800:     baud_index = 10;  break;                          
    case B2400:     baud_index = 11;  break;                          
    case B4800:     baud_index = 12;  break;                          
    case B9600:     baud_index = 13;  break;                          
   4472e:	700e           	moveq #14,%d0                               <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   44730:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44732:	4e75           	rts                                         <== NOT EXECUTED
    case B0:        baud_index =  0;  break;                          
    case B50:       baud_index =  1;  break;                          
    case B75:       baud_index =  2;  break;                          
    case B110:      baud_index =  3;  break;                          
    case B134:      baud_index =  4;  break;                          
    case B150:      baud_index =  5;  break;                          
   44734:	7006           	moveq #6,%d0                                <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   44736:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44738:	4e75           	rts                                         <== NOT EXECUTED
  rtems_termios_baud_t termios_baud                                   
)                                                                     
{                                                                     
  int baud_index;                                                     
                                                                      
  switch (termios_baud) {                                             
   4473a:	7001           	moveq #1,%d0                                <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   4473c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4473e:	4e75           	rts                                         <== NOT EXECUTED
    case B150:      baud_index =  5;  break;                          
    case B200:      baud_index =  6;  break;                          
    case B300:      baud_index =  7;  break;                          
    case B600:      baud_index =  8;  break;                          
    case B1200:     baud_index =  9;  break;                          
    case B1800:     baud_index = 10;  break;                          
   44740:	700b           	moveq #11,%d0                               <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   44742:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44744:	4e75           	rts                                         <== NOT EXECUTED
    case B2400:     baud_index = 11;  break;                          
    case B4800:     baud_index = 12;  break;                          
    case B9600:     baud_index = 13;  break;                          
    case B19200:    baud_index = 14;  break;                          
    case B38400:    baud_index = 15;  break;                          
    case B57600:    baud_index = 16;  break;                          
   44746:	7011           	moveq #17,%d0                               <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   44748:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4474a:	4e75           	rts                                         <== NOT EXECUTED
    case B50:       baud_index =  1;  break;                          
    case B75:       baud_index =  2;  break;                          
    case B110:      baud_index =  3;  break;                          
    case B134:      baud_index =  4;  break;                          
    case B150:      baud_index =  5;  break;                          
    case B200:      baud_index =  6;  break;                          
   4474c:	7007           	moveq #7,%d0                                <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   4474e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44750:	4e75           	rts                                         <== NOT EXECUTED
    case B200:      baud_index =  6;  break;                          
    case B300:      baud_index =  7;  break;                          
    case B600:      baud_index =  8;  break;                          
    case B1200:     baud_index =  9;  break;                          
    case B1800:     baud_index = 10;  break;                          
    case B2400:     baud_index = 11;  break;                          
   44752:	700c           	moveq #12,%d0                               <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   44754:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44756:	4e75           	rts                                         <== NOT EXECUTED
    case B110:      baud_index =  3;  break;                          
    case B134:      baud_index =  4;  break;                          
    case B150:      baud_index =  5;  break;                          
    case B200:      baud_index =  6;  break;                          
    case B300:      baud_index =  7;  break;                          
    case B600:      baud_index =  8;  break;                          
   44758:	7009           	moveq #9,%d0                                <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   4475a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4475c:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  switch (termios_baud) {                                             
    case B0:        baud_index =  0;  break;                          
    case B50:       baud_index =  1;  break;                          
    case B75:       baud_index =  2;  break;                          
    case B110:      baud_index =  3;  break;                          
   4475e:	7004           	moveq #4,%d0                                <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   44760:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   44762:	4e75           	rts                                         <== NOT EXECUTED
  rtems_termios_baud_t termios_baud                                   
)                                                                     
{                                                                     
  int baud_index;                                                     
                                                                      
  switch (termios_baud) {                                             
   44764:	4a80           	tstl %d0                                    
   44766:	6600 ff16      	bnew 4467e <rtems_termios_baud_to_index+0x3e>
   4476a:	4280           	clrl %d0                                    <== NOT EXECUTED
    case B460800:   baud_index = 19;  break;                          
    default:        baud_index = -1;  break;                          
  }                                                                   
                                                                      
  return baud_index;                                                  
}                                                                     
   4476c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000433c4 <rtems_termios_baud_to_number>:                              
    case B110:      baud =    110;  break;                            
    case B134:      baud =    134;  break;                            
    case B150:      baud =    150;  break;                            
    case B200:      baud =    200;  break;                            
    case B300:      baud =    300;  break;                            
    case B600:      baud =    600;  break;                            
   433c4:	203c 0000 04b0 	movel #1200,%d0                             
#include <rtems/termiostypes.h>                                       
                                                                      
int32_t rtems_termios_baud_to_number(                                 
  int termios_baud                                                    
)                                                                     
{                                                                     
   433ca:	4e56 0000      	linkw %fp,#0                                
   433ce:	222e 0008      	movel %fp@(8),%d1                           
   433d2:	2f02           	movel %d2,%sp@-                             
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   433d4:	7409           	moveq #9,%d2                                
   433d6:	b481           	cmpl %d1,%d2                                
   433d8:	6740           	beqs 4341a <rtems_termios_baud_to_number+0x56>
   433da:	6c44           	bges 43420 <rtems_termios_baud_to_number+0x5c>
    case B600:      baud =    600;  break;                            
    case B1200:     baud =   1200;  break;                            
    case B1800:     baud =   1800;  break;                            
    case B2400:     baud =   2400;  break;                            
    case B4800:     baud =   4800;  break;                            
    case B9600:     baud =   9600;  break;                            
   433dc:	203c 0000 4b00 	movel #19200,%d0                            
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   433e2:	740e           	moveq #14,%d2                               
   433e4:	b481           	cmpl %d1,%d2                                
   433e6:	6732           	beqs 4341a <rtems_termios_baud_to_number+0x56>
   433e8:	6c68           	bges 43452 <rtems_termios_baud_to_number+0x8e>
    case B2400:     baud =   2400;  break;                            
    case B4800:     baud =   4800;  break;                            
    case B9600:     baud =   9600;  break;                            
    case B19200:    baud =  19200;  break;                            
    case B38400:    baud =  38400;  break;                            
    case B57600:    baud =  57600;  break;                            
   433ea:	203c 0001 c200 	movel #115200,%d0                           
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   433f0:	0c81 0000 1002 	cmpil #4098,%d1                             
   433f6:	6722           	beqs 4341a <rtems_termios_baud_to_number+0x56>
   433f8:	6f00 00c0      	blew 434ba <rtems_termios_baud_to_number+0xf6>
    case B4800:     baud =   4800;  break;                            
    case B9600:     baud =   9600;  break;                            
    case B19200:    baud =  19200;  break;                            
    case B38400:    baud =  38400;  break;                            
    case B57600:    baud =  57600;  break;                            
    case B115200:   baud = 115200;  break;                            
   433fc:	203c 0003 8400 	movel #230400,%d0                           
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   43402:	0c81 0000 1003 	cmpil #4099,%d1                             
   43408:	6710           	beqs 4341a <rtems_termios_baud_to_number+0x56>
    case B9600:     baud =   9600;  break;                            
    case B19200:    baud =  19200;  break;                            
    case B38400:    baud =  38400;  break;                            
    case B57600:    baud =  57600;  break;                            
    case B115200:   baud = 115200;  break;                            
    case B230400:   baud = 230400;  break;                            
   4340a:	203c 0007 0800 	movel #460800,%d0                           
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   43410:	0c81 0000 1004 	cmpil #4100,%d1                             
   43416:	6702           	beqs 4341a <rtems_termios_baud_to_number+0x56>
    case B19200:    baud =  19200;  break;                            
    case B38400:    baud =  38400;  break;                            
    case B57600:    baud =  57600;  break;                            
    case B115200:   baud = 115200;  break;                            
    case B230400:   baud = 230400;  break;                            
    case B460800:   baud = 460800;  break;                            
   43418:	70ff           	moveq #-1,%d0                               
    default:        baud =     -1;  break;                            
  }                                                                   
                                                                      
  return baud;                                                        
}                                                                     
   4341a:	241f           	movel %sp@+,%d2                             
   4341c:	4e5e           	unlk %fp                                    
   4341e:	4e75           	rts                                         
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   43420:	143c 0004      	moveb #4,%d2                                
    case B0:        baud =      0;  break;                            
    case B50:       baud =     50;  break;                            
    case B75:       baud =     75;  break;                            
    case B110:      baud =    110;  break;                            
   43424:	303c 0086      	movew #134,%d0                              
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   43428:	b481           	cmpl %d1,%d2                                
   4342a:	67ee           	beqs 4341a <rtems_termios_baud_to_number+0x56>
   4342c:	6d54           	blts 43482 <rtems_termios_baud_to_number+0xbe>
   4342e:	103c 0001      	moveb #1,%d0                                
   43432:	b081           	cmpl %d1,%d0                                
   43434:	6700 00a6      	beqw 434dc <rtems_termios_baud_to_number+0x118>
   43438:	6c00 00b2      	bgew 434ec <rtems_termios_baud_to_number+0x128>
   4343c:	7402           	moveq #2,%d2                                
   4343e:	b481           	cmpl %d1,%d2                                
   43440:	6700 00a2      	beqw 434e4 <rtems_termios_baud_to_number+0x120>
   43444:	7003           	moveq #3,%d0                                
   43446:	b081           	cmpl %d1,%d0                                
   43448:	66ce           	bnes 43418 <rtems_termios_baud_to_number+0x54>
    case B460800:   baud = 460800;  break;                            
    default:        baud =     -1;  break;                            
  }                                                                   
                                                                      
  return baud;                                                        
}                                                                     
   4344a:	241f           	movel %sp@+,%d2                             
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
    case B0:        baud =      0;  break;                            
    case B50:       baud =     50;  break;                            
    case B75:       baud =     75;  break;                            
   4344c:	706e           	moveq #110,%d0                              
    case B460800:   baud = 460800;  break;                            
    default:        baud =     -1;  break;                            
  }                                                                   
                                                                      
  return baud;                                                        
}                                                                     
   4344e:	4e5e           	unlk %fp                                    
   43450:	4e75           	rts                                         
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   43452:	143c 000b      	moveb #11,%d2                               
    case B150:      baud =    150;  break;                            
    case B200:      baud =    200;  break;                            
    case B300:      baud =    300;  break;                            
    case B600:      baud =    600;  break;                            
    case B1200:     baud =   1200;  break;                            
    case B1800:     baud =   1800;  break;                            
   43456:	303c 0960      	movew #2400,%d0                             
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   4345a:	b481           	cmpl %d1,%d2                                
   4345c:	67bc           	beqs 4341a <rtems_termios_baud_to_number+0x56>
    case B134:      baud =    134;  break;                            
    case B150:      baud =    150;  break;                            
    case B200:      baud =    200;  break;                            
    case B300:      baud =    300;  break;                            
    case B600:      baud =    600;  break;                            
    case B1200:     baud =   1200;  break;                            
   4345e:	303c 0708      	movew #1800,%d0                             
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   43462:	b481           	cmpl %d1,%d2                                
   43464:	6eb4           	bgts 4341a <rtems_termios_baud_to_number+0x56>
   43466:	143c 000c      	moveb #12,%d2                               
    case B200:      baud =    200;  break;                            
    case B300:      baud =    300;  break;                            
    case B600:      baud =    600;  break;                            
    case B1200:     baud =   1200;  break;                            
    case B1800:     baud =   1800;  break;                            
    case B2400:     baud =   2400;  break;                            
   4346a:	303c 12c0      	movew #4800,%d0                             
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   4346e:	b481           	cmpl %d1,%d2                                
   43470:	67a8           	beqs 4341a <rtems_termios_baud_to_number+0x56>
   43472:	143c 000d      	moveb #13,%d2                               
    case B300:      baud =    300;  break;                            
    case B600:      baud =    600;  break;                            
    case B1200:     baud =   1200;  break;                            
    case B1800:     baud =   1800;  break;                            
    case B2400:     baud =   2400;  break;                            
    case B4800:     baud =   4800;  break;                            
   43476:	303c 2580      	movew #9600,%d0                             
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   4347a:	b481           	cmpl %d1,%d2                                
   4347c:	679c           	beqs 4341a <rtems_termios_baud_to_number+0x56>
    case B19200:    baud =  19200;  break;                            
    case B38400:    baud =  38400;  break;                            
    case B57600:    baud =  57600;  break;                            
    case B115200:   baud = 115200;  break;                            
    case B230400:   baud = 230400;  break;                            
    case B460800:   baud = 460800;  break;                            
   4347e:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   43480:	6098           	bras 4341a <rtems_termios_baud_to_number+0x56><== NOT EXECUTED
    case B0:        baud =      0;  break;                            
    case B50:       baud =     50;  break;                            
    case B75:       baud =     75;  break;                            
    case B110:      baud =    110;  break;                            
    case B134:      baud =    134;  break;                            
    case B150:      baud =    150;  break;                            
   43482:	203c 0000 00c8 	movel #200,%d0                              
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   43488:	7406           	moveq #6,%d2                                
   4348a:	b481           	cmpl %d1,%d2                                
   4348c:	678c           	beqs 4341a <rtems_termios_baud_to_number+0x56>
    case B0:        baud =      0;  break;                            
    case B50:       baud =     50;  break;                            
    case B75:       baud =     75;  break;                            
    case B110:      baud =    110;  break;                            
    case B134:      baud =    134;  break;                            
   4348e:	0680 ffff ffce 	addil #-50,%d0                              
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   43494:	b481           	cmpl %d1,%d2                                
   43496:	6e82           	bgts 4341a <rtems_termios_baud_to_number+0x56>
   43498:	143c 0007      	moveb #7,%d2                                
    case B50:       baud =     50;  break;                            
    case B75:       baud =     75;  break;                            
    case B110:      baud =    110;  break;                            
    case B134:      baud =    134;  break;                            
    case B150:      baud =    150;  break;                            
    case B200:      baud =    200;  break;                            
   4349c:	303c 012c      	movew #300,%d0                              
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   434a0:	b481           	cmpl %d1,%d2                                
   434a2:	6700 ff76      	beqw 4341a <rtems_termios_baud_to_number+0x56>
   434a6:	143c 0008      	moveb #8,%d2                                
    case B75:       baud =     75;  break;                            
    case B110:      baud =    110;  break;                            
    case B134:      baud =    134;  break;                            
    case B150:      baud =    150;  break;                            
    case B200:      baud =    200;  break;                            
    case B300:      baud =    300;  break;                            
   434aa:	303c 0258      	movew #600,%d0                              
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   434ae:	b481           	cmpl %d1,%d2                                
   434b0:	6700 ff68      	beqw 4341a <rtems_termios_baud_to_number+0x56>
    case B19200:    baud =  19200;  break;                            
    case B38400:    baud =  38400;  break;                            
    case B57600:    baud =  57600;  break;                            
    case B115200:   baud = 115200;  break;                            
    case B230400:   baud = 230400;  break;                            
    case B460800:   baud = 460800;  break;                            
   434b4:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   434b6:	6000 ff62      	braw 4341a <rtems_termios_baud_to_number+0x56><== NOT EXECUTED
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   434ba:	740f           	moveq #15,%d2                               
    case B1200:     baud =   1200;  break;                            
    case B1800:     baud =   1800;  break;                            
    case B2400:     baud =   2400;  break;                            
    case B4800:     baud =   4800;  break;                            
    case B9600:     baud =   9600;  break;                            
    case B19200:    baud =  19200;  break;                            
   434bc:	203c 0000 9600 	movel #38400,%d0                            
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   434c2:	b481           	cmpl %d1,%d2                                
   434c4:	6700 ff54      	beqw 4341a <rtems_termios_baud_to_number+0x56>
    case B1800:     baud =   1800;  break;                            
    case B2400:     baud =   2400;  break;                            
    case B4800:     baud =   4800;  break;                            
    case B9600:     baud =   9600;  break;                            
    case B19200:    baud =  19200;  break;                            
    case B38400:    baud =  38400;  break;                            
   434c8:	303c e100      	movew #-7936,%d0                            
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   434cc:	0c81 0000 1001 	cmpil #4097,%d1                             
   434d2:	6700 ff46      	beqw 4341a <rtems_termios_baud_to_number+0x56>
    case B19200:    baud =  19200;  break;                            
    case B38400:    baud =  38400;  break;                            
    case B57600:    baud =  57600;  break;                            
    case B115200:   baud = 115200;  break;                            
    case B230400:   baud = 230400;  break;                            
    case B460800:   baud = 460800;  break;                            
   434d6:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   434d8:	6000 ff40      	braw 4341a <rtems_termios_baud_to_number+0x56><== NOT EXECUTED
    default:        baud =     -1;  break;                            
  }                                                                   
                                                                      
  return baud;                                                        
}                                                                     
   434dc:	241f           	movel %sp@+,%d2                             
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   434de:	7032           	moveq #50,%d0                               
    case B460800:   baud = 460800;  break;                            
    default:        baud =     -1;  break;                            
  }                                                                   
                                                                      
  return baud;                                                        
}                                                                     
   434e0:	4e5e           	unlk %fp                                    
   434e2:	4e75           	rts                                         
   434e4:	241f           	movel %sp@+,%d2                             
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   434e6:	704b           	moveq #75,%d0                               
    case B460800:   baud = 460800;  break;                            
    default:        baud =     -1;  break;                            
  }                                                                   
                                                                      
  return baud;                                                        
}                                                                     
   434e8:	4e5e           	unlk %fp                                    
   434ea:	4e75           	rts                                         
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   434ec:	4a81           	tstl %d1                                    
   434ee:	6600 ff28      	bnew 43418 <rtems_termios_baud_to_number+0x54>
    case B460800:   baud = 460800;  break;                            
    default:        baud =     -1;  break;                            
  }                                                                   
                                                                      
  return baud;                                                        
}                                                                     
   434f2:	241f           	movel %sp@+,%d2                             
  int termios_baud                                                    
)                                                                     
{                                                                     
  int32_t baud;                                                       
                                                                      
  switch (termios_baud) {                                             
   434f4:	4280           	clrl %d0                                    
    case B460800:   baud = 460800;  break;                            
    default:        baud =     -1;  break;                            
  }                                                                   
                                                                      
  return baud;                                                        
}                                                                     
   434f6:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      
00043538 <rtems_termios_bufsize>:                                     
{                                                                     
  rtems_termios_cbufsize        = cbufsize;                           
  rtems_termios_raw_input_size  = raw_input;                          
  rtems_termios_raw_output_size = raw_output;                         
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   43538:	4280           	clrl %d0                                    <== NOT EXECUTED
rtems_status_code rtems_termios_bufsize (                             
  int cbufsize,                                                       
  int raw_input,                                                      
  int raw_output                                                      
)                                                                     
{                                                                     
   4353a:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  rtems_termios_cbufsize        = cbufsize;                           
   4353e:	41ee 0008      	lea %fp@(8),%a0                             <== NOT EXECUTED
   43542:	23d0 0005 d814 	movel %a0@,5d814 <rtems_termios_cbufsize>   <== NOT EXECUTED
  rtems_termios_raw_input_size  = raw_input;                          
   43548:	41ee 000c      	lea %fp@(12),%a0                            <== NOT EXECUTED
   4354c:	23d0 0005 d818 	movel %a0@,5d818 <rtems_termios_raw_input_size><== NOT EXECUTED
  rtems_termios_raw_output_size = raw_output;                         
   43552:	41ee 0010      	lea %fp@(16),%a0                            <== NOT EXECUTED
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
   43556:	4e5e           	unlk %fp                                    <== NOT EXECUTED
  int raw_output                                                      
)                                                                     
{                                                                     
  rtems_termios_cbufsize        = cbufsize;                           
  rtems_termios_raw_input_size  = raw_input;                          
  rtems_termios_raw_output_size = raw_output;                         
   43558:	23d0 0005 d81c 	movel %a0@,5d81c <rtems_termios_raw_output_size><== NOT EXECUTED
  return RTEMS_SUCCESSFUL;                                            
}                                                                     
                                                                      
00044b34 <rtems_termios_close>:                                       
	}                                                                    
}                                                                     
                                                                      
rtems_status_code                                                     
rtems_termios_close (void *arg)                                       
{                                                                     
   44b34:	4e56 fff4      	linkw %fp,#-12                              
   44b38:	48d7 1c00      	moveml %a2-%a4,%sp@                         
   44b3c:	266e 0008      	moveal %fp@(8),%a3                          
	rtems_libio_open_close_args_t *args = arg;                           
	struct rtems_termios_tty *tty = args->iop->data1;                    
	rtems_status_code sc;                                                
                                                                      
	sc = rtems_semaphore_obtain (rtems_termios_ttyMutex, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
   44b40:	49f9 0004 5d2c 	lea 45d2c <rtems_semaphore_obtain>,%a4      
                                                                      
rtems_status_code                                                     
rtems_termios_close (void *arg)                                       
{                                                                     
	rtems_libio_open_close_args_t *args = arg;                           
	struct rtems_termios_tty *tty = args->iop->data1;                    
   44b46:	2053           	moveal %a3@,%a0                             
   44b48:	2468 0034      	moveal %a0@(52),%a2                         
	rtems_status_code sc;                                                
                                                                      
	sc = rtems_semaphore_obtain (rtems_termios_ttyMutex, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
   44b4c:	42a7           	clrl %sp@-                                  
   44b4e:	42a7           	clrl %sp@-                                  
   44b50:	2f39 0005 ee5c 	movel 5ee5c <rtems_termios_ttyMutex>,%sp@-  
   44b56:	4e94           	jsr %a4@                                    
	if (sc != RTEMS_SUCCESSFUL)                                          
   44b58:	4fef 000c      	lea %sp@(12),%sp                            
   44b5c:	4a80           	tstl %d0                                    
   44b5e:	6600 011c      	bnew 44c7c <rtems_termios_close+0x148>      
		rtems_fatal_error_occurred (sc);                                    
	if (--tty->refcount == 0) {                                          
   44b62:	202a 0008      	movel %a2@(8),%d0                           
   44b66:	5380           	subql #1,%d0                                
   44b68:	2540 0008      	movel %d0,%a2@(8)                           
   44b6c:	6600 00a4      	bnew 44c12 <rtems_termios_close+0xde>       
                if (rtems_termios_linesw[tty->t_line].l_close != NULL) {
   44b70:	202a 00cc      	movel %a2@(204),%d0                         
   44b74:	41f9 0005 e614 	lea 5e614 <rtems_termios_linesw>,%a0        
   44b7a:	e788           	lsll #3,%d0                                 
   44b7c:	2070 0c04      	moveal %a0@(00000004,%d0:l:4),%a0           
   44b80:	4a88           	tstl %a0                                    
   44b82:	6700 012c      	beqw 44cb0 <rtems_termios_close+0x17c>      
			/*                                                                 
			 * call discipline-specific close                                  
			 */                                                                
			sc = rtems_termios_linesw[tty->t_line].l_close(tty);               
   44b86:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   44b88:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   44b8a:	588f           	addql #4,%sp                                <== NOT EXECUTED
				rtems_fatal_error_occurred (sc);                                  
			}                                                                  
		        drainOutput (tty);                                          
		}                                                                   
                                                                      
		if (tty->device.outputUsesInterrupts                                
   44b8c:	7002           	moveq #2,%d0                                <== NOT EXECUTED
   44b8e:	b0aa 00b4      	cmpl %a2@(180),%d0                          <== NOT EXECUTED
   44b92:	6700 00c0      	beqw 44c54 <rtems_termios_close+0x120>      <== NOT EXECUTED
                                  tty->txTaskId,                      
				  TERMIOS_TX_TERMINATE_EVENT);                                    
			if (sc != RTEMS_SUCCESSFUL)                                        
				rtems_fatal_error_occurred (sc);                                  
		}                                                                   
		if (tty->device.lastClose)                                          
   44b96:	206a 009c      	moveal %a2@(156),%a0                        
   44b9a:	4a88           	tstl %a0                                    
   44b9c:	6710           	beqs 44bae <rtems_termios_close+0x7a>       
			 (*tty->device.lastClose)(tty->major, tty->minor, arg);            
   44b9e:	2f0b           	movel %a3,%sp@-                             
   44ba0:	2f2a 0010      	movel %a2@(16),%sp@-                        
   44ba4:	2f2a 000c      	movel %a2@(12),%sp@-                        
   44ba8:	4e90           	jsr %a0@                                    
   44baa:	4fef 000c      	lea %sp@(12),%sp                            
		if (tty->forw == NULL) {                                            
   44bae:	2052           	moveal %a2@,%a0                             
   44bb0:	4a88           	tstl %a0                                    
   44bb2:	6700 00d0      	beqw 44c84 <rtems_termios_close+0x150>      
			if ( rtems_termios_ttyTail != NULL ) {                             
				rtems_termios_ttyTail->forw = NULL;                               
			}                                                                  
		}                                                                   
		else {                                                              
			tty->forw->back = tty->back;                                       
   44bb6:	216a 0004 0004 	movel %a2@(4),%a0@(4)                       
		}                                                                   
		if (tty->back == NULL) {                                            
   44bbc:	206a 0004      	moveal %a2@(4),%a0                          
   44bc0:	4a88           	tstl %a0                                    
   44bc2:	6700 00d8      	beqw 44c9c <rtems_termios_close+0x168>      
			if ( rtems_termios_ttyHead != NULL ) {                             
				rtems_termios_ttyHead->back = NULL;                               
			}                                                                  
		}                                                                   
		else {                                                              
			tty->back->forw = tty->forw;                                       
   44bc6:	2092           	movel %a2@,%a0@                             <== NOT EXECUTED
		}                                                                   
		rtems_semaphore_delete (tty->isem);                                 
   44bc8:	2f2a 0014      	movel %a2@(20),%sp@-                        
   44bcc:	47f9 0004 5c54 	lea 45c54 <rtems_semaphore_delete>,%a3      
   44bd2:	4e93           	jsr %a3@                                    
		rtems_semaphore_delete (tty->osem);                                 
   44bd4:	2f2a 0018      	movel %a2@(24),%sp@-                        
   44bd8:	4e93           	jsr %a3@                                    
		rtems_semaphore_delete (tty->rawOutBuf.Semaphore);                  
   44bda:	2f2a 008c      	movel %a2@(140),%sp@-                       
   44bde:	4e93           	jsr %a3@                                    
		if ((tty->device.pollRead == NULL) ||                               
   44be0:	4fef 000c      	lea %sp@(12),%sp                            
   44be4:	4aaa 00a0      	tstl %a2@(160)                              
   44be8:	6740           	beqs 44c2a <rtems_termios_close+0xf6>       
		    (tty->device.outputUsesInterrupts == TERMIOS_TASK_DRIVEN))      
   44bea:	7002           	moveq #2,%d0                                
   44bec:	b0aa 00b4      	cmpl %a2@(180),%d0                          
   44bf0:	6738           	beqs 44c2a <rtems_termios_close+0xf6>       
			rtems_semaphore_delete (tty->rawInBuf.Semaphore);                  
		free (tty->rawInBuf.theBuf);                                        
   44bf2:	2f2a 0058      	movel %a2@(88),%sp@-                        
   44bf6:	47f9 0004 a6f4 	lea 4a6f4 <free>,%a3                        
   44bfc:	4e93           	jsr %a3@                                    
		free (tty->rawOutBuf.theBuf);                                       
   44bfe:	2f2a 007c      	movel %a2@(124),%sp@-                       
   44c02:	4e93           	jsr %a3@                                    
		free (tty->cbuf);                                                   
   44c04:	2f2a 001c      	movel %a2@(28),%sp@-                        
   44c08:	4e93           	jsr %a3@                                    
		free (tty);                                                         
   44c0a:	2f0a           	movel %a2,%sp@-                             
   44c0c:	4e93           	jsr %a3@                                    
   44c0e:	4fef 0010      	lea %sp@(16),%sp                            
	}                                                                    
	rtems_semaphore_release (rtems_termios_ttyMutex);                    
   44c12:	2f39 0005 ee5c 	movel 5ee5c <rtems_termios_ttyMutex>,%sp@-  
   44c18:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         
	return RTEMS_SUCCESSFUL;                                             
}                                                                     
   44c1e:	4cee 1c00 fff4 	moveml %fp@(-12),%a2-%a4                    
   44c24:	4280           	clrl %d0                                    
   44c26:	4e5e           	unlk %fp                                    
   44c28:	4e75           	rts                                         
		rtems_semaphore_delete (tty->isem);                                 
		rtems_semaphore_delete (tty->osem);                                 
		rtems_semaphore_delete (tty->rawOutBuf.Semaphore);                  
		if ((tty->device.pollRead == NULL) ||                               
		    (tty->device.outputUsesInterrupts == TERMIOS_TASK_DRIVEN))      
			rtems_semaphore_delete (tty->rawInBuf.Semaphore);                  
   44c2a:	2f2a 0068      	movel %a2@(104),%sp@-                       
   44c2e:	4e93           	jsr %a3@                                    
   44c30:	588f           	addql #4,%sp                                
		free (tty->rawInBuf.theBuf);                                        
   44c32:	47f9 0004 a6f4 	lea 4a6f4 <free>,%a3                        
   44c38:	2f2a 0058      	movel %a2@(88),%sp@-                        
   44c3c:	4e93           	jsr %a3@                                    
		free (tty->rawOutBuf.theBuf);                                       
   44c3e:	2f2a 007c      	movel %a2@(124),%sp@-                       
   44c42:	4e93           	jsr %a3@                                    
		free (tty->cbuf);                                                   
   44c44:	2f2a 001c      	movel %a2@(28),%sp@-                        
   44c48:	4e93           	jsr %a3@                                    
		free (tty);                                                         
   44c4a:	2f0a           	movel %a2,%sp@-                             
   44c4c:	4e93           	jsr %a3@                                    
   44c4e:	4fef 0010      	lea %sp@(16),%sp                            
   44c52:	60be           	bras 44c12 <rtems_termios_close+0xde>       
		if (tty->device.outputUsesInterrupts                                
		    == TERMIOS_TASK_DRIVEN) {                                       
			/*                                                                 
			 * send "terminate" to I/O tasks                                   
			 */                                                                
			sc = rtems_event_send(                                             
   44c54:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   44c58:	49f9 0004 5814 	lea 45814 <rtems_event_send>,%a4            <== NOT EXECUTED
   44c5e:	2f2a 00c4      	movel %a2@(196),%sp@-                       <== NOT EXECUTED
   44c62:	4e94           	jsr %a4@                                    <== NOT EXECUTED
                                  tty->rxTaskId,                      
				  TERMIOS_RX_TERMINATE_EVENT);                                    
			if (sc != RTEMS_SUCCESSFUL)                                        
   44c64:	508f           	addql #8,%sp                                <== NOT EXECUTED
   44c66:	4a80           	tstl %d0                                    <== NOT EXECUTED
   44c68:	6612           	bnes 44c7c <rtems_termios_close+0x148>      <== NOT EXECUTED
				rtems_fatal_error_occurred (sc);                                  
			sc = rtems_event_send(                                             
   44c6a:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   44c6e:	2f2a 00c8      	movel %a2@(200),%sp@-                       <== NOT EXECUTED
   44c72:	4e94           	jsr %a4@                                    <== NOT EXECUTED
                                  tty->txTaskId,                      
				  TERMIOS_TX_TERMINATE_EVENT);                                    
			if (sc != RTEMS_SUCCESSFUL)                                        
   44c74:	508f           	addql #8,%sp                                <== NOT EXECUTED
   44c76:	4a80           	tstl %d0                                    <== NOT EXECUTED
   44c78:	6700 ff1c      	beqw 44b96 <rtems_termios_close+0x62>       <== NOT EXECUTED
				rtems_fatal_error_occurred (sc);                                  
   44c7c:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   44c7e:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
		}                                                                   
		if (tty->device.lastClose)                                          
			 (*tty->device.lastClose)(tty->major, tty->minor, arg);            
		if (tty->forw == NULL) {                                            
			rtems_termios_ttyTail = tty->back;                                 
   44c84:	206a 0004      	moveal %a2@(4),%a0                          
   44c88:	23c8 0005 ee60 	movel %a0,5ee60 <rtems_termios_ttyTail>     
			if ( rtems_termios_ttyTail != NULL ) {                             
   44c8e:	6748           	beqs 44cd8 <rtems_termios_close+0x1a4>      
				rtems_termios_ttyTail->forw = NULL;                               
   44c90:	4290           	clrl %a0@                                   <== NOT EXECUTED
			}                                                                  
		}                                                                   
		else {                                                              
			tty->forw->back = tty->back;                                       
		}                                                                   
		if (tty->back == NULL) {                                            
   44c92:	206a 0004      	moveal %a2@(4),%a0                          <== NOT EXECUTED
   44c96:	4a88           	tstl %a0                                    <== NOT EXECUTED
   44c98:	6600 ff2c      	bnew 44bc6 <rtems_termios_close+0x92>       <== NOT EXECUTED
   44c9c:	2052           	moveal %a2@,%a0                             
			rtems_termios_ttyHead = tty->forw;                                 
   44c9e:	23c8 0005 ee64 	movel %a0,5ee64 <rtems_termios_ttyHead>     
			if ( rtems_termios_ttyHead != NULL ) {                             
   44ca4:	6700 ff22      	beqw 44bc8 <rtems_termios_close+0x94>       
				rtems_termios_ttyHead->back = NULL;                               
   44ca8:	42a8 0004      	clrl %a0@(4)                                
   44cac:	6000 ff1a      	braw 44bc8 <rtems_termios_close+0x94>       
		}                                                                   
		else {                                                              
			/*                                                                 
			 * default: just flush output buffer                               
			 */                                                                
			sc = rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
   44cb0:	42a7           	clrl %sp@-                                  
   44cb2:	42a7           	clrl %sp@-                                  
   44cb4:	2f2a 0018      	movel %a2@(24),%sp@-                        
   44cb8:	4e94           	jsr %a4@                                    
			if (sc != RTEMS_SUCCESSFUL) {                                      
   44cba:	4fef 000c      	lea %sp@(12),%sp                            
   44cbe:	4a80           	tstl %d0                                    
   44cc0:	66ba           	bnes 44c7c <rtems_termios_close+0x148>      
				rtems_fatal_error_occurred (sc);                                  
			}                                                                  
		        drainOutput (tty);                                          
   44cc2:	2f0a           	movel %a2,%sp@-                             
   44cc4:	4eba f6e4      	jsr %pc@(443aa <drainOutput>)               
   44cc8:	588f           	addql #4,%sp                                
		}                                                                   
                                                                      
		if (tty->device.outputUsesInterrupts                                
   44cca:	7002           	moveq #2,%d0                                
   44ccc:	b0aa 00b4      	cmpl %a2@(180),%d0                          
   44cd0:	6600 fec4      	bnew 44b96 <rtems_termios_close+0x62>       
   44cd4:	6000 ff7e      	braw 44c54 <rtems_termios_close+0x120>      <== NOT EXECUTED
		}                                                                   
		else {                                                              
			tty->forw->back = tty->back;                                       
		}                                                                   
		if (tty->back == NULL) {                                            
			rtems_termios_ttyHead = tty->forw;                                 
   44cd8:	42b9 0005 ee64 	clrl 5ee64 <rtems_termios_ttyHead>          
   44cde:	6000 fee8      	braw 44bc8 <rtems_termios_close+0x94>       
                                                                      
000437ae <rtems_termios_dequeue_characters>:                          
 * for each transmitted character.                                    
 * It returns number of characters left to transmit                   
 */                                                                   
int                                                                   
rtems_termios_dequeue_characters (void *ttyp, int len)                
{                                                                     
   437ae:	4e56 0000      	linkw %fp,#0                                
	rtems_status_code sc;                                                
                                                                      
	/*                                                                   
	 * sum up character count already sent                               
	 */                                                                  
	tty->t_dqlen += len;                                                 
   437b2:	202e 000c      	movel %fp@(12),%d0                          
 * for each transmitted character.                                    
 * It returns number of characters left to transmit                   
 */                                                                   
int                                                                   
rtems_termios_dequeue_characters (void *ttyp, int len)                
{                                                                     
   437b6:	206e 0008      	moveal %fp@(8),%a0                          
	rtems_status_code sc;                                                
                                                                      
	/*                                                                   
	 * sum up character count already sent                               
	 */                                                                  
	tty->t_dqlen += len;                                                 
   437ba:	d1a8 0090      	addl %d0,%a0@(144)                          
                                                                      
	if (tty->device.outputUsesInterrupts == TERMIOS_TASK_DRIVEN) {       
   437be:	7002           	moveq #2,%d0                                
   437c0:	b0a8 00b4      	cmpl %a0@(180),%d0                          
   437c4:	672a           	beqs 437f0 <rtems_termios_dequeue_characters+0x42>
				      TERMIOS_TX_START_EVENT);                                    
		if (sc != RTEMS_SUCCESSFUL)                                         
			rtems_fatal_error_occurred (sc);                                   
		return 0; /* nothing to output in IRQ... */                         
	}                                                                    
	else if (tty->t_line == PPPDISC ) {                                  
   437c6:	7005           	moveq #5,%d0                                
   437c8:	b0a8 00cc      	cmpl %a0@(204),%d0                          
   437cc:	670c           	beqs 437da <rtems_termios_dequeue_characters+0x2c>
			rtems_termios_linesw[tty->t_line].l_start(tty);                    
		}                                                                   
		return 0; /* nothing to output in IRQ... */                         
	}                                                                    
	else {                                                               
		return rtems_termios_refill_transmitter(tty);                       
   437ce:	2d48 0008      	movel %a0,%fp@(8)                           
	}                                                                    
}                                                                     
   437d2:	4e5e           	unlk %fp                                    
			rtems_termios_linesw[tty->t_line].l_start(tty);                    
		}                                                                   
		return 0; /* nothing to output in IRQ... */                         
	}                                                                    
	else {                                                               
		return rtems_termios_refill_transmitter(tty);                       
   437d4:	4ef9 0004 357c 	jmp 4357c <rtems_termios_refill_transmitter>
	}                                                                    
	else if (tty->t_line == PPPDISC ) {                                  
		/*                                                                  
		 * call any line discipline start function                          
		 */                                                                 
		if (rtems_termios_linesw[tty->t_line].l_start != NULL) {            
   437da:	2279 0005 e6c8 	moveal 5e6c8 <rtems_termios_linesw+0xb4>,%a1<== NOT EXECUTED
   437e0:	4a89           	tstl %a1                                    <== NOT EXECUTED
   437e2:	6706           	beqs 437ea <rtems_termios_dequeue_characters+0x3c><== NOT EXECUTED
			rtems_termios_linesw[tty->t_line].l_start(tty);                    
   437e4:	2f08           	movel %a0,%sp@-                             <== NOT EXECUTED
   437e6:	4e91           	jsr %a1@                                    <== NOT EXECUTED
   437e8:	588f           	addql #4,%sp                                <== NOT EXECUTED
		return 0; /* nothing to output in IRQ... */                         
	}                                                                    
	else {                                                               
		return rtems_termios_refill_transmitter(tty);                       
	}                                                                    
}                                                                     
   437ea:	4280           	clrl %d0                                    <== NOT EXECUTED
   437ec:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   437ee:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
	if (tty->device.outputUsesInterrupts == TERMIOS_TASK_DRIVEN) {       
		/*                                                                  
		 * send wake up to transmitter task                                 
		 */                                                                 
		sc = rtems_event_send(tty->txTaskId,                                
   437f0:	4878 0002      	pea 2 <DOUBLE_FLOAT>                        <== NOT EXECUTED
   437f4:	2f28 00c8      	movel %a0@(200),%sp@-                       <== NOT EXECUTED
   437f8:	4eb9 0004 5814 	jsr 45814 <rtems_event_send>                <== NOT EXECUTED
				      TERMIOS_TX_START_EVENT);                                    
		if (sc != RTEMS_SUCCESSFUL)                                         
   437fe:	508f           	addql #8,%sp                                <== NOT EXECUTED
   43800:	4a80           	tstl %d0                                    <== NOT EXECUTED
   43802:	67e6           	beqs 437ea <rtems_termios_dequeue_characters+0x3c><== NOT EXECUTED
			rtems_fatal_error_occurred (sc);                                   
   43804:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   43806:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
                                                                      
0004380c <rtems_termios_enqueue_raw_characters>:                      
 *       device receive interrupt handler.                            
 * Returns the number of characters dropped because of overflow.      
 */                                                                   
int                                                                   
rtems_termios_enqueue_raw_characters (void *ttyp, char *buf, int len) 
{                                                                     
   4380c:	4e56 ffcc      	linkw %fp,#-52                              <== NOT EXECUTED
   43810:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 <== NOT EXECUTED
   43814:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
	char c;                                                              
	int dropped = 0;                                                     
	bool flow_rcv = false; /* true, if flow control char received */     
	rtems_interrupt_level level;                                         
                                                                      
	if (rtems_termios_linesw[tty->t_line].l_rint != NULL) {              
   43818:	49f9 0005 e614 	lea 5e614 <rtems_termios_linesw>,%a4        <== NOT EXECUTED
   4381e:	202a 00cc      	movel %a2@(204),%d0                         <== NOT EXECUTED
   43822:	eb88           	lsll #5,%d0                                 <== NOT EXECUTED
 *       device receive interrupt handler.                            
 * Returns the number of characters dropped because of overflow.      
 */                                                                   
int                                                                   
rtems_termios_enqueue_raw_characters (void *ttyp, char *buf, int len) 
{                                                                     
   43824:	266e 000c      	moveal %fp@(12),%a3                         <== NOT EXECUTED
	char c;                                                              
	int dropped = 0;                                                     
	bool flow_rcv = false; /* true, if flow control char received */     
	rtems_interrupt_level level;                                         
                                                                      
	if (rtems_termios_linesw[tty->t_line].l_rint != NULL) {              
   43828:	2074 0810      	moveal %a4@(00000010,%d0:l),%a0             <== NOT EXECUTED
 *       device receive interrupt handler.                            
 * Returns the number of characters dropped because of overflow.      
 */                                                                   
int                                                                   
rtems_termios_enqueue_raw_characters (void *ttyp, char *buf, int len) 
{                                                                     
   4382c:	262e 0010      	movel %fp@(16),%d3                          <== NOT EXECUTED
	char c;                                                              
	int dropped = 0;                                                     
	bool flow_rcv = false; /* true, if flow control char received */     
	rtems_interrupt_level level;                                         
                                                                      
	if (rtems_termios_linesw[tty->t_line].l_rint != NULL) {              
   43830:	4a88           	tstl %a0                                    <== NOT EXECUTED
   43832:	6774           	beqs 438a8 <rtems_termios_enqueue_raw_characters+0x9c><== NOT EXECUTED
	  while (len--) {                                                    
   43834:	4a83           	tstl %d3                                    <== NOT EXECUTED
   43836:	6734           	beqs 4386c <rtems_termios_enqueue_raw_characters+0x60><== NOT EXECUTED
   43838:	4282           	clrl %d2                                    <== NOT EXECUTED
	    c = *buf++;                                                      
	    rtems_termios_linesw[tty->t_line].l_rint(c,tty);                 
   4383a:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4383c:	1233 2800      	moveb %a3@(00000000,%d2:l),%d1              <== NOT EXECUTED
   43840:	5282           	addql #1,%d2                                <== NOT EXECUTED
   43842:	49c1           	extbl %d1                                   <== NOT EXECUTED
   43844:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   43846:	4e90           	jsr %a0@                                    <== NOT EXECUTED
	int dropped = 0;                                                     
	bool flow_rcv = false; /* true, if flow control char received */     
	rtems_interrupt_level level;                                         
                                                                      
	if (rtems_termios_linesw[tty->t_line].l_rint != NULL) {              
	  while (len--) {                                                    
   43848:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4384a:	b483           	cmpl %d3,%d2                                <== NOT EXECUTED
   4384c:	671e           	beqs 4386c <rtems_termios_enqueue_raw_characters+0x60><== NOT EXECUTED
   4384e:	202a 00cc      	movel %a2@(204),%d0                         <== NOT EXECUTED
   43852:	eb88           	lsll #5,%d0                                 <== NOT EXECUTED
   43854:	2074 0810      	moveal %a4@(00000010,%d0:l),%a0             <== NOT EXECUTED
	    c = *buf++;                                                      
	    rtems_termios_linesw[tty->t_line].l_rint(c,tty);                 
   43858:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4385a:	1233 2800      	moveb %a3@(00000000,%d2:l),%d1              <== NOT EXECUTED
   4385e:	5282           	addql #1,%d2                                <== NOT EXECUTED
   43860:	49c1           	extbl %d1                                   <== NOT EXECUTED
   43862:	2f01           	movel %d1,%sp@-                             <== NOT EXECUTED
   43864:	4e90           	jsr %a0@                                    <== NOT EXECUTED
	int dropped = 0;                                                     
	bool flow_rcv = false; /* true, if flow control char received */     
	rtems_interrupt_level level;                                         
                                                                      
	if (rtems_termios_linesw[tty->t_line].l_rint != NULL) {              
	  while (len--) {                                                    
   43866:	508f           	addql #8,%sp                                <== NOT EXECUTED
   43868:	b483           	cmpl %d3,%d2                                <== NOT EXECUTED
   4386a:	66e2           	bnes 4384e <rtems_termios_enqueue_raw_characters+0x42><== NOT EXECUTED
	  }                                                                  
                                                                      
	  /*                                                                 
	   * check to see if rcv wakeup callback was set                     
	   */                                                                
	  if (( !tty->tty_rcvwakeup ) && ( tty->tty_rcv.sw_pfn != NULL )) {  
   4386c:	4aaa 00e4      	tstl %a2@(228)                              <== NOT EXECUTED
   43870:	6628           	bnes 4389a <rtems_termios_enqueue_raw_characters+0x8e><== NOT EXECUTED
   43872:	206a 00dc      	moveal %a2@(220),%a0                        <== NOT EXECUTED
   43876:	4a88           	tstl %a0                                    <== NOT EXECUTED
   43878:	6720           	beqs 4389a <rtems_termios_enqueue_raw_characters+0x8e><== NOT EXECUTED
	    (*tty->tty_rcv.sw_pfn)(&tty->termios, tty->tty_rcv.sw_arg);      
   4387a:	2f2a 00e0      	movel %a2@(224),%sp@-                       <== NOT EXECUTED
	    tty->tty_rcvwakeup = 1;                                          
   4387e:	4285           	clrl %d5                                    <== NOT EXECUTED
                                                                      
	  /*                                                                 
	   * check to see if rcv wakeup callback was set                     
	   */                                                                
	  if (( !tty->tty_rcvwakeup ) && ( tty->tty_rcv.sw_pfn != NULL )) {  
	    (*tty->tty_rcv.sw_pfn)(&tty->termios, tty->tty_rcv.sw_arg);      
   43880:	486a 0030      	pea %a2@(48)                                <== NOT EXECUTED
	    tty->tty_rcvwakeup = 1;                                          
   43884:	7c01           	moveq #1,%d6                                <== NOT EXECUTED
                                                                      
	  /*                                                                 
	   * check to see if rcv wakeup callback was set                     
	   */                                                                
	  if (( !tty->tty_rcvwakeup ) && ( tty->tty_rcv.sw_pfn != NULL )) {  
	    (*tty->tty_rcv.sw_pfn)(&tty->termios, tty->tty_rcv.sw_arg);      
   43886:	4e90           	jsr %a0@                                    <== NOT EXECUTED
	    tty->tty_rcvwakeup = 1;                                          
   43888:	508f           	addql #8,%sp                                <== NOT EXECUTED
	  }                                                                  
	}                                                                    
	tty->rawInBufDropped += dropped;                                     
	rtems_semaphore_release (tty->rawInBuf.Semaphore);                   
	return dropped;                                                      
}                                                                     
   4388a:	2005           	movel %d5,%d0                               <== NOT EXECUTED
	  /*                                                                 
	   * check to see if rcv wakeup callback was set                     
	   */                                                                
	  if (( !tty->tty_rcvwakeup ) && ( tty->tty_rcv.sw_pfn != NULL )) {  
	    (*tty->tty_rcv.sw_pfn)(&tty->termios, tty->tty_rcv.sw_arg);      
	    tty->tty_rcvwakeup = 1;                                          
   4388c:	2546 00e4      	movel %d6,%a2@(228)                         <== NOT EXECUTED
	  }                                                                  
	}                                                                    
	tty->rawInBufDropped += dropped;                                     
	rtems_semaphore_release (tty->rawInBuf.Semaphore);                   
	return dropped;                                                      
}                                                                     
   43890:	4cee 3cfc ffcc 	moveml %fp@(-52),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   43896:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   43898:	4e75           	rts                                         <== NOT EXECUTED
		}                                                                   
	  }                                                                  
	}                                                                    
	tty->rawInBufDropped += dropped;                                     
	rtems_semaphore_release (tty->rawInBuf.Semaphore);                   
	return dropped;                                                      
   4389a:	4285           	clrl %d5                                    <== NOT EXECUTED
}                                                                     
   4389c:	2005           	movel %d5,%d0                               <== NOT EXECUTED
   4389e:	4cee 3cfc ffcc 	moveml %fp@(-52),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   438a4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   438a6:	4e75           	rts                                         <== NOT EXECUTED
		    if ((tty->flow_ctrl & FL_OSTOP) ||                              
			(tty->rawOutBufState == rob_idle)) {                               
		      /* if tx is stopped due to XOFF or out of data */             
		      /*    call write function here                 */             
		      tty->flow_ctrl |= FL_ISNTXOF;                                 
		      (*tty->device.write)(tty->minor,                              
   438a8:	41ea 004a      	lea %a2@(74),%a0                            <== NOT EXECUTED
                                                                      
			/*                                                                 
			 * check to see if rcv wakeup callback was set                     
			 */                                                                
			if (( !tty->tty_rcvwakeup ) && ( tty->tty_rcv.sw_pfn != NULL )) {  
			  (*tty->tty_rcv.sw_pfn)(&tty->termios, tty->tty_rcv.sw_arg);      
   438ac:	4bea 0030      	lea %a2@(48),%a5                            <== NOT EXECUTED
   438b0:	4285           	clrl %d5                                    <== NOT EXECUTED
	  }                                                                  
	  if (flow_rcv) {                                                    
	    /* restart output according to FL_ORCVXOF flag */                
	    if ((tty->flow_ctrl & (FL_ORCVXOF | FL_OSTOP)) == FL_OSTOP) {    
	      /* disable interrupts    */                                    
	      rtems_interrupt_disable(level);                                
   438b2:	387c 0700      	moveaw #1792,%a4                            <== NOT EXECUTED
                                                                      
			/*                                                                 
			 * check to see if rcv wakeup callback was set                     
			 */                                                                
			if (( !tty->tty_rcvwakeup ) && ( tty->tty_rcv.sw_pfn != NULL )) {  
			  (*tty->tty_rcv.sw_pfn)(&tty->termios, tty->tty_rcv.sw_arg);      
   438b6:	4200           	clrb %d0                                    <== NOT EXECUTED
		    if ((tty->flow_ctrl & FL_OSTOP) ||                              
			(tty->rawOutBufState == rob_idle)) {                               
		      /* if tx is stopped due to XOFF or out of data */             
		      /*    call write function here                 */             
		      tty->flow_ctrl |= FL_ISNTXOF;                                 
		      (*tty->device.write)(tty->minor,                              
   438b8:	2d48 fffc      	movel %a0,%fp@(-4)                          <== NOT EXECUTED
                                                                      
			/*                                                                 
			 * check to see if rcv wakeup callback was set                     
			 */                                                                
			if (( !tty->tty_rcvwakeup ) && ( tty->tty_rcv.sw_pfn != NULL )) {  
			  (*tty->tty_rcv.sw_pfn)(&tty->termios, tty->tty_rcv.sw_arg);      
   438bc:	1d40 fff7      	moveb %d0,%fp@(-9)                          <== NOT EXECUTED
	    tty->tty_rcvwakeup = 1;                                          
    	  }                                                              
	  return 0;                                                          
	}                                                                    
                                                                      
	while (len--) {                                                      
   438c0:	4a83           	tstl %d3                                    <== NOT EXECUTED
   438c2:	6700 00e8      	beqw 439ac <rtems_termios_enqueue_raw_characters+0x1a0><== NOT EXECUTED
	  c = *buf++;                                                        
	  /* FIXME: implement IXANY: any character restarts output */        
	  /* if incoming XON/XOFF controls outgoing stream: */               
	  if (tty->flow_ctrl & FL_MDXON) {                                   
   438c6:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
    	  }                                                              
	  return 0;                                                          
	}                                                                    
                                                                      
	while (len--) {                                                      
	  c = *buf++;                                                        
   438ca:	1813           	moveb %a3@,%d4                              <== NOT EXECUTED
	  /* FIXME: implement IXANY: any character restarts output */        
	  /* if incoming XON/XOFF controls outgoing stream: */               
	  if (tty->flow_ctrl & FL_MDXON) {                                   
   438cc:	0800 0009      	btst #9,%d0                                 <== NOT EXECUTED
   438d0:	671c           	beqs 438ee <rtems_termios_enqueue_raw_characters+0xe2><== NOT EXECUTED
	    /* if received char is V_STOP and V_START (both are equal value) */
	    if (c == tty->termios.c_cc[VSTOP]) {                             
   438d2:	4281           	clrl %d1                                    <== NOT EXECUTED
   438d4:	122a 004a      	moveb %a2@(74),%d1                          <== NOT EXECUTED
   438d8:	1004           	moveb %d4,%d0                               <== NOT EXECUTED
   438da:	49c0           	extbl %d0                                   <== NOT EXECUTED
   438dc:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   438de:	6700 014a      	beqw 43a2a <rtems_termios_enqueue_raw_characters+0x21e><== NOT EXECUTED
		/* stop output                             */                       
		tty->flow_ctrl |= FL_ORCVXOF;                                       
	      }                                                              
	      flow_rcv = true;                                               
	    }                                                                
	    else if (c == tty->termios.c_cc[VSTART]) {                       
   438e2:	4281           	clrl %d1                                    <== NOT EXECUTED
   438e4:	122a 0049      	moveb %a2@(73),%d1                          <== NOT EXECUTED
   438e8:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   438ea:	6700 00dc      	beqw 439c8 <rtems_termios_enqueue_raw_characters+0x1bc><== NOT EXECUTED
	      /* restart output  */                                          
	      tty->flow_ctrl &= ~FL_ORCVXOF;                                 
	      flow_rcv = true;                                               
	    }                                                                
	  }                                                                  
	  if (flow_rcv) {                                                    
   438ee:	4a2e fff7      	tstb %fp@(-9)                               <== NOT EXECUTED
   438f2:	6600 00e6      	bnew 439da <rtems_termios_enqueue_raw_characters+0x1ce><== NOT EXECUTED
	      /* reenable interrupts */                                      
	      rtems_interrupt_enable(level);                                 
	    }                                                                
	  }                                                                  
	  else {                                                             
		newTail = (tty->rawInBuf.Tail + 1) % tty->rawInBuf.Size;            
   438f6:	2e2a 0060      	movel %a2@(96),%d7                          <== NOT EXECUTED
   438fa:	5287           	addql #1,%d7                                <== NOT EXECUTED
		/* if chars_in_buffer > highwater                */                 
		rtems_interrupt_disable(level);                                     
   438fc:	200c           	movel %a4,%d0                               <== NOT EXECUTED
	      /* reenable interrupts */                                      
	      rtems_interrupt_enable(level);                                 
	    }                                                                
	  }                                                                  
	  else {                                                             
		newTail = (tty->rawInBuf.Tail + 1) % tty->rawInBuf.Size;            
   438fe:	222a 0064      	movel %a2@(100),%d1                         <== NOT EXECUTED
   43902:	4c41 7002      	remul %d1,%d2,%d7                           <== NOT EXECUTED
		/* if chars_in_buffer > highwater                */                 
		rtems_interrupt_disable(level);                                     
   43906:	40c7           	movew %sr,%d7                               <== NOT EXECUTED
   43908:	8087           	orl %d7,%d0                                 <== NOT EXECUTED
   4390a:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
		if ((((newTail - tty->rawInBuf.Head + tty->rawInBuf.Size)           
   4390c:	222a 005c      	movel %a2@(92),%d1                          <== NOT EXECUTED
   43910:	202a 0064      	movel %a2@(100),%d0                         <== NOT EXECUTED
   43914:	9081           	subl %d1,%d0                                <== NOT EXECUTED
   43916:	2240           	moveal %d0,%a1                              <== NOT EXECUTED
   43918:	d3c2           	addal %d2,%a1                               <== NOT EXECUTED
   4391a:	2209           	movel %a1,%d1                               <== NOT EXECUTED
   4391c:	202a 0064      	movel %a2@(100),%d0                         <== NOT EXECUTED
   43920:	4c40 1006      	remul %d0,%d6,%d1                           <== NOT EXECUTED
   43924:	2d40 fff8      	movel %d0,%fp@(-8)                          <== NOT EXECUTED
		      % tty->rawInBuf.Size)                                         
		     > tty->highwater) &&                                           
   43928:	bcaa 00c0      	cmpl %a2@(192),%d6                          <== NOT EXECUTED
   4392c:	633e           	blss 4396c <rtems_termios_enqueue_raw_characters+0x160><== NOT EXECUTED
		    !(tty->flow_ctrl & FL_IREQXOF)) {                               
   4392e:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
	  }                                                                  
	  else {                                                             
		newTail = (tty->rawInBuf.Tail + 1) % tty->rawInBuf.Size;            
		/* if chars_in_buffer > highwater                */                 
		rtems_interrupt_disable(level);                                     
		if ((((newTail - tty->rawInBuf.Head + tty->rawInBuf.Size)           
   43932:	0800 0000      	btst #0,%d0                                 <== NOT EXECUTED
   43936:	6634           	bnes 4396c <rtems_termios_enqueue_raw_characters+0x160><== NOT EXECUTED
		      % tty->rawInBuf.Size)                                         
		     > tty->highwater) &&                                           
		    !(tty->flow_ctrl & FL_IREQXOF)) {                               
		  /* incoming data stream should be stopped */                      
		  tty->flow_ctrl |= FL_IREQXOF;                                     
   43938:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   4393c:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   4393e:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   43940:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
		  if ((tty->flow_ctrl & (FL_MDXOF | FL_ISNTXOF))                    
   43944:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   43948:	0280 0000 0402 	andil #1026,%d0                             <== NOT EXECUTED
   4394e:	0c80 0000 0400 	cmpil #1024,%d0                             <== NOT EXECUTED
   43954:	6700 0112      	beqw 43a68 <rtems_termios_enqueue_raw_characters+0x25c><== NOT EXECUTED
		      (*tty->device.write)(tty->minor,                              
			 (void *)&(tty->termios.c_cc[VSTOP]),                              
			 1);                                                               
		    }                                                               
		  }                                                                 
		  else if ((tty->flow_ctrl & (FL_MDRTS | FL_IRTSOFF))               
   43958:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   4395c:	0280 0000 0104 	andil #260,%d0                              <== NOT EXECUTED
   43962:	0c80 0000 0100 	cmpil #256,%d0                              <== NOT EXECUTED
   43968:	6700 0136      	beqw 43aa0 <rtems_termios_enqueue_raw_characters+0x294><== NOT EXECUTED
		      tty->device.stopRemoteTx(tty->minor);                         
		    }                                                               
		  }                                                                 
		}                                                                   
		/* reenable interrupts */                                           
		rtems_interrupt_enable(level);                                      
   4396c:	46c7           	movew %d7,%sr                               <== NOT EXECUTED
                                                                      
		if (newTail == tty->rawInBuf.Head) {                                
   4396e:	202a 005c      	movel %a2@(92),%d0                          <== NOT EXECUTED
   43972:	b480           	cmpl %d0,%d2                                <== NOT EXECUTED
   43974:	6700 00d2      	beqw 43a48 <rtems_termios_enqueue_raw_characters+0x23c><== NOT EXECUTED
		        dropped++;                                                  
		}                                                                   
		else {                                                              
		        tty->rawInBuf.theBuf[newTail] = c;                          
   43978:	206a 0058      	moveal %a2@(88),%a0                         <== NOT EXECUTED
   4397c:	1184 2800      	moveb %d4,%a0@(00000000,%d2:l)              <== NOT EXECUTED
		        tty->rawInBuf.Tail = newTail;                               
   43980:	2542 0060      	movel %d2,%a2@(96)                          <== NOT EXECUTED
                                                                      
			/*                                                                 
			 * check to see if rcv wakeup callback was set                     
			 */                                                                
			if (( !tty->tty_rcvwakeup ) && ( tty->tty_rcv.sw_pfn != NULL )) {  
   43984:	4aaa 00e4      	tstl %a2@(228)                              <== NOT EXECUTED
   43988:	6618           	bnes 439a2 <rtems_termios_enqueue_raw_characters+0x196><== NOT EXECUTED
   4398a:	206a 00dc      	moveal %a2@(220),%a0                        <== NOT EXECUTED
   4398e:	4a88           	tstl %a0                                    <== NOT EXECUTED
   43990:	6710           	beqs 439a2 <rtems_termios_enqueue_raw_characters+0x196><== NOT EXECUTED
			  (*tty->tty_rcv.sw_pfn)(&tty->termios, tty->tty_rcv.sw_arg);      
   43992:	2f2a 00e0      	movel %a2@(224),%sp@-                       <== NOT EXECUTED
   43996:	2f0d           	movel %a5,%sp@-                             <== NOT EXECUTED
   43998:	4e90           	jsr %a0@                                    <== NOT EXECUTED
			  tty->tty_rcvwakeup = 1;                                          
   4399a:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4399c:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   4399e:	2541 00e4      	movel %d1,%a2@(228)                         <== NOT EXECUTED
    	  }                                                              
	  return 0;                                                          
	}                                                                    
                                                                      
	while (len--) {                                                      
	  c = *buf++;                                                        
   439a2:	528b           	addql #1,%a3                                <== NOT EXECUTED
   439a4:	5383           	subql #1,%d3                                <== NOT EXECUTED
	    tty->tty_rcvwakeup = 1;                                          
    	  }                                                              
	  return 0;                                                          
	}                                                                    
                                                                      
	while (len--) {                                                      
   439a6:	4a83           	tstl %d3                                    <== NOT EXECUTED
   439a8:	6600 ff1c      	bnew 438c6 <rtems_termios_enqueue_raw_characters+0xba><== NOT EXECUTED
			}                                                                  
		}                                                                   
	  }                                                                  
	}                                                                    
	tty->rawInBufDropped += dropped;                                     
	rtems_semaphore_release (tty->rawInBuf.Semaphore);                   
   439ac:	2f2a 0068      	movel %a2@(104),%sp@-                       <== NOT EXECUTED
			  tty->tty_rcvwakeup = 1;                                          
			}                                                                  
		}                                                                   
	  }                                                                  
	}                                                                    
	tty->rawInBufDropped += dropped;                                     
   439b0:	dbaa 0078      	addl %d5,%a2@(120)                          <== NOT EXECUTED
	rtems_semaphore_release (tty->rawInBuf.Semaphore);                   
   439b4:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
	return dropped;                                                      
   439ba:	588f           	addql #4,%sp                                <== NOT EXECUTED
}                                                                     
   439bc:	2005           	movel %d5,%d0                               <== NOT EXECUTED
   439be:	4cee 3cfc ffcc 	moveml %fp@(-52),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   439c4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   439c6:	4e75           	rts                                         <== NOT EXECUTED
	      flow_rcv = true;                                               
	    }                                                                
	    else if (c == tty->termios.c_cc[VSTART]) {                       
	      /* VSTART received */                                          
	      /* restart output  */                                          
	      tty->flow_ctrl &= ~FL_ORCVXOF;                                 
   439c8:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   439cc:	72ef           	moveq #-17,%d1                              <== NOT EXECUTED
		}                                                                   
	  }                                                                  
	}                                                                    
	tty->rawInBufDropped += dropped;                                     
	rtems_semaphore_release (tty->rawInBuf.Semaphore);                   
	return dropped;                                                      
   439ce:	7c01           	moveq #1,%d6                                <== NOT EXECUTED
	      flow_rcv = true;                                               
	    }                                                                
	    else if (c == tty->termios.c_cc[VSTART]) {                       
	      /* VSTART received */                                          
	      /* restart output  */                                          
	      tty->flow_ctrl &= ~FL_ORCVXOF;                                 
   439d0:	c081           	andl %d1,%d0                                <== NOT EXECUTED
		}                                                                   
	  }                                                                  
	}                                                                    
	tty->rawInBufDropped += dropped;                                     
	rtems_semaphore_release (tty->rawInBuf.Semaphore);                   
	return dropped;                                                      
   439d2:	1d46 fff7      	moveb %d6,%fp@(-9)                          <== NOT EXECUTED
	      flow_rcv = true;                                               
	    }                                                                
	    else if (c == tty->termios.c_cc[VSTART]) {                       
	      /* VSTART received */                                          
	      /* restart output  */                                          
	      tty->flow_ctrl &= ~FL_ORCVXOF;                                 
   439d6:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
	      flow_rcv = true;                                               
	    }                                                                
	  }                                                                  
	  if (flow_rcv) {                                                    
	    /* restart output according to FL_ORCVXOF flag */                
	    if ((tty->flow_ctrl & (FL_ORCVXOF | FL_OSTOP)) == FL_OSTOP) {    
   439da:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   439de:	7c30           	moveq #48,%d6                               <== NOT EXECUTED
   439e0:	7220           	moveq #32,%d1                               <== NOT EXECUTED
   439e2:	c086           	andl %d6,%d0                                <== NOT EXECUTED
   439e4:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   439e6:	66ba           	bnes 439a2 <rtems_termios_enqueue_raw_characters+0x196><== NOT EXECUTED
	      /* disable interrupts    */                                    
	      rtems_interrupt_disable(level);                                
   439e8:	200c           	movel %a4,%d0                               <== NOT EXECUTED
   439ea:	40c2           	movew %sr,%d2                               <== NOT EXECUTED
   439ec:	8082           	orl %d2,%d0                                 <== NOT EXECUTED
   439ee:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
	      tty->flow_ctrl &= ~FL_OSTOP;                                   
   439f0:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   439f4:	7cdf           	moveq #-33,%d6                              <== NOT EXECUTED
   439f6:	c086           	andl %d6,%d0                                <== NOT EXECUTED
   439f8:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
	      /* check for chars in output buffer (or rob_state?) */         
	      if (tty->rawOutBufState != rob_idle) {                         
   439fc:	4aaa 0094      	tstl %a2@(148)                              <== NOT EXECUTED
   43a00:	6608           	bnes 43a0a <rtems_termios_enqueue_raw_characters+0x1fe><== NOT EXECUTED
	      /* if chars available, call write function... */               
		(*tty->device.write)(tty->minor,                                    
		     &tty->rawOutBuf.theBuf[tty->rawOutBuf.Tail], 1);               
	      }                                                              
	      /* reenable interrupts */                                      
	      rtems_interrupt_enable(level);                                 
   43a02:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
    	  }                                                              
	  return 0;                                                          
	}                                                                    
                                                                      
	while (len--) {                                                      
	  c = *buf++;                                                        
   43a04:	528b           	addql #1,%a3                                <== NOT EXECUTED
   43a06:	5383           	subql #1,%d3                                <== NOT EXECUTED
   43a08:	609c           	bras 439a6 <rtems_termios_enqueue_raw_characters+0x19a><== NOT EXECUTED
	      rtems_interrupt_disable(level);                                
	      tty->flow_ctrl &= ~FL_OSTOP;                                   
	      /* check for chars in output buffer (or rob_state?) */         
	      if (tty->rawOutBufState != rob_idle) {                         
	      /* if chars available, call write function... */               
		(*tty->device.write)(tty->minor,                                    
   43a0a:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
		     &tty->rawOutBuf.theBuf[tty->rawOutBuf.Tail], 1);               
   43a0e:	202a 0084      	movel %a2@(132),%d0                         <== NOT EXECUTED
	      rtems_interrupt_disable(level);                                
	      tty->flow_ctrl &= ~FL_OSTOP;                                   
	      /* check for chars in output buffer (or rob_state?) */         
	      if (tty->rawOutBufState != rob_idle) {                         
	      /* if chars available, call write function... */               
		(*tty->device.write)(tty->minor,                                    
   43a12:	d0aa 007c      	addl %a2@(124),%d0                          <== NOT EXECUTED
   43a16:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   43a18:	2f2a 0010      	movel %a2@(16),%sp@-                        <== NOT EXECUTED
   43a1c:	206a 00a4      	moveal %a2@(164),%a0                        <== NOT EXECUTED
   43a20:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   43a22:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
		     &tty->rawOutBuf.theBuf[tty->rawOutBuf.Tail], 1);               
	      }                                                              
	      /* reenable interrupts */                                      
	      rtems_interrupt_enable(level);                                 
   43a26:	46c2           	movew %d2,%sr                               <== NOT EXECUTED
   43a28:	60da           	bras 43a04 <rtems_termios_enqueue_raw_characters+0x1f8><== NOT EXECUTED
	  /* FIXME: implement IXANY: any character restarts output */        
	  /* if incoming XON/XOFF controls outgoing stream: */               
	  if (tty->flow_ctrl & FL_MDXON) {                                   
	    /* if received char is V_STOP and V_START (both are equal value) */
	    if (c == tty->termios.c_cc[VSTOP]) {                             
	      if (c == tty->termios.c_cc[VSTART]) {                          
   43a2a:	4281           	clrl %d1                                    <== NOT EXECUTED
   43a2c:	122a 0049      	moveb %a2@(73),%d1                          <== NOT EXECUTED
   43a30:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   43a32:	671e           	beqs 43a52 <rtems_termios_enqueue_raw_characters+0x246><== NOT EXECUTED
		tty->flow_ctrl = tty->flow_ctrl ^ FL_ORCVXOF;                       
	      }                                                              
	      else {                                                         
		/* VSTOP received (other code than VSTART) */                       
		/* stop output                             */                       
		tty->flow_ctrl |= FL_ORCVXOF;                                       
   43a34:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   43a38:	7c10           	moveq #16,%d6                               <== NOT EXECUTED
   43a3a:	8086           	orl %d6,%d0                                 <== NOT EXECUTED
		}                                                                   
	  }                                                                  
	}                                                                    
	tty->rawInBufDropped += dropped;                                     
	rtems_semaphore_release (tty->rawInBuf.Semaphore);                   
	return dropped;                                                      
   43a3c:	7c01           	moveq #1,%d6                                <== NOT EXECUTED
		tty->flow_ctrl = tty->flow_ctrl ^ FL_ORCVXOF;                       
	      }                                                              
	      else {                                                         
		/* VSTOP received (other code than VSTART) */                       
		/* stop output                             */                       
		tty->flow_ctrl |= FL_ORCVXOF;                                       
   43a3e:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
		}                                                                   
	  }                                                                  
	}                                                                    
	tty->rawInBufDropped += dropped;                                     
	rtems_semaphore_release (tty->rawInBuf.Semaphore);                   
	return dropped;                                                      
   43a42:	1d46 fff7      	moveb %d6,%fp@(-9)                          <== NOT EXECUTED
   43a46:	6092           	bras 439da <rtems_termios_enqueue_raw_characters+0x1ce><== NOT EXECUTED
		}                                                                   
		/* reenable interrupts */                                           
		rtems_interrupt_enable(level);                                      
                                                                      
		if (newTail == tty->rawInBuf.Head) {                                
		        dropped++;                                                  
   43a48:	5285           	addql #1,%d5                                <== NOT EXECUTED
    	  }                                                              
	  return 0;                                                          
	}                                                                    
                                                                      
	while (len--) {                                                      
	  c = *buf++;                                                        
   43a4a:	528b           	addql #1,%a3                                <== NOT EXECUTED
   43a4c:	5383           	subql #1,%d3                                <== NOT EXECUTED
   43a4e:	6000 ff56      	braw 439a6 <rtems_termios_enqueue_raw_characters+0x19a><== NOT EXECUTED
	    /* if received char is V_STOP and V_START (both are equal value) */
	    if (c == tty->termios.c_cc[VSTOP]) {                             
	      if (c == tty->termios.c_cc[VSTART]) {                          
		/* received VSTOP and VSTART==VSTOP? */                             
		/* then toggle "stop output" status  */                             
		tty->flow_ctrl = tty->flow_ctrl ^ FL_ORCVXOF;                       
   43a52:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   43a56:	7210           	moveq #16,%d1                               <== NOT EXECUTED
   43a58:	b380           	eorl %d1,%d0                                <== NOT EXECUTED
		}                                                                   
	  }                                                                  
	}                                                                    
	tty->rawInBufDropped += dropped;                                     
	rtems_semaphore_release (tty->rawInBuf.Semaphore);                   
	return dropped;                                                      
   43a5a:	7c01           	moveq #1,%d6                                <== NOT EXECUTED
	    /* if received char is V_STOP and V_START (both are equal value) */
	    if (c == tty->termios.c_cc[VSTOP]) {                             
	      if (c == tty->termios.c_cc[VSTART]) {                          
		/* received VSTOP and VSTART==VSTOP? */                             
		/* then toggle "stop output" status  */                             
		tty->flow_ctrl = tty->flow_ctrl ^ FL_ORCVXOF;                       
   43a5c:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
		}                                                                   
	  }                                                                  
	}                                                                    
	tty->rawInBufDropped += dropped;                                     
	rtems_semaphore_release (tty->rawInBuf.Semaphore);                   
	return dropped;                                                      
   43a60:	1d46 fff7      	moveb %d6,%fp@(-9)                          <== NOT EXECUTED
   43a64:	6000 ff74      	braw 439da <rtems_termios_enqueue_raw_characters+0x1ce><== NOT EXECUTED
		    !(tty->flow_ctrl & FL_IREQXOF)) {                               
		  /* incoming data stream should be stopped */                      
		  tty->flow_ctrl |= FL_IREQXOF;                                     
		  if ((tty->flow_ctrl & (FL_MDXOF | FL_ISNTXOF))                    
		      ==                (FL_MDXOF             ) ){                  
		    if ((tty->flow_ctrl & FL_OSTOP) ||                              
   43a68:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   43a6c:	0800 0005      	btst #5,%d0                                 <== NOT EXECUTED
   43a70:	6608           	bnes 43a7a <rtems_termios_enqueue_raw_characters+0x26e><== NOT EXECUTED
			(tty->rawOutBufState == rob_idle)) {                               
   43a72:	4aaa 0094      	tstl %a2@(148)                              <== NOT EXECUTED
   43a76:	6600 fef4      	bnew 4396c <rtems_termios_enqueue_raw_characters+0x160><== NOT EXECUTED
		      /* if tx is stopped due to XOFF or out of data */             
		      /*    call write function here                 */             
		      tty->flow_ctrl |= FL_ISNTXOF;                                 
		      (*tty->device.write)(tty->minor,                              
   43a7a:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
		      ==                (FL_MDXOF             ) ){                  
		    if ((tty->flow_ctrl & FL_OSTOP) ||                              
			(tty->rawOutBufState == rob_idle)) {                               
		      /* if tx is stopped due to XOFF or out of data */             
		      /*    call write function here                 */             
		      tty->flow_ctrl |= FL_ISNTXOF;                                 
   43a7e:	7c02           	moveq #2,%d6                                <== NOT EXECUTED
   43a80:	222a 00b8      	movel %a2@(184),%d1                         <== NOT EXECUTED
		      (*tty->device.write)(tty->minor,                              
   43a84:	2f2e fffc      	movel %fp@(-4),%sp@-                        <== NOT EXECUTED
   43a88:	2f2a 0010      	movel %a2@(16),%sp@-                        <== NOT EXECUTED
   43a8c:	206a 00a4      	moveal %a2@(164),%a0                        <== NOT EXECUTED
		      ==                (FL_MDXOF             ) ){                  
		    if ((tty->flow_ctrl & FL_OSTOP) ||                              
			(tty->rawOutBufState == rob_idle)) {                               
		      /* if tx is stopped due to XOFF or out of data */             
		      /*    call write function here                 */             
		      tty->flow_ctrl |= FL_ISNTXOF;                                 
   43a90:	8286           	orl %d6,%d1                                 <== NOT EXECUTED
   43a92:	2541 00b8      	movel %d1,%a2@(184)                         <== NOT EXECUTED
		      (*tty->device.write)(tty->minor,                              
   43a96:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   43a98:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   43a9c:	6000 fece      	braw 4396c <rtems_termios_enqueue_raw_characters+0x160><== NOT EXECUTED
			 1);                                                               
		    }                                                               
		  }                                                                 
		  else if ((tty->flow_ctrl & (FL_MDRTS | FL_IRTSOFF))               
			   ==                (FL_MDRTS             ) ) {                   
		    tty->flow_ctrl |= FL_IRTSOFF;                                   
   43aa0:	222a 00b8      	movel %a2@(184),%d1                         <== NOT EXECUTED
   43aa4:	303c 0004      	movew #4,%d0                                <== NOT EXECUTED
		    /* deactivate RTS line */                                       
		    if (tty->device.stopRemoteTx != NULL) {                         
   43aa8:	206a 00ac      	moveal %a2@(172),%a0                        <== NOT EXECUTED
			 1);                                                               
		    }                                                               
		  }                                                                 
		  else if ((tty->flow_ctrl & (FL_MDRTS | FL_IRTSOFF))               
			   ==                (FL_MDRTS             ) ) {                   
		    tty->flow_ctrl |= FL_IRTSOFF;                                   
   43aac:	8280           	orl %d0,%d1                                 <== NOT EXECUTED
   43aae:	2541 00b8      	movel %d1,%a2@(184)                         <== NOT EXECUTED
		    /* deactivate RTS line */                                       
		    if (tty->device.stopRemoteTx != NULL) {                         
   43ab2:	4a88           	tstl %a0                                    <== NOT EXECUTED
   43ab4:	6700 feb6      	beqw 4396c <rtems_termios_enqueue_raw_characters+0x160><== NOT EXECUTED
		      tty->device.stopRemoteTx(tty->minor);                         
   43ab8:	2f2a 0010      	movel %a2@(16),%sp@-                        <== NOT EXECUTED
   43abc:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   43abe:	588f           	addql #4,%sp                                <== NOT EXECUTED
   43ac0:	6000 feaa      	braw 4396c <rtems_termios_enqueue_raw_characters+0x160><== NOT EXECUTED
                                                                      
000434fc <rtems_termios_initialize>:                                  
struct rtems_termios_tty *rtems_termios_ttyTail;                      
rtems_id rtems_termios_ttyMutex;                                      
                                                                      
void                                                                  
rtems_termios_initialize (void)                                       
{                                                                     
   434fc:	4e56 0000      	linkw %fp,#0                                
  rtems_status_code sc;                                               
                                                                      
  /*                                                                  
   * Create the mutex semaphore for the tty list                      
   */                                                                 
  if (!rtems_termios_ttyMutex) {                                      
   43500:	4ab9 0005 ee5c 	tstl 5ee5c <rtems_termios_ttyMutex>         
   43506:	6704           	beqs 4350c <rtems_termios_initialize+0x10>  
      RTEMS_NO_PRIORITY,                                              
      &rtems_termios_ttyMutex);                                       
    if (sc != RTEMS_SUCCESSFUL)                                       
      rtems_fatal_error_occurred (sc);                                
  }                                                                   
}                                                                     
   43508:	4e5e           	unlk %fp                                    
   4350a:	4e75           	rts                                         
                                                                      
  /*                                                                  
   * Create the mutex semaphore for the tty list                      
   */                                                                 
  if (!rtems_termios_ttyMutex) {                                      
    sc = rtems_semaphore_create (                                     
   4350c:	4879 0005 ee5c 	pea 5ee5c <rtems_termios_ttyMutex>          
   43512:	42a7           	clrl %sp@-                                  
   43514:	4878 0054      	pea 54 <DBL_MANT_DIG+0x1f>                  
   43518:	4878 0001      	pea 1 <ADD>                                 
   4351c:	2f3c 5452 6d69 	movel #1414688105,%sp@-                     
   43522:	4eb9 0004 5a8c 	jsr 45a8c <rtems_semaphore_create>          
      rtems_build_name ('T', 'R', 'm', 'i'),                          
      1,                                                              
      RTEMS_BINARY_SEMAPHORE | RTEMS_INHERIT_PRIORITY | RTEMS_PRIORITY,
      RTEMS_NO_PRIORITY,                                              
      &rtems_termios_ttyMutex);                                       
    if (sc != RTEMS_SUCCESSFUL)                                       
   43528:	4fef 0014      	lea %sp@(20),%sp                            
   4352c:	4a80           	tstl %d0                                    
   4352e:	67d8           	beqs 43508 <rtems_termios_initialize+0xc>   
      rtems_fatal_error_occurred (sc);                                
   43530:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   43532:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
                                                                      
00044746 <rtems_termios_ioctl>:                                       
  }                                                                   
}                                                                     
                                                                      
rtems_status_code                                                     
rtems_termios_ioctl (void *arg)                                       
{                                                                     
   44746:	4e56 ffec      	linkw %fp,#-20                              
   4474a:	48d7 1c0c      	moveml %d2-%d3/%a2-%a4,%sp@                 
   4474e:	266e 0008      	moveal %fp@(8),%a3                          
	rtems_libio_ioctl_args_t *args = arg;                                
	struct rtems_termios_tty *tty = args->iop->data1;                    
   44752:	2053           	moveal %a3@,%a0                             
   44754:	2468 0034      	moveal %a0@(52),%a2                         
	struct ttywakeup         *wakeup = (struct ttywakeup *)args->buffer; 
	rtems_status_code sc;                                                
                                                                      
 	args->ioctl_return = 0;                                             
	sc = rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
   44758:	42a7           	clrl %sp@-                                  
rtems_status_code                                                     
rtems_termios_ioctl (void *arg)                                       
{                                                                     
	rtems_libio_ioctl_args_t *args = arg;                                
	struct rtems_termios_tty *tty = args->iop->data1;                    
	struct ttywakeup         *wakeup = (struct ttywakeup *)args->buffer; 
   4475a:	286b 0008      	moveal %a3@(8),%a4                          
	rtems_status_code sc;                                                
                                                                      
 	args->ioctl_return = 0;                                             
   4475e:	42ab 000c      	clrl %a3@(12)                               
	sc = rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
   44762:	42a7           	clrl %sp@-                                  
   44764:	2f2a 0018      	movel %a2@(24),%sp@-                        
   44768:	4eb9 0004 5d2c 	jsr 45d2c <rtems_semaphore_obtain>          
	if (sc != RTEMS_SUCCESSFUL) {                                        
   4476e:	4fef 000c      	lea %sp@(12),%sp                            
	struct rtems_termios_tty *tty = args->iop->data1;                    
	struct ttywakeup         *wakeup = (struct ttywakeup *)args->buffer; 
	rtems_status_code sc;                                                
                                                                      
 	args->ioctl_return = 0;                                             
	sc = rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
   44772:	2400           	movel %d0,%d2                               
	if (sc != RTEMS_SUCCESSFUL) {                                        
   44774:	662c           	bnes 447a2 <rtems_termios_ioctl+0x5c>       
		args->ioctl_return = sc;                                            
		return sc;                                                          
	}                                                                    
	switch (args->command) {                                             
   44776:	202b 0004      	movel %a3@(4),%d0                           
   4477a:	7204           	moveq #4,%d1                                
   4477c:	b280           	cmpl %d0,%d1                                
   4477e:	6774           	beqs 447f4 <rtems_termios_ioctl+0xae>       
   44780:	6530           	bcss 447b2 <rtems_termios_ioctl+0x6c>       
   44782:	7602           	moveq #2,%d3                                
   44784:	b680           	cmpl %d0,%d3                                
   44786:	6700 00b6      	beqw 4483e <rtems_termios_ioctl+0xf8>       
   4478a:	6400 0224      	bccw 449b0 <rtems_termios_ioctl+0x26a>      
		if (tty->device.setAttributes)                                      
			(*tty->device.setAttributes)(tty->minor, &tty->termios);           
		break;                                                              
                                                                      
	case RTEMS_IO_TCDRAIN:                                               
		drainOutput (tty);                                                  
   4478e:	2f0a           	movel %a2,%sp@-                             
   44790:	4eba fc18      	jsr %pc@(443aa <drainOutput>)               
		break;                                                              
   44794:	588f           	addql #4,%sp                                
		/* Half guess that this is the right operation */                   
		*(int *)args->buffer = tty->ccount - tty->cindex + rawnc;           
		}                                                                   
		break;                                                              
	}                                                                    
	rtems_semaphore_release (tty->osem);                                 
   44796:	2f2a 0018      	movel %a2@(24),%sp@-                        
   4479a:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         
	args->ioctl_return = sc;                                             
	return sc;                                                           
   447a0:	588f           	addql #4,%sp                                
}                                                                     
   447a2:	2002           	movel %d2,%d0                               
		*(int *)args->buffer = tty->ccount - tty->cindex + rawnc;           
		}                                                                   
		break;                                                              
	}                                                                    
	rtems_semaphore_release (tty->osem);                                 
	args->ioctl_return = sc;                                             
   447a4:	2742 000c      	movel %d2,%a3@(12)                          
	return sc;                                                           
}                                                                     
   447a8:	4cee 1c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a4            
   447ae:	4e5e           	unlk %fp                                    
   447b0:	4e75           	rts                                         
	sc = rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
	if (sc != RTEMS_SUCCESSFUL) {                                        
		args->ioctl_return = sc;                                            
		return sc;                                                          
	}                                                                    
	switch (args->command) {                                             
   447b2:	0c80 4004 667f 	cmpil #1074030207,%d0                       <== NOT EXECUTED
   447b8:	6756           	beqs 44810 <rtems_termios_ioctl+0xca>       <== NOT EXECUTED
   447ba:	6200 0236      	bhiw 449f2 <rtems_termios_ioctl+0x2ac>      <== NOT EXECUTED
   447be:	7605           	moveq #5,%d3                                <== NOT EXECUTED
   447c0:	b680           	cmpl %d0,%d3                                <== NOT EXECUTED
   447c2:	6700 01ce      	beqw 44992 <rtems_termios_ioctl+0x24c>      <== NOT EXECUTED
	default:                                                             
		if (rtems_termios_linesw[tty->t_line].l_ioctl != NULL) {            
   447c6:	202a 00cc      	movel %a2@(204),%d0                         <== NOT EXECUTED
   447ca:	eb88           	lsll #5,%d0                                 <== NOT EXECUTED
   447cc:	0680 0005 e62c 	addil #386604,%d0                           <== NOT EXECUTED
   447d2:	2240           	moveal %d0,%a1                              <== NOT EXECUTED
   447d4:	2051           	moveal %a1@,%a0                             <== NOT EXECUTED
   447d6:	4a88           	tstl %a0                                    <== NOT EXECUTED
   447d8:	6700 0292      	beqw 44a6c <rtems_termios_ioctl+0x326>      <== NOT EXECUTED
			sc = rtems_termios_linesw[tty->t_line].l_ioctl(tty,args);          
   447dc:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   447de:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   447e0:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   447e2:	508f           	addql #8,%sp                                <== NOT EXECUTED
   447e4:	2400           	movel %d0,%d2                               <== NOT EXECUTED
		/* Half guess that this is the right operation */                   
		*(int *)args->buffer = tty->ccount - tty->cindex + rawnc;           
		}                                                                   
		break;                                                              
	}                                                                    
	rtems_semaphore_release (tty->osem);                                 
   447e6:	2f2a 0018      	movel %a2@(24),%sp@-                        <== NOT EXECUTED
   447ea:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
	args->ioctl_return = sc;                                             
	return sc;                                                           
   447f0:	588f           	addql #4,%sp                                <== NOT EXECUTED
   447f2:	60ae           	bras 447a2 <rtems_termios_ioctl+0x5c>       <== NOT EXECUTED
	case RTEMS_IO_SNDWAKEUP:                                             
		tty->tty_snd = *wakeup;                                             
		break;                                                              
                                                                      
	case RTEMS_IO_RCVWAKEUP:                                             
		tty->tty_rcv = *wakeup;                                             
   447f4:	2014           	movel %a4@,%d0                              <== NOT EXECUTED
   447f6:	222c 0004      	movel %a4@(4),%d1                           <== NOT EXECUTED
   447fa:	2540 00dc      	movel %d0,%a2@(220)                         <== NOT EXECUTED
   447fe:	2541 00e0      	movel %d1,%a2@(224)                         <== NOT EXECUTED
		/* Half guess that this is the right operation */                   
		*(int *)args->buffer = tty->ccount - tty->cindex + rawnc;           
		}                                                                   
		break;                                                              
	}                                                                    
	rtems_semaphore_release (tty->osem);                                 
   44802:	2f2a 0018      	movel %a2@(24),%sp@-                        <== NOT EXECUTED
   44806:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
	args->ioctl_return = sc;                                             
	return sc;                                                           
   4480c:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4480e:	6092           	bras 447a2 <rtems_termios_ioctl+0x5c>       <== NOT EXECUTED
		*(int*)(args->buffer)=tty->t_line;                                  
		break;                                                              
#endif                                                                
 	case FIONREAD:                                                      
		{                                                                   
		int rawnc = tty->rawInBuf.Tail - tty->rawInBuf.Head;                
   44810:	202a 0060      	movel %a2@(96),%d0                          <== NOT EXECUTED
   44814:	222a 005c      	movel %a2@(92),%d1                          <== NOT EXECUTED
   44818:	9081           	subl %d1,%d0                                <== NOT EXECUTED
		if ( rawnc < 0 )                                                    
   4481a:	6b00 02a4      	bmiw 44ac0 <rtems_termios_ioctl+0x37a>      <== NOT EXECUTED
			rawnc += tty->rawInBuf.Size;                                       
		/* Half guess that this is the right operation */                   
		*(int *)args->buffer = tty->ccount - tty->cindex + rawnc;           
   4481e:	222a 0020      	movel %a2@(32),%d1                          <== NOT EXECUTED
   44822:	92aa 0024      	subl %a2@(36),%d1                           <== NOT EXECUTED
   44826:	d280           	addl %d0,%d1                                <== NOT EXECUTED
   44828:	206b 0008      	moveal %a3@(8),%a0                          <== NOT EXECUTED
   4482c:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
		}                                                                   
		break;                                                              
	}                                                                    
	rtems_semaphore_release (tty->osem);                                 
   4482e:	2f2a 0018      	movel %a2@(24),%sp@-                        <== NOT EXECUTED
   44832:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
	args->ioctl_return = sc;                                             
	return sc;                                                           
   44838:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4483a:	6000 ff66      	braw 447a2 <rtems_termios_ioctl+0x5c>       <== NOT EXECUTED
	case RTEMS_IO_GET_ATTRIBUTES:                                        
		*(struct termios *)args->buffer = tty->termios;                     
		break;                                                              
                                                                      
	case RTEMS_IO_SET_ATTRIBUTES:                                        
		tty->termios = *(struct termios *)args->buffer;                     
   4483e:	206b 0008      	moveal %a3@(8),%a0                          
   44842:	49ea 0030      	lea %a2@(48),%a4                            
   44846:	2898           	movel %a0@+,%a4@                            
   44848:	2558 0034      	movel %a0@+,%a2@(52)                        
   4484c:	2558 0038      	movel %a0@+,%a2@(56)                        
   44850:	2558 003c      	movel %a0@+,%a2@(60)                        
   44854:	2558 0040      	movel %a0@+,%a2@(64)                        
   44858:	2558 0044      	movel %a0@+,%a2@(68)                        
   4485c:	2558 0048      	movel %a0@+,%a2@(72)                        
   44860:	2558 004c      	movel %a0@+,%a2@(76)                        
  /*                                                                  
   * check for flow control options to be switched off                
   */                                                                 
                                                                      
  /* check for outgoing XON/XOFF flow control switched off */         
  if (( tty->flow_ctrl & FL_MDXON) &&                                 
   44864:	202a 00b8      	movel %a2@(184),%d0                         
	case RTEMS_IO_GET_ATTRIBUTES:                                        
		*(struct termios *)args->buffer = tty->termios;                     
		break;                                                              
                                                                      
	case RTEMS_IO_SET_ATTRIBUTES:                                        
		tty->termios = *(struct termios *)args->buffer;                     
   44868:	2550 0050      	movel %a0@,%a2@(80)                         
  /*                                                                  
   * check for flow control options to be switched off                
   */                                                                 
                                                                      
  /* check for outgoing XON/XOFF flow control switched off */         
  if (( tty->flow_ctrl & FL_MDXON) &&                                 
   4486c:	0800 0009      	btst #9,%d0                                 
   44870:	6746           	beqs 448b8 <rtems_termios_ioctl+0x172>      
   44872:	202a 0030      	movel %a2@(48),%d0                          
   44876:	0280 0000 0400 	andil #1024,%d0                             
   4487c:	663a           	bnes 448b8 <rtems_termios_ioctl+0x172>      
      !(tty->termios.c_iflag & IXON)) {                               
    /* clear related flags in flow_ctrl */                            
    tty->flow_ctrl &= ~(FL_MDXON | FL_ORCVXOF);                       
   4487e:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   44882:	0280 ffff fdef 	andil #-529,%d0                             <== NOT EXECUTED
   44888:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
                                                                      
    /* has output been stopped due to received XOFF? */               
    if (tty->flow_ctrl & FL_OSTOP) {                                  
   4488c:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   44890:	0800 0005      	btst #5,%d0                                 <== NOT EXECUTED
   44894:	6722           	beqs 448b8 <rtems_termios_ioctl+0x172>      <== NOT EXECUTED
      /* disable interrupts    */                                     
      rtems_interrupt_disable(level);                                 
   44896:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   4489c:	40c3           	movew %sr,%d3                               <== NOT EXECUTED
   4489e:	8083           	orl %d3,%d0                                 <== NOT EXECUTED
   448a0:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
      tty->flow_ctrl &= ~FL_OSTOP;                                    
   448a2:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   448a6:	72df           	moveq #-33,%d1                              <== NOT EXECUTED
   448a8:	c081           	andl %d1,%d0                                <== NOT EXECUTED
   448aa:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
      /* check for chars in output buffer (or rob_state?) */          
      if (tty->rawOutBufState != rob_idle) {                          
   448ae:	4aaa 0094      	tstl %a2@(148)                              <== NOT EXECUTED
   448b2:	6600 0242      	bnew 44af6 <rtems_termios_ioctl+0x3b0>      <== NOT EXECUTED
	/* if chars available, call write function... */                     
	(*tty->device.write)(tty->minor,                                     
		     &tty->rawOutBuf.theBuf[tty->rawOutBuf.Tail],1);                
      }                                                               
      /* reenable interrupts */                                       
      rtems_interrupt_enable(level);                                  
   448b6:	46c3           	movew %d3,%sr                               <== NOT EXECUTED
    }                                                                 
  }                                                                   
  /* check for incoming XON/XOFF flow control switched off */         
  if (( tty->flow_ctrl & FL_MDXOF) &&                                 
   448b8:	202a 00b8      	movel %a2@(184),%d0                         
   448bc:	0800 000a      	btst #10,%d0                                
   448c0:	6724           	beqs 448e6 <rtems_termios_ioctl+0x1a0>      
   448c2:	202a 0030      	movel %a2@(48),%d0                          <== NOT EXECUTED
   448c6:	0280 0000 1000 	andil #4096,%d0                             <== NOT EXECUTED
   448cc:	6618           	bnes 448e6 <rtems_termios_ioctl+0x1a0>      <== NOT EXECUTED
      !(tty->termios.c_iflag & IXOFF)) {                              
    /* clear related flags in flow_ctrl */                            
    tty->flow_ctrl &= ~(FL_MDXOF);                                    
   448ce:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
    /* FIXME: what happens, if we had sent XOFF but not yet XON? */   
    tty->flow_ctrl &= ~(FL_ISNTXOF);                                  
   448d2:	76fd           	moveq #-3,%d3                               <== NOT EXECUTED
  }                                                                   
  /* check for incoming XON/XOFF flow control switched off */         
  if (( tty->flow_ctrl & FL_MDXOF) &&                                 
      !(tty->termios.c_iflag & IXOFF)) {                              
    /* clear related flags in flow_ctrl */                            
    tty->flow_ctrl &= ~(FL_MDXOF);                                    
   448d4:	0880 000a      	bclr #10,%d0                                <== NOT EXECUTED
   448d8:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
    /* FIXME: what happens, if we had sent XOFF but not yet XON? */   
    tty->flow_ctrl &= ~(FL_ISNTXOF);                                  
   448dc:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   448e0:	c083           	andl %d3,%d0                                <== NOT EXECUTED
   448e2:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
  }                                                                   
                                                                      
  /* check for incoming RTS/CTS flow control switched off */          
  if (( tty->flow_ctrl & FL_MDRTS) &&                                 
   448e6:	202a 00b8      	movel %a2@(184),%d0                         
   448ea:	0800 0008      	btst #8,%d0                                 
   448ee:	6738           	beqs 44928 <rtems_termios_ioctl+0x1e2>      
   448f0:	4aaa 0038      	tstl %a2@(56)                               <== NOT EXECUTED
   448f4:	6d00 01e4      	bltw 44ada <rtems_termios_ioctl+0x394>      <== NOT EXECUTED
      !(tty->termios.c_cflag & CRTSCTS)) {                            
    /* clear related flags in flow_ctrl */                            
    tty->flow_ctrl &= ~(FL_MDRTS);                                    
   448f8:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   448fc:	0880 0008      	bclr #8,%d0                                 <== NOT EXECUTED
   44900:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
                                                                      
    /* restart remote Tx, if it was stopped */                        
    if ((tty->flow_ctrl & FL_IRTSOFF) &&                              
   44904:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   44908:	44c0           	movew %d0,%ccr                              <== NOT EXECUTED
   4490a:	6610           	bnes 4491c <rtems_termios_ioctl+0x1d6>      <== NOT EXECUTED
	(tty->device.startRemoteTx != NULL)) {                               
   4490c:	206a 00b0      	moveal %a2@(176),%a0                        <== NOT EXECUTED
      !(tty->termios.c_cflag & CRTSCTS)) {                            
    /* clear related flags in flow_ctrl */                            
    tty->flow_ctrl &= ~(FL_MDRTS);                                    
                                                                      
    /* restart remote Tx, if it was stopped */                        
    if ((tty->flow_ctrl & FL_IRTSOFF) &&                              
   44910:	4a88           	tstl %a0                                    <== NOT EXECUTED
   44912:	6708           	beqs 4491c <rtems_termios_ioctl+0x1d6>      <== NOT EXECUTED
	(tty->device.startRemoteTx != NULL)) {                               
      tty->device.startRemoteTx(tty->minor);                          
   44914:	2f2a 0010      	movel %a2@(16),%sp@-                        <== NOT EXECUTED
   44918:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4491a:	588f           	addql #4,%sp                                <== NOT EXECUTED
    }                                                                 
    tty->flow_ctrl &= ~(FL_IRTSOFF);                                  
   4491c:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   44920:	72fb           	moveq #-5,%d1                               <== NOT EXECUTED
   44922:	c081           	andl %d1,%d0                                <== NOT EXECUTED
   44924:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
                                                                      
  /*                                                                  
   * check for flow control options to be switched on                 
   */                                                                 
  /* check for incoming RTS/CTS flow control switched on */           
  if (tty->termios.c_cflag & CRTSCTS) {                               
   44928:	4aaa 0038      	tstl %a2@(56)                               
   4492c:	6d00 01ac      	bltw 44ada <rtems_termios_ioctl+0x394>      
    tty->flow_ctrl |= FL_MDRTS;                                       
  }                                                                   
  /* check for incoming XON/XOF flow control switched on */           
  if (tty->termios.c_iflag & IXOFF) {                                 
   44930:	202a 0030      	movel %a2@(48),%d0                          
   44934:	0800 000c      	btst #12,%d0                                
   44938:	670c           	beqs 44946 <rtems_termios_ioctl+0x200>      
    tty->flow_ctrl |= FL_MDXOF;                                       
   4493a:	222a 00b8      	movel %a2@(184),%d1                         <== NOT EXECUTED
   4493e:	08c1 000a      	bset #10,%d1                                <== NOT EXECUTED
   44942:	2541 00b8      	movel %d1,%a2@(184)                         <== NOT EXECUTED
  }                                                                   
  /* check for outgoing XON/XOF flow control switched on */           
  if (tty->termios.c_iflag & IXON) {                                  
   44946:	0800 000a      	btst #10,%d0                                
   4494a:	670c           	beqs 44958 <rtems_termios_ioctl+0x212>      
    tty->flow_ctrl |= FL_MDXON;                                       
   4494c:	202a 00b8      	movel %a2@(184),%d0                         
   44950:	08c0 0009      	bset #9,%d0                                 
   44954:	2540 00b8      	movel %d0,%a2@(184)                         
		tty->termios = *(struct termios *)args->buffer;                     
                                                                      
		/* check for and process change in flow control options */          
		termios_set_flowctrl(tty);                                          
                                                                      
		if (tty->termios.c_lflag & ICANON) {                                
   44958:	7002           	moveq #2,%d0                                
   4495a:	c0aa 003c      	andl %a2@(60),%d0                           
   4495e:	6700 011e      	beqw 44a7e <rtems_termios_ioctl+0x338>      
				else                                                              
					tty->rawInBufSemaphoreFirstTimeout = tty->vtimeTicks;            
			}                                                                  
			else {                                                             
				if (tty->termios.c_cc[VMIN]) {                                    
					tty->rawInBufSemaphoreOptions = RTEMS_WAIT;                      
   44962:	42aa 006c      	clrl %a2@(108)                              
					tty->rawInBufSemaphoreTimeout = RTEMS_NO_TIMEOUT;                
   44966:	42aa 0070      	clrl %a2@(112)                              
				else {                                                            
					tty->rawInBufSemaphoreOptions = RTEMS_NO_WAIT;                   
				}                                                                 
			}                                                                  
		}                                                                   
		if (tty->device.setAttributes)                                      
   4496a:	206a 00a8      	moveal %a2@(168),%a0                        
			}                                                                  
			else {                                                             
				if (tty->termios.c_cc[VMIN]) {                                    
					tty->rawInBufSemaphoreOptions = RTEMS_WAIT;                      
					tty->rawInBufSemaphoreTimeout = RTEMS_NO_TIMEOUT;                
					tty->rawInBufSemaphoreFirstTimeout = RTEMS_NO_TIMEOUT;           
   4496e:	42aa 0074      	clrl %a2@(116)                              
				else {                                                            
					tty->rawInBufSemaphoreOptions = RTEMS_NO_WAIT;                   
				}                                                                 
			}                                                                  
		}                                                                   
		if (tty->device.setAttributes)                                      
   44972:	4a88           	tstl %a0                                    
   44974:	6700 fe20      	beqw 44796 <rtems_termios_ioctl+0x50>       
			(*tty->device.setAttributes)(tty->minor, &tty->termios);           
   44978:	2f0c           	movel %a4,%sp@-                             
   4497a:	2f2a 0010      	movel %a2@(16),%sp@-                        
   4497e:	4e90           	jsr %a0@                                    
   44980:	508f           	addql #8,%sp                                
		/* Half guess that this is the right operation */                   
		*(int *)args->buffer = tty->ccount - tty->cindex + rawnc;           
		}                                                                   
		break;                                                              
	}                                                                    
	rtems_semaphore_release (tty->osem);                                 
   44982:	2f2a 0018      	movel %a2@(24),%sp@-                        
   44986:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         
	args->ioctl_return = sc;                                             
	return sc;                                                           
   4498c:	588f           	addql #4,%sp                                
   4498e:	6000 fe12      	braw 447a2 <rtems_termios_ioctl+0x5c>       
	case RTEMS_IO_TCDRAIN:                                               
		drainOutput (tty);                                                  
		break;                                                              
                                                                      
	case RTEMS_IO_SNDWAKEUP:                                             
		tty->tty_snd = *wakeup;                                             
   44992:	2014           	movel %a4@,%d0                              <== NOT EXECUTED
   44994:	222c 0004      	movel %a4@(4),%d1                           <== NOT EXECUTED
   44998:	2540 00d4      	movel %d0,%a2@(212)                         <== NOT EXECUTED
   4499c:	2541 00d8      	movel %d1,%a2@(216)                         <== NOT EXECUTED
		/* Half guess that this is the right operation */                   
		*(int *)args->buffer = tty->ccount - tty->cindex + rawnc;           
		}                                                                   
		break;                                                              
	}                                                                    
	rtems_semaphore_release (tty->osem);                                 
   449a0:	2f2a 0018      	movel %a2@(24),%sp@-                        <== NOT EXECUTED
   449a4:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
	args->ioctl_return = sc;                                             
	return sc;                                                           
   449aa:	588f           	addql #4,%sp                                <== NOT EXECUTED
   449ac:	6000 fdf4      	braw 447a2 <rtems_termios_ioctl+0x5c>       <== NOT EXECUTED
	sc = rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
	if (sc != RTEMS_SUCCESSFUL) {                                        
		args->ioctl_return = sc;                                            
		return sc;                                                          
	}                                                                    
	switch (args->command) {                                             
   449b0:	123c 0001      	moveb #1,%d1                                
   449b4:	b280           	cmpl %d0,%d1                                
   449b6:	6600 fe0e      	bnew 447c6 <rtems_termios_ioctl+0x80>       
			sc = RTEMS_INVALID_NUMBER;                                         
		}                                                                   
		break;                                                              
                                                                      
	case RTEMS_IO_GET_ATTRIBUTES:                                        
		*(struct termios *)args->buffer = tty->termios;                     
   449ba:	206b 0008      	moveal %a3@(8),%a0                          
   449be:	20ea 0030      	movel %a2@(48),%a0@+                        
   449c2:	20ea 0034      	movel %a2@(52),%a0@+                        
   449c6:	20ea 0038      	movel %a2@(56),%a0@+                        
   449ca:	20ea 003c      	movel %a2@(60),%a0@+                        
   449ce:	20ea 0040      	movel %a2@(64),%a0@+                        
   449d2:	20ea 0044      	movel %a2@(68),%a0@+                        
   449d6:	20ea 0048      	movel %a2@(72),%a0@+                        
   449da:	20ea 004c      	movel %a2@(76),%a0@+                        
   449de:	20aa 0050      	movel %a2@(80),%a0@                         
		/* Half guess that this is the right operation */                   
		*(int *)args->buffer = tty->ccount - tty->cindex + rawnc;           
		}                                                                   
		break;                                                              
	}                                                                    
	rtems_semaphore_release (tty->osem);                                 
   449e2:	2f2a 0018      	movel %a2@(24),%sp@-                        
   449e6:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         
	args->ioctl_return = sc;                                             
	return sc;                                                           
   449ec:	588f           	addql #4,%sp                                
   449ee:	6000 fdb2      	braw 447a2 <rtems_termios_ioctl+0x5c>       
	sc = rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
	if (sc != RTEMS_SUCCESSFUL) {                                        
		args->ioctl_return = sc;                                            
		return sc;                                                          
	}                                                                    
	switch (args->command) {                                             
   449f2:	0c80 4004 741a 	cmpil #1074033690,%d0                       <== NOT EXECUTED
   449f8:	675a           	beqs 44a54 <rtems_termios_ioctl+0x30e>      <== NOT EXECUTED
   449fa:	0c80 8004 741b 	cmpil #-2147191781,%d0                      <== NOT EXECUTED
   44a00:	6600 fdc4      	bnew 447c6 <rtems_termios_ioctl+0x80>       <== NOT EXECUTED
#if 1 /* FIXME */                                                     
	case TIOCSETD:                                                       
		/*                                                                  
		 * close old line discipline                                        
		 */                                                                 
		if (rtems_termios_linesw[tty->t_line].l_close != NULL) {            
   44a04:	202a 00cc      	movel %a2@(204),%d0                         <== NOT EXECUTED
   44a08:	49f9 0005 e614 	lea 5e614 <rtems_termios_linesw>,%a4        <== NOT EXECUTED
   44a0e:	e788           	lsll #3,%d0                                 <== NOT EXECUTED
   44a10:	2074 0c04      	moveal %a4@(00000004,%d0:l:4),%a0           <== NOT EXECUTED
   44a14:	4a88           	tstl %a0                                    <== NOT EXECUTED
   44a16:	6708           	beqs 44a20 <rtems_termios_ioctl+0x2da>      <== NOT EXECUTED
			sc = rtems_termios_linesw[tty->t_line].l_close(tty);               
   44a18:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   44a1a:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   44a1c:	588f           	addql #4,%sp                                <== NOT EXECUTED
   44a1e:	2400           	movel %d0,%d2                               <== NOT EXECUTED
		}                                                                   
		tty->t_line=*(int*)(args->buffer);                                  
   44a20:	206b 0008      	moveal %a3@(8),%a0                          <== NOT EXECUTED
   44a24:	2010           	movel %a0@,%d0                              <== NOT EXECUTED
		tty->t_sc = NULL; /* ensure that no more valid data */              
		/*                                                                  
		 * open new line discipline                                         
		 */                                                                 
		if (rtems_termios_linesw[tty->t_line].l_open != NULL) {             
   44a26:	2200           	movel %d0,%d1                               <== NOT EXECUTED
   44a28:	eb89           	lsll #5,%d1                                 <== NOT EXECUTED
		 * close old line discipline                                        
		 */                                                                 
		if (rtems_termios_linesw[tty->t_line].l_close != NULL) {            
			sc = rtems_termios_linesw[tty->t_line].l_close(tty);               
		}                                                                   
		tty->t_line=*(int*)(args->buffer);                                  
   44a2a:	2540 00cc      	movel %d0,%a2@(204)                         <== NOT EXECUTED
		tty->t_sc = NULL; /* ensure that no more valid data */              
		/*                                                                  
		 * open new line discipline                                         
		 */                                                                 
		if (rtems_termios_linesw[tty->t_line].l_open != NULL) {             
   44a2e:	2074 1800      	moveal %a4@(00000000,%d1:l),%a0             <== NOT EXECUTED
		 */                                                                 
		if (rtems_termios_linesw[tty->t_line].l_close != NULL) {            
			sc = rtems_termios_linesw[tty->t_line].l_close(tty);               
		}                                                                   
		tty->t_line=*(int*)(args->buffer);                                  
		tty->t_sc = NULL; /* ensure that no more valid data */              
   44a32:	42aa 00d0      	clrl %a2@(208)                              <== NOT EXECUTED
		/*                                                                  
		 * open new line discipline                                         
		 */                                                                 
		if (rtems_termios_linesw[tty->t_line].l_open != NULL) {             
   44a36:	4a88           	tstl %a0                                    <== NOT EXECUTED
   44a38:	6700 fd5c      	beqw 44796 <rtems_termios_ioctl+0x50>       <== NOT EXECUTED
			sc = rtems_termios_linesw[tty->t_line].l_open(tty);                
   44a3c:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   44a3e:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   44a40:	588f           	addql #4,%sp                                <== NOT EXECUTED
   44a42:	2400           	movel %d0,%d2                               <== NOT EXECUTED
		/* Half guess that this is the right operation */                   
		*(int *)args->buffer = tty->ccount - tty->cindex + rawnc;           
		}                                                                   
		break;                                                              
	}                                                                    
	rtems_semaphore_release (tty->osem);                                 
   44a44:	2f2a 0018      	movel %a2@(24),%sp@-                        <== NOT EXECUTED
   44a48:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
	args->ioctl_return = sc;                                             
	return sc;                                                           
   44a4e:	588f           	addql #4,%sp                                <== NOT EXECUTED
   44a50:	6000 fd50      	braw 447a2 <rtems_termios_ioctl+0x5c>       <== NOT EXECUTED
		if (rtems_termios_linesw[tty->t_line].l_open != NULL) {             
			sc = rtems_termios_linesw[tty->t_line].l_open(tty);                
		}                                                                   
		break;                                                              
	case TIOCGETD:                                                       
		*(int*)(args->buffer)=tty->t_line;                                  
   44a54:	206b 0008      	moveal %a3@(8),%a0                          <== NOT EXECUTED
   44a58:	20aa 00cc      	movel %a2@(204),%a0@                        <== NOT EXECUTED
		/* Half guess that this is the right operation */                   
		*(int *)args->buffer = tty->ccount - tty->cindex + rawnc;           
		}                                                                   
		break;                                                              
	}                                                                    
	rtems_semaphore_release (tty->osem);                                 
   44a5c:	2f2a 0018      	movel %a2@(24),%sp@-                        <== NOT EXECUTED
   44a60:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
	args->ioctl_return = sc;                                             
	return sc;                                                           
   44a66:	588f           	addql #4,%sp                                <== NOT EXECUTED
   44a68:	6000 fd38      	braw 447a2 <rtems_termios_ioctl+0x5c>       <== NOT EXECUTED
		/* Half guess that this is the right operation */                   
		*(int *)args->buffer = tty->ccount - tty->cindex + rawnc;           
		}                                                                   
		break;                                                              
	}                                                                    
	rtems_semaphore_release (tty->osem);                                 
   44a6c:	2f2a 0018      	movel %a2@(24),%sp@-                        <== NOT EXECUTED
		args->ioctl_return = sc;                                            
		return sc;                                                          
	}                                                                    
	switch (args->command) {                                             
	default:                                                             
		if (rtems_termios_linesw[tty->t_line].l_ioctl != NULL) {            
   44a70:	740a           	moveq #10,%d2                               <== NOT EXECUTED
		/* Half guess that this is the right operation */                   
		*(int *)args->buffer = tty->ccount - tty->cindex + rawnc;           
		}                                                                   
		break;                                                              
	}                                                                    
	rtems_semaphore_release (tty->osem);                                 
   44a72:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
	args->ioctl_return = sc;                                             
	return sc;                                                           
   44a78:	588f           	addql #4,%sp                                <== NOT EXECUTED
   44a7a:	6000 fd26      	braw 447a2 <rtems_termios_ioctl+0x5c>       <== NOT EXECUTED
			tty->rawInBufSemaphoreTimeout = RTEMS_NO_TIMEOUT;                  
			tty->rawInBufSemaphoreFirstTimeout = RTEMS_NO_TIMEOUT;             
		}                                                                   
		else {                                                              
			tty->vtimeTicks = tty->termios.c_cc[VTIME] *                       
			              rtems_clock_get_ticks_per_second() / 10;             
   44a7e:	4283           	clrl %d3                                    <== NOT EXECUTED
   44a80:	162a 0046      	moveb %a2@(70),%d3                          <== NOT EXECUTED
   44a84:	4eb9 0004 55e4 	jsr 455e4 <rtems_clock_get_ticks_per_second><== NOT EXECUTED
			tty->rawInBufSemaphoreOptions = RTEMS_WAIT;                        
			tty->rawInBufSemaphoreTimeout = RTEMS_NO_TIMEOUT;                  
			tty->rawInBufSemaphoreFirstTimeout = RTEMS_NO_TIMEOUT;             
		}                                                                   
		else {                                                              
			tty->vtimeTicks = tty->termios.c_cc[VTIME] *                       
   44a8a:	4c03 0800      	mulsl %d3,%d0                               <== NOT EXECUTED
   44a8e:	760a           	moveq #10,%d3                               <== NOT EXECUTED
   44a90:	4c43 0000      	remul %d3,%d0,%d0                           <== NOT EXECUTED
   44a94:	2540 0054      	movel %d0,%a2@(84)                          <== NOT EXECUTED
			              rtems_clock_get_ticks_per_second() / 10;             
			if (tty->termios.c_cc[VTIME]) {                                    
   44a98:	4a2a 0046      	tstb %a2@(70)                               <== NOT EXECUTED
   44a9c:	677a           	beqs 44b18 <rtems_termios_ioctl+0x3d2>      <== NOT EXECUTED
				tty->rawInBufSemaphoreOptions = RTEMS_WAIT;                       
   44a9e:	42aa 006c      	clrl %a2@(108)                              <== NOT EXECUTED
				tty->rawInBufSemaphoreTimeout = tty->vtimeTicks;                  
   44aa2:	2540 0070      	movel %d0,%a2@(112)                         <== NOT EXECUTED
				if (tty->termios.c_cc[VMIN])                                      
   44aa6:	4a2a 0047      	tstb %a2@(71)                               <== NOT EXECUTED
   44aaa:	6600 febe      	bnew 4496a <rtems_termios_ioctl+0x224>      <== NOT EXECUTED
				else {                                                            
					tty->rawInBufSemaphoreOptions = RTEMS_NO_WAIT;                   
				}                                                                 
			}                                                                  
		}                                                                   
		if (tty->device.setAttributes)                                      
   44aae:	206a 00a8      	moveal %a2@(168),%a0                        <== NOT EXECUTED
				tty->rawInBufSemaphoreOptions = RTEMS_WAIT;                       
				tty->rawInBufSemaphoreTimeout = tty->vtimeTicks;                  
				if (tty->termios.c_cc[VMIN])                                      
					tty->rawInBufSemaphoreFirstTimeout = RTEMS_NO_TIMEOUT;           
				else                                                              
					tty->rawInBufSemaphoreFirstTimeout = tty->vtimeTicks;            
   44ab2:	2540 0074      	movel %d0,%a2@(116)                         <== NOT EXECUTED
				else {                                                            
					tty->rawInBufSemaphoreOptions = RTEMS_NO_WAIT;                   
				}                                                                 
			}                                                                  
		}                                                                   
		if (tty->device.setAttributes)                                      
   44ab6:	4a88           	tstl %a0                                    <== NOT EXECUTED
   44ab8:	6600 febe      	bnew 44978 <rtems_termios_ioctl+0x232>      <== NOT EXECUTED
   44abc:	6000 fcd8      	braw 44796 <rtems_termios_ioctl+0x50>       <== NOT EXECUTED
#endif                                                                
 	case FIONREAD:                                                      
		{                                                                   
		int rawnc = tty->rawInBuf.Tail - tty->rawInBuf.Head;                
		if ( rawnc < 0 )                                                    
			rawnc += tty->rawInBuf.Size;                                       
   44ac0:	222a 0064      	movel %a2@(100),%d1                         <== NOT EXECUTED
   44ac4:	d081           	addl %d1,%d0                                <== NOT EXECUTED
		/* Half guess that this is the right operation */                   
		*(int *)args->buffer = tty->ccount - tty->cindex + rawnc;           
   44ac6:	222a 0020      	movel %a2@(32),%d1                          <== NOT EXECUTED
   44aca:	92aa 0024      	subl %a2@(36),%d1                           <== NOT EXECUTED
   44ace:	d280           	addl %d0,%d1                                <== NOT EXECUTED
   44ad0:	206b 0008      	moveal %a3@(8),%a0                          <== NOT EXECUTED
   44ad4:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
   44ad6:	6000 fd56      	braw 4482e <rtems_termios_ioctl+0xe8>       <== NOT EXECUTED
  /*                                                                  
   * check for flow control options to be switched on                 
   */                                                                 
  /* check for incoming RTS/CTS flow control switched on */           
  if (tty->termios.c_cflag & CRTSCTS) {                               
    tty->flow_ctrl |= FL_MDRTS;                                       
   44ada:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   44ade:	08c0 0008      	bset #8,%d0                                 <== NOT EXECUTED
   44ae2:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
  }                                                                   
  /* check for incoming XON/XOF flow control switched on */           
  if (tty->termios.c_iflag & IXOFF) {                                 
   44ae6:	202a 0030      	movel %a2@(48),%d0                          <== NOT EXECUTED
   44aea:	0800 000c      	btst #12,%d0                                <== NOT EXECUTED
   44aee:	6700 fe56      	beqw 44946 <rtems_termios_ioctl+0x200>      <== NOT EXECUTED
   44af2:	6000 fe46      	braw 4493a <rtems_termios_ioctl+0x1f4>      <== NOT EXECUTED
      tty->flow_ctrl &= ~FL_OSTOP;                                    
      /* check for chars in output buffer (or rob_state?) */          
      if (tty->rawOutBufState != rob_idle) {                          
	/* if chars available, call write function... */                     
	(*tty->device.write)(tty->minor,                                     
		     &tty->rawOutBuf.theBuf[tty->rawOutBuf.Tail],1);                
   44af6:	202a 0084      	movel %a2@(132),%d0                         <== NOT EXECUTED
      rtems_interrupt_disable(level);                                 
      tty->flow_ctrl &= ~FL_OSTOP;                                    
      /* check for chars in output buffer (or rob_state?) */          
      if (tty->rawOutBufState != rob_idle) {                          
	/* if chars available, call write function... */                     
	(*tty->device.write)(tty->minor,                                     
   44afa:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   44afe:	d0aa 007c      	addl %a2@(124),%d0                          <== NOT EXECUTED
   44b02:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   44b04:	2f2a 0010      	movel %a2@(16),%sp@-                        <== NOT EXECUTED
   44b08:	206a 00a4      	moveal %a2@(164),%a0                        <== NOT EXECUTED
   44b0c:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   44b0e:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
		     &tty->rawOutBuf.theBuf[tty->rawOutBuf.Tail],1);                
      }                                                               
      /* reenable interrupts */                                       
      rtems_interrupt_enable(level);                                  
   44b12:	46c3           	movew %d3,%sr                               <== NOT EXECUTED
   44b14:	6000 fda2      	braw 448b8 <rtems_termios_ioctl+0x172>      <== NOT EXECUTED
					tty->rawInBufSemaphoreFirstTimeout = RTEMS_NO_TIMEOUT;           
				else                                                              
					tty->rawInBufSemaphoreFirstTimeout = tty->vtimeTicks;            
			}                                                                  
			else {                                                             
				if (tty->termios.c_cc[VMIN]) {                                    
   44b18:	4a2a 0047      	tstb %a2@(71)                               <== NOT EXECUTED
   44b1c:	6600 fe44      	bnew 44962 <rtems_termios_ioctl+0x21c>      <== NOT EXECUTED
					tty->rawInBufSemaphoreOptions = RTEMS_WAIT;                      
					tty->rawInBufSemaphoreTimeout = RTEMS_NO_TIMEOUT;                
					tty->rawInBufSemaphoreFirstTimeout = RTEMS_NO_TIMEOUT;           
				}                                                                 
				else {                                                            
					tty->rawInBufSemaphoreOptions = RTEMS_NO_WAIT;                   
   44b20:	7001           	moveq #1,%d0                                <== NOT EXECUTED
				}                                                                 
			}                                                                  
		}                                                                   
		if (tty->device.setAttributes)                                      
   44b22:	206a 00a8      	moveal %a2@(168),%a0                        <== NOT EXECUTED
					tty->rawInBufSemaphoreOptions = RTEMS_WAIT;                      
					tty->rawInBufSemaphoreTimeout = RTEMS_NO_TIMEOUT;                
					tty->rawInBufSemaphoreFirstTimeout = RTEMS_NO_TIMEOUT;           
				}                                                                 
				else {                                                            
					tty->rawInBufSemaphoreOptions = RTEMS_NO_WAIT;                   
   44b26:	2540 006c      	movel %d0,%a2@(108)                         <== NOT EXECUTED
				}                                                                 
			}                                                                  
		}                                                                   
		if (tty->device.setAttributes)                                      
   44b2a:	4a88           	tstl %a0                                    <== NOT EXECUTED
   44b2c:	6600 fe4a      	bnew 44978 <rtems_termios_ioctl+0x232>      <== NOT EXECUTED
   44b30:	6000 fc64      	braw 44796 <rtems_termios_ioctl+0x50>       <== NOT EXECUTED
                                                                      
000448e4 <rtems_termios_number_to_baud>:                              
#include <rtems/termiostypes.h>                                       
                                                                      
int rtems_termios_number_to_baud(                                     
  int32_t baud                                                        
)                                                                     
{                                                                     
   448e4:	4e56 0000      	linkw %fp,#0                                
   448e8:	222e 0008      	movel %fp@(8),%d1                           
  int termios_baud;                                                   
                                                                      
  switch (baud) {                                                     
   448ec:	0c81 0000 04b0 	cmpil #1200,%d1                             
   448f2:	6700 011c      	beqw 44a10 <rtems_termios_number_to_baud+0x12c>
   448f6:	6f3c           	bles 44934 <rtems_termios_number_to_baud+0x50>
   448f8:	0c81 0000 4b00 	cmpil #19200,%d1                            
   448fe:	6700 011c      	beqw 44a1c <rtems_termios_number_to_baud+0x138>
   44902:	6f60           	bles 44964 <rtems_termios_number_to_baud+0x80>
    case 2400:    termios_baud = B2400;   break;                      
    case 4800:    termios_baud = B4800;   break;                      
    case 9600:    termios_baud = B9600;   break;                      
    case 19200:   termios_baud = B19200;  break;                      
    case 38400:   termios_baud = B38400;  break;                      
    case 57600:   termios_baud = B57600;  break;                      
   44904:	203c 0000 1002 	movel #4098,%d0                             
  int32_t baud                                                        
)                                                                     
{                                                                     
  int termios_baud;                                                   
                                                                      
  switch (baud) {                                                     
   4490a:	0c81 0001 c200 	cmpil #115200,%d1                           
   44910:	671e           	beqs 44930 <rtems_termios_number_to_baud+0x4c>
   44912:	6f00 00a8      	blew 449bc <rtems_termios_number_to_baud+0xd8>
    case 4800:    termios_baud = B4800;   break;                      
    case 9600:    termios_baud = B9600;   break;                      
    case 19200:   termios_baud = B19200;  break;                      
    case 38400:   termios_baud = B38400;  break;                      
    case 57600:   termios_baud = B57600;  break;                      
    case 115200:  termios_baud = B115200; break;                      
   44916:	203c 0000 1003 	movel #4099,%d0                             
  int32_t baud                                                        
)                                                                     
{                                                                     
  int termios_baud;                                                   
                                                                      
  switch (baud) {                                                     
   4491c:	0c81 0003 8400 	cmpil #230400,%d1                           
   44922:	670c           	beqs 44930 <rtems_termios_number_to_baud+0x4c>
    case 9600:    termios_baud = B9600;   break;                      
    case 19200:   termios_baud = B19200;  break;                      
    case 38400:   termios_baud = B38400;  break;                      
    case 57600:   termios_baud = B57600;  break;                      
    case 115200:  termios_baud = B115200; break;                      
    case 230400:  termios_baud = B230400; break;                      
   44924:	5280           	addql #1,%d0                                
  int32_t baud                                                        
)                                                                     
{                                                                     
  int termios_baud;                                                   
                                                                      
  switch (baud) {                                                     
   44926:	0c81 0007 0800 	cmpil #460800,%d1                           
   4492c:	6702           	beqs 44930 <rtems_termios_number_to_baud+0x4c>
    case 19200:   termios_baud = B19200;  break;                      
    case 38400:   termios_baud = B38400;  break;                      
    case 57600:   termios_baud = B57600;  break;                      
    case 115200:  termios_baud = B115200; break;                      
    case 230400:  termios_baud = B230400; break;                      
    case 460800:  termios_baud = B460800; break;                      
   4492e:	70ff           	moveq #-1,%d0                               
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   44930:	4e5e           	unlk %fp                                    
   44932:	4e75           	rts                                         
  int32_t baud                                                        
)                                                                     
{                                                                     
  int termios_baud;                                                   
                                                                      
  switch (baud) {                                                     
   44934:	0c81 0000 0086 	cmpil #134,%d1                              
   4493a:	6700 00da      	beqw 44a16 <rtems_termios_number_to_baud+0x132>
   4493e:	6f46           	bles 44986 <rtems_termios_number_to_baud+0xa2>
   44940:	0c81 0000 00c8 	cmpil #200,%d1                              
   44946:	6700 00b6      	beqw 449fe <rtems_termios_number_to_baud+0x11a>
   4494a:	6f56           	bles 449a2 <rtems_termios_number_to_baud+0xbe>
   4494c:	0c81 0000 012c 	cmpil #300,%d1                              
   44952:	6700 00a4      	beqw 449f8 <rtems_termios_number_to_baud+0x114>
   44956:	0c81 0000 0258 	cmpil #600,%d1                              
   4495c:	66d0           	bnes 4492e <rtems_termios_number_to_baud+0x4a>
    case 75:      termios_baud = B75;     break;                      
    case 110:     termios_baud = B110;    break;                      
    case 134:     termios_baud = B134;    break;                      
    case 150:     termios_baud = B150;    break;                      
    case 200:     termios_baud = B200;    break;                      
    case 300:     termios_baud = B300;    break;                      
   4495e:	7008           	moveq #8,%d0                                
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   44960:	4e5e           	unlk %fp                                    
   44962:	4e75           	rts                                         
  int32_t baud                                                        
)                                                                     
{                                                                     
  int termios_baud;                                                   
                                                                      
  switch (baud) {                                                     
   44964:	0c81 0000 0960 	cmpil #2400,%d1                             
   4496a:	6700 009e      	beqw 44a0a <rtems_termios_number_to_baud+0x126>
   4496e:	6f66           	bles 449d6 <rtems_termios_number_to_baud+0xf2>
   44970:	0c81 0000 12c0 	cmpil #4800,%d1                             
   44976:	676e           	beqs 449e6 <rtems_termios_number_to_baud+0x102>
   44978:	0c81 0000 2580 	cmpil #9600,%d1                             
   4497e:	66ae           	bnes 4492e <rtems_termios_number_to_baud+0x4a>
    case 300:     termios_baud = B300;    break;                      
    case 600:     termios_baud = B600;    break;                      
    case 1200:    termios_baud = B1200;   break;                      
    case 1800:    termios_baud = B1800;   break;                      
    case 2400:    termios_baud = B2400;   break;                      
    case 4800:    termios_baud = B4800;   break;                      
   44980:	700d           	moveq #13,%d0                               
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   44982:	4e5e           	unlk %fp                                    
   44984:	4e75           	rts                                         
  int32_t baud                                                        
)                                                                     
{                                                                     
  int termios_baud;                                                   
                                                                      
  switch (baud) {                                                     
   44986:	7032           	moveq #50,%d0                               
   44988:	b081           	cmpl %d1,%d0                                
   4498a:	6778           	beqs 44a04 <rtems_termios_number_to_baud+0x120>
   4498c:	6c22           	bges 449b0 <rtems_termios_number_to_baud+0xcc>
   4498e:	704b           	moveq #75,%d0                               
   44990:	b081           	cmpl %d1,%d0                                
   44992:	6758           	beqs 449ec <rtems_termios_number_to_baud+0x108>
   44994:	103c 006e      	moveb #110,%d0                              
   44998:	b081           	cmpl %d1,%d0                                
   4499a:	6692           	bnes 4492e <rtems_termios_number_to_baud+0x4a>
    case 0:       termios_baud = B0;      break;                      
    case 50:      termios_baud = B50;     break;                      
    case 75:      termios_baud = B75;     break;                      
   4499c:	7003           	moveq #3,%d0                                
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   4499e:	4e5e           	unlk %fp                                    
   449a0:	4e75           	rts                                         
  int32_t baud                                                        
)                                                                     
{                                                                     
  int termios_baud;                                                   
                                                                      
  switch (baud) {                                                     
   449a2:	0c81 0000 0096 	cmpil #150,%d1                              
   449a8:	6684           	bnes 4492e <rtems_termios_number_to_baud+0x4a>
    case 0:       termios_baud = B0;      break;                      
    case 50:      termios_baud = B50;     break;                      
    case 75:      termios_baud = B75;     break;                      
    case 110:     termios_baud = B110;    break;                      
    case 134:     termios_baud = B134;    break;                      
   449aa:	7005           	moveq #5,%d0                                
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   449ac:	4e5e           	unlk %fp                                    
   449ae:	4e75           	rts                                         
  int32_t baud                                                        
)                                                                     
{                                                                     
  int termios_baud;                                                   
                                                                      
  switch (baud) {                                                     
   449b0:	4a81           	tstl %d1                                    
   449b2:	6600 ff7a      	bnew 4492e <rtems_termios_number_to_baud+0x4a>
   449b6:	4280           	clrl %d0                                    
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   449b8:	4e5e           	unlk %fp                                    
   449ba:	4e75           	rts                                         
  int32_t baud                                                        
)                                                                     
{                                                                     
  int termios_baud;                                                   
                                                                      
  switch (baud) {                                                     
   449bc:	0c81 0000 9600 	cmpil #38400,%d1                            
   449c2:	672e           	beqs 449f2 <rtems_termios_number_to_baud+0x10e>
    case 1800:    termios_baud = B1800;   break;                      
    case 2400:    termios_baud = B2400;   break;                      
    case 4800:    termios_baud = B4800;   break;                      
    case 9600:    termios_baud = B9600;   break;                      
    case 19200:   termios_baud = B19200;  break;                      
    case 38400:   termios_baud = B38400;  break;                      
   449c4:	5380           	subql #1,%d0                                
  int32_t baud                                                        
)                                                                     
{                                                                     
  int termios_baud;                                                   
                                                                      
  switch (baud) {                                                     
   449c6:	0c81 0000 e100 	cmpil #57600,%d1                            
   449cc:	6700 ff62      	beqw 44930 <rtems_termios_number_to_baud+0x4c>
    case 19200:   termios_baud = B19200;  break;                      
    case 38400:   termios_baud = B38400;  break;                      
    case 57600:   termios_baud = B57600;  break;                      
    case 115200:  termios_baud = B115200; break;                      
    case 230400:  termios_baud = B230400; break;                      
    case 460800:  termios_baud = B460800; break;                      
   449d0:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   449d2:	6000 ff5c      	braw 44930 <rtems_termios_number_to_baud+0x4c><== NOT EXECUTED
  int32_t baud                                                        
)                                                                     
{                                                                     
  int termios_baud;                                                   
                                                                      
  switch (baud) {                                                     
   449d6:	0c81 0000 0708 	cmpil #1800,%d1                             
   449dc:	6600 ff50      	bnew 4492e <rtems_termios_number_to_baud+0x4a>
    case 134:     termios_baud = B134;    break;                      
    case 150:     termios_baud = B150;    break;                      
    case 200:     termios_baud = B200;    break;                      
    case 300:     termios_baud = B300;    break;                      
    case 600:     termios_baud = B600;    break;                      
    case 1200:    termios_baud = B1200;   break;                      
   449e0:	700a           	moveq #10,%d0                               
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   449e2:	4e5e           	unlk %fp                                    
   449e4:	4e75           	rts                                         
    case 200:     termios_baud = B200;    break;                      
    case 300:     termios_baud = B300;    break;                      
    case 600:     termios_baud = B600;    break;                      
    case 1200:    termios_baud = B1200;   break;                      
    case 1800:    termios_baud = B1800;   break;                      
    case 2400:    termios_baud = B2400;   break;                      
   449e6:	700c           	moveq #12,%d0                               
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   449e8:	4e5e           	unlk %fp                                    
   449ea:	4e75           	rts                                         
  int32_t baud                                                        
)                                                                     
{                                                                     
  int termios_baud;                                                   
                                                                      
  switch (baud) {                                                     
   449ec:	7002           	moveq #2,%d0                                
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   449ee:	4e5e           	unlk %fp                                    
   449f0:	4e75           	rts                                         
    case 1200:    termios_baud = B1200;   break;                      
    case 1800:    termios_baud = B1800;   break;                      
    case 2400:    termios_baud = B2400;   break;                      
    case 4800:    termios_baud = B4800;   break;                      
    case 9600:    termios_baud = B9600;   break;                      
    case 19200:   termios_baud = B19200;  break;                      
   449f2:	700f           	moveq #15,%d0                               
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   449f4:	4e5e           	unlk %fp                                    
   449f6:	4e75           	rts                                         
    case 50:      termios_baud = B50;     break;                      
    case 75:      termios_baud = B75;     break;                      
    case 110:     termios_baud = B110;    break;                      
    case 134:     termios_baud = B134;    break;                      
    case 150:     termios_baud = B150;    break;                      
    case 200:     termios_baud = B200;    break;                      
   449f8:	7007           	moveq #7,%d0                                
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   449fa:	4e5e           	unlk %fp                                    
   449fc:	4e75           	rts                                         
    case 0:       termios_baud = B0;      break;                      
    case 50:      termios_baud = B50;     break;                      
    case 75:      termios_baud = B75;     break;                      
    case 110:     termios_baud = B110;    break;                      
    case 134:     termios_baud = B134;    break;                      
    case 150:     termios_baud = B150;    break;                      
   449fe:	7006           	moveq #6,%d0                                
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   44a00:	4e5e           	unlk %fp                                    
   44a02:	4e75           	rts                                         
  int32_t baud                                                        
)                                                                     
{                                                                     
  int termios_baud;                                                   
                                                                      
  switch (baud) {                                                     
   44a04:	7001           	moveq #1,%d0                                
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   44a06:	4e5e           	unlk %fp                                    
   44a08:	4e75           	rts                                         
    case 150:     termios_baud = B150;    break;                      
    case 200:     termios_baud = B200;    break;                      
    case 300:     termios_baud = B300;    break;                      
    case 600:     termios_baud = B600;    break;                      
    case 1200:    termios_baud = B1200;   break;                      
    case 1800:    termios_baud = B1800;   break;                      
   44a0a:	700b           	moveq #11,%d0                               
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   44a0c:	4e5e           	unlk %fp                                    
   44a0e:	4e75           	rts                                         
    case 110:     termios_baud = B110;    break;                      
    case 134:     termios_baud = B134;    break;                      
    case 150:     termios_baud = B150;    break;                      
    case 200:     termios_baud = B200;    break;                      
    case 300:     termios_baud = B300;    break;                      
    case 600:     termios_baud = B600;    break;                      
   44a10:	7009           	moveq #9,%d0                                
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   44a12:	4e5e           	unlk %fp                                    
   44a14:	4e75           	rts                                         
                                                                      
  switch (baud) {                                                     
    case 0:       termios_baud = B0;      break;                      
    case 50:      termios_baud = B50;     break;                      
    case 75:      termios_baud = B75;     break;                      
    case 110:     termios_baud = B110;    break;                      
   44a16:	7004           	moveq #4,%d0                                
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   44a18:	4e5e           	unlk %fp                                    
   44a1a:	4e75           	rts                                         
    case 600:     termios_baud = B600;    break;                      
    case 1200:    termios_baud = B1200;   break;                      
    case 1800:    termios_baud = B1800;   break;                      
    case 2400:    termios_baud = B2400;   break;                      
    case 4800:    termios_baud = B4800;   break;                      
    case 9600:    termios_baud = B9600;   break;                      
   44a1c:	700e           	moveq #14,%d0                               
    case 460800:  termios_baud = B460800; break;                      
    default:      termios_baud = -1;      break;                      
  }                                                                   
                                                                      
  return termios_baud;                                                
}                                                                     
   44a1e:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      
00044ce2 <rtems_termios_open>:                                        
  rtems_device_major_number      major,                               
  rtems_device_minor_number      minor,                               
  void                          *arg,                                 
  const rtems_termios_callbacks *callbacks                            
  )                                                                   
{                                                                     
   44ce2:	4e56 ffdc      	linkw %fp,#-36                              
   44ce6:	48d7 3c3c      	moveml %d2-%d5/%a2-%a5,%sp@                 
	struct rtems_termios_tty *tty;                                       
                                                                      
	/*                                                                   
	 * See if the device has already been opened                         
	 */                                                                  
	sc = rtems_semaphore_obtain (rtems_termios_ttyMutex,                 
   44cea:	42a7           	clrl %sp@-                                  
  rtems_device_major_number      major,                               
  rtems_device_minor_number      minor,                               
  void                          *arg,                                 
  const rtems_termios_callbacks *callbacks                            
  )                                                                   
{                                                                     
   44cec:	242e 0008      	movel %fp@(8),%d2                           
	struct rtems_termios_tty *tty;                                       
                                                                      
	/*                                                                   
	 * See if the device has already been opened                         
	 */                                                                  
	sc = rtems_semaphore_obtain (rtems_termios_ttyMutex,                 
   44cf0:	42a7           	clrl %sp@-                                  
   44cf2:	2f39 0005 ee5c 	movel 5ee5c <rtems_termios_ttyMutex>,%sp@-  
  rtems_device_major_number      major,                               
  rtems_device_minor_number      minor,                               
  void                          *arg,                                 
  const rtems_termios_callbacks *callbacks                            
  )                                                                   
{                                                                     
   44cf8:	262e 000c      	movel %fp@(12),%d3                          
   44cfc:	266e 0010      	moveal %fp@(16),%a3                         
	struct rtems_termios_tty *tty;                                       
                                                                      
	/*                                                                   
	 * See if the device has already been opened                         
	 */                                                                  
	sc = rtems_semaphore_obtain (rtems_termios_ttyMutex,                 
   44d00:	4eb9 0004 5d2c 	jsr 45d2c <rtems_semaphore_obtain>          
				     RTEMS_WAIT, RTEMS_NO_TIMEOUT);                               
	if (sc != RTEMS_SUCCESSFUL)                                          
   44d06:	4fef 000c      	lea %sp@(12),%sp                            
	struct rtems_termios_tty *tty;                                       
                                                                      
	/*                                                                   
	 * See if the device has already been opened                         
	 */                                                                  
	sc = rtems_semaphore_obtain (rtems_termios_ttyMutex,                 
   44d0a:	2800           	movel %d0,%d4                               
				     RTEMS_WAIT, RTEMS_NO_TIMEOUT);                               
	if (sc != RTEMS_SUCCESSFUL)                                          
   44d0c:	6600 027a      	bnew 44f88 <rtems_termios_open+0x2a6>       
		return sc;                                                          
	for (tty = rtems_termios_ttyHead ; tty != NULL ; tty = tty->forw) {  
   44d10:	2479 0005 ee64 	moveal 5ee64 <rtems_termios_ttyHead>,%a2    
   44d16:	4a8a           	tstl %a2                                    
   44d18:	670e           	beqs 44d28 <rtems_termios_open+0x46>        
		if ((tty->major == major) && (tty->minor == minor))                 
   44d1a:	b4aa 000c      	cmpl %a2@(12),%d2                           
   44d1e:	6700 0274      	beqw 44f94 <rtems_termios_open+0x2b2>       
	 */                                                                  
	sc = rtems_semaphore_obtain (rtems_termios_ttyMutex,                 
				     RTEMS_WAIT, RTEMS_NO_TIMEOUT);                               
	if (sc != RTEMS_SUCCESSFUL)                                          
		return sc;                                                          
	for (tty = rtems_termios_ttyHead ; tty != NULL ; tty = tty->forw) {  
   44d22:	2452           	moveal %a2@,%a2                             
   44d24:	4a8a           	tstl %a2                                    
   44d26:	66f2           	bnes 44d1a <rtems_termios_open+0x38>        
		static char c = 'a';                                                
                                                                      
		/*                                                                  
		 * Create a new device                                              
		 */                                                                 
		tty = calloc (1, sizeof (struct rtems_termios_tty));                
   44d28:	4878 00e8      	pea e8 <DBL_MANT_DIG+0xb3>                  
   44d2c:	4878 0001      	pea 1 <ADD>                                 
   44d30:	4eb9 0004 a608 	jsr 4a608 <calloc>                          
		if (tty == NULL) {                                                  
   44d36:	508f           	addql #8,%sp                                
		static char c = 'a';                                                
                                                                      
		/*                                                                  
		 * Create a new device                                              
		 */                                                                 
		tty = calloc (1, sizeof (struct rtems_termios_tty));                
   44d38:	2840           	moveal %d0,%a4                              
   44d3a:	2440           	moveal %d0,%a2                              
		if (tty == NULL) {                                                  
   44d3c:	4a80           	tstl %d0                                    
   44d3e:	6700 0348      	beqw 45088 <rtems_termios_open+0x3a6>       
			return RTEMS_NO_MEMORY;                                            
		}                                                                   
		/*                                                                  
		 * allocate raw input buffer                                        
		 */                                                                 
		tty->rawInBuf.Size = RAW_INPUT_BUFFER_SIZE;                         
   44d42:	41f9 0005 d818 	lea 5d818 <rtems_termios_raw_input_size>,%a0
		tty->rawInBuf.theBuf = malloc (tty->rawInBuf.Size);                 
   44d48:	4bf9 0004 ac8c 	lea 4ac8c <malloc>,%a5                      
			return RTEMS_NO_MEMORY;                                            
		}                                                                   
		/*                                                                  
		 * allocate raw input buffer                                        
		 */                                                                 
		tty->rawInBuf.Size = RAW_INPUT_BUFFER_SIZE;                         
   44d4e:	2950 0064      	movel %a0@,%a4@(100)                        
		tty->rawInBuf.theBuf = malloc (tty->rawInBuf.Size);                 
   44d52:	202c 0064      	movel %a4@(100),%d0                         
   44d56:	2f00           	movel %d0,%sp@-                             
   44d58:	4e95           	jsr %a5@                                    
		if (tty->rawInBuf.theBuf == NULL) {                                 
   44d5a:	588f           	addql #4,%sp                                
		}                                                                   
		/*                                                                  
		 * allocate raw input buffer                                        
		 */                                                                 
		tty->rawInBuf.Size = RAW_INPUT_BUFFER_SIZE;                         
		tty->rawInBuf.theBuf = malloc (tty->rawInBuf.Size);                 
   44d5c:	2940 0058      	movel %d0,%a4@(88)                          
		if (tty->rawInBuf.theBuf == NULL) {                                 
   44d60:	6700 0342      	beqw 450a4 <rtems_termios_open+0x3c2>       
			return RTEMS_NO_MEMORY;                                            
		}                                                                   
		/*                                                                  
		 * allocate raw output buffer                                       
		 */                                                                 
		tty->rawOutBuf.Size = RAW_OUTPUT_BUFFER_SIZE;                       
   44d64:	41f9 0005 d81c 	lea 5d81c <rtems_termios_raw_output_size>,%a0
   44d6a:	2950 0088      	movel %a0@,%a4@(136)                        
		tty->rawOutBuf.theBuf = malloc (tty->rawOutBuf.Size);               
   44d6e:	202c 0088      	movel %a4@(136),%d0                         
   44d72:	2f00           	movel %d0,%sp@-                             
   44d74:	4e95           	jsr %a5@                                    
		if (tty->rawOutBuf.theBuf == NULL) {                                
   44d76:	588f           	addql #4,%sp                                
		}                                                                   
		/*                                                                  
		 * allocate raw output buffer                                       
		 */                                                                 
		tty->rawOutBuf.Size = RAW_OUTPUT_BUFFER_SIZE;                       
		tty->rawOutBuf.theBuf = malloc (tty->rawOutBuf.Size);               
   44d78:	2940 007c      	movel %d0,%a4@(124)                         
		if (tty->rawOutBuf.theBuf == NULL) {                                
   44d7c:	6700 034a      	beqw 450c8 <rtems_termios_open+0x3e6>       
			return RTEMS_NO_MEMORY;                                            
		}                                                                   
		/*                                                                  
		 * allocate cooked buffer                                           
		 */                                                                 
		tty->cbuf  = malloc (CBUFSIZE);                                     
   44d80:	2f39 0005 d814 	movel 5d814 <rtems_termios_cbufsize>,%sp@-  
   44d86:	4e95           	jsr %a5@                                    
		if (tty->cbuf == NULL) {                                            
   44d88:	588f           	addql #4,%sp                                
			return RTEMS_NO_MEMORY;                                            
		}                                                                   
		/*                                                                  
		 * allocate cooked buffer                                           
		 */                                                                 
		tty->cbuf  = malloc (CBUFSIZE);                                     
   44d8a:	2940 001c      	movel %d0,%a4@(28)                          
		if (tty->cbuf == NULL) {                                            
   44d8e:	6700 0366      	beqw 450f6 <rtems_termios_open+0x414>       
		tty->tty_rcvwakeup  = 0;                                            
                                                                      
		/*                                                                  
		 * link tty                                                         
		 */                                                                 
		tty->forw = rtems_termios_ttyHead;                                  
   44d92:	2079 0005 ee64 	moveal 5ee64 <rtems_termios_ttyHead>,%a0    
			return RTEMS_NO_MEMORY;                                            
		}                                                                   
		/*                                                                  
		 * Initialize wakeup callbacks                                      
		 */                                                                 
		tty->tty_snd.sw_pfn = NULL;                                         
   44d98:	42ac 00d4      	clrl %a4@(212)                              
		tty->tty_snd.sw_arg = NULL;                                         
   44d9c:	42ac 00d8      	clrl %a4@(216)                              
		tty->tty_rcv.sw_pfn = NULL;                                         
   44da0:	42ac 00dc      	clrl %a4@(220)                              
		tty->tty_rcv.sw_arg = NULL;                                         
   44da4:	42ac 00e0      	clrl %a4@(224)                              
		tty->tty_rcvwakeup  = 0;                                            
   44da8:	42ac 00e4      	clrl %a4@(228)                              
                                                                      
		/*                                                                  
		 * link tty                                                         
		 */                                                                 
		tty->forw = rtems_termios_ttyHead;                                  
   44dac:	2888           	movel %a0,%a4@                              
		tty->back = NULL;                                                   
   44dae:	42ac 0004      	clrl %a4@(4)                                
		if (rtems_termios_ttyHead != NULL)                                  
   44db2:	4a88           	tstl %a0                                    
   44db4:	6704           	beqs 44dba <rtems_termios_open+0xd8>        
			rtems_termios_ttyHead->back = tty;                                 
   44db6:	214c 0004      	movel %a4,%a0@(4)                           
		rtems_termios_ttyHead = tty;                                        
   44dba:	23cc 0005 ee64 	movel %a4,5ee64 <rtems_termios_ttyHead>     
		if (rtems_termios_ttyTail == NULL)                                  
   44dc0:	4ab9 0005 ee60 	tstl 5ee60 <rtems_termios_ttyTail>          
   44dc6:	6700 02b6      	beqw 4507e <rtems_termios_open+0x39c>       
		tty->major = major;                                                 
                                                                      
		/*                                                                  
		 * Set up mutex semaphores                                          
		 */                                                                 
		sc = rtems_semaphore_create (                                       
   44dca:	486c 0014      	pea %a4@(20)                                
   44dce:	4bf9 0004 5a8c 	lea 45a8c <rtems_semaphore_create>,%a5      
   44dd4:	1039 0005 d820 	moveb 5d820 <c.6272>,%d0                    
   44dda:	42a7           	clrl %sp@-                                  
   44ddc:	4878 0054      	pea 54 <DBL_MANT_DIG+0x1f>                  
   44de0:	49c0           	extbl %d0                                   
   44de2:	4878 0001      	pea 1 <ADD>                                 
   44de6:	0080 5452 6900 	oril #1414686976,%d0                        
   44dec:	2f00           	movel %d0,%sp@-                             
			rtems_termios_ttyHead->back = tty;                                 
		rtems_termios_ttyHead = tty;                                        
		if (rtems_termios_ttyTail == NULL)                                  
			rtems_termios_ttyTail = tty;                                       
                                                                      
		tty->minor = minor;                                                 
   44dee:	2943 0010      	movel %d3,%a4@(16)                          
		tty->major = major;                                                 
   44df2:	2942 000c      	movel %d2,%a4@(12)                          
                                                                      
		/*                                                                  
		 * Set up mutex semaphores                                          
		 */                                                                 
		sc = rtems_semaphore_create (                                       
   44df6:	4e95           	jsr %a5@                                    
			rtems_build_name ('T', 'R', 'i', c),                               
			1,                                                                 
			RTEMS_BINARY_SEMAPHORE | RTEMS_INHERIT_PRIORITY | RTEMS_PRIORITY,  
			RTEMS_NO_PRIORITY,                                                 
			&tty->isem);                                                       
		if (sc != RTEMS_SUCCESSFUL)                                         
   44df8:	4fef 0014      	lea %sp@(20),%sp                            
   44dfc:	4a80           	tstl %d0                                    
   44dfe:	6600 020c      	bnew 4500c <rtems_termios_open+0x32a>       
			rtems_fatal_error_occurred (sc);                                   
		sc = rtems_semaphore_create (                                       
   44e02:	486c 0018      	pea %a4@(24)                                
   44e06:	1039 0005 d820 	moveb 5d820 <c.6272>,%d0                    
   44e0c:	42a7           	clrl %sp@-                                  
   44e0e:	4878 0054      	pea 54 <DBL_MANT_DIG+0x1f>                  
   44e12:	49c0           	extbl %d0                                   
   44e14:	4878 0001      	pea 1 <ADD>                                 
   44e18:	0080 5452 6f00 	oril #1414688512,%d0                        
   44e1e:	2f00           	movel %d0,%sp@-                             
   44e20:	4e95           	jsr %a5@                                    
			rtems_build_name ('T', 'R', 'o', c),                               
			1,                                                                 
			RTEMS_BINARY_SEMAPHORE | RTEMS_INHERIT_PRIORITY | RTEMS_PRIORITY,  
			RTEMS_NO_PRIORITY,                                                 
			&tty->osem);                                                       
		if (sc != RTEMS_SUCCESSFUL)                                         
   44e22:	4fef 0014      	lea %sp@(20),%sp                            
   44e26:	4a80           	tstl %d0                                    
   44e28:	6600 01e2      	bnew 4500c <rtems_termios_open+0x32a>       
			rtems_fatal_error_occurred (sc);                                   
		sc = rtems_semaphore_create (                                       
   44e2c:	486c 008c      	pea %a4@(140)                               
   44e30:	1039 0005 d820 	moveb 5d820 <c.6272>,%d0                    
   44e36:	42a7           	clrl %sp@-                                  
   44e38:	4878 0020      	pea 20 <OPER2+0xc>                          
   44e3c:	49c0           	extbl %d0                                   
   44e3e:	0080 5452 7800 	oril #1414690816,%d0                        
   44e44:	42a7           	clrl %sp@-                                  
   44e46:	2f00           	movel %d0,%sp@-                             
   44e48:	4e95           	jsr %a5@                                    
			rtems_build_name ('T', 'R', 'x', c),                               
			0,                                                                 
			RTEMS_SIMPLE_BINARY_SEMAPHORE | RTEMS_FIFO,                        
			RTEMS_NO_PRIORITY,                                                 
			&tty->rawOutBuf.Semaphore);                                        
		if (sc != RTEMS_SUCCESSFUL)                                         
   44e4a:	4fef 0014      	lea %sp@(20),%sp                            
   44e4e:	4a80           	tstl %d0                                    
   44e50:	6600 01ba      	bnew 4500c <rtems_termios_open+0x32a>       
		tty->rawOutBufState = rob_idle;                                     
                                                                      
		/*                                                                  
		 * Set callbacks                                                    
		 */                                                                 
		tty->device = *callbacks;                                           
   44e54:	226e 0014      	moveal %fp@(20),%a1                         
   44e58:	41ec 0098      	lea %a4@(152),%a0                           
                                                                      
		/*                                                                  
		 * Create I/O tasks                                                 
		 */                                                                 
		if (tty->device.outputUsesInterrupts == TERMIOS_TASK_DRIVEN) {      
   44e5c:	7002           	moveq #2,%d0                                
		tty->rawOutBufState = rob_idle;                                     
                                                                      
		/*                                                                  
		 * Set callbacks                                                    
		 */                                                                 
		tty->device = *callbacks;                                           
   44e5e:	20d9           	movel %a1@+,%a0@+                           
   44e60:	20d9           	movel %a1@+,%a0@+                           
   44e62:	20d9           	movel %a1@+,%a0@+                           
   44e64:	20d9           	movel %a1@+,%a0@+                           
   44e66:	20d9           	movel %a1@+,%a0@+                           
   44e68:	20d9           	movel %a1@+,%a0@+                           
   44e6a:	20d9           	movel %a1@+,%a0@+                           
   44e6c:	2091           	movel %a1@,%a0@                             
			RTEMS_SIMPLE_BINARY_SEMAPHORE | RTEMS_FIFO,                        
			RTEMS_NO_PRIORITY,                                                 
			&tty->rawOutBuf.Semaphore);                                        
		if (sc != RTEMS_SUCCESSFUL)                                         
			rtems_fatal_error_occurred (sc);                                   
		tty->rawOutBufState = rob_idle;                                     
   44e6e:	42ac 0094      	clrl %a4@(148)                              
		tty->device = *callbacks;                                           
                                                                      
		/*                                                                  
		 * Create I/O tasks                                                 
		 */                                                                 
		if (tty->device.outputUsesInterrupts == TERMIOS_TASK_DRIVEN) {      
   44e72:	b0ac 00b4      	cmpl %a4@(180),%d0                          
   44e76:	6700 019c      	beqw 45014 <rtems_termios_open+0x332>       
				   &tty->rxTaskId);                                               
			if (sc != RTEMS_SUCCESSFUL)                                        
				rtems_fatal_error_occurred (sc);                                  
                                                                      
		}                                                                   
		if ((tty->device.pollRead == NULL) ||                               
   44e7a:	4aac 00a0      	tstl %a4@(160)                              
   44e7e:	6700 0164      	beqw 44fe4 <rtems_termios_open+0x302>       
		    (tty->device.outputUsesInterrupts == TERMIOS_TASK_DRIVEN)){     
   44e82:	7202           	moveq #2,%d1                                
   44e84:	b2ac 00b4      	cmpl %a4@(180),%d1                          
   44e88:	6700 015a      	beqw 44fe4 <rtems_termios_open+0x302>       
		tty->termios.c_cc[VDISCARD] = '\017';                               
		tty->termios.c_cc[VWERASE] = '\027';                                
		tty->termios.c_cc[VLNEXT] = '\026';                                 
                                                                      
		/* start with no flow control, clear flow control flags */          
		tty->flow_ctrl = 0;                                                 
   44e8c:	42ac 00b8      	clrl %a4@(184)                              
		/*                                                                  
		 * set low/highwater mark for XON/XOFF support                      
		 */                                                                 
		tty->lowwater  = tty->rawInBuf.Size * 1/2;                          
   44e90:	202c 0064      	movel %a4@(100),%d0                         
		tty->highwater = tty->rawInBuf.Size * 3/4;                          
   44e94:	206c 0064      	moveal %a4@(100),%a0                        
		/* start with no flow control, clear flow control flags */          
		tty->flow_ctrl = 0;                                                 
		/*                                                                  
		 * set low/highwater mark for XON/XOFF support                      
		 */                                                                 
		tty->lowwater  = tty->rawInBuf.Size * 1/2;                          
   44e98:	e288           	lsrl #1,%d0                                 
		tty->highwater = tty->rawInBuf.Size * 3/4;                          
		/*                                                                  
		 * Bump name characer                                               
		 */                                                                 
		if (c++ == 'z')                                                     
   44e9a:	1239 0005 d820 	moveb 5d820 <c.6272>,%d1                    
		tty->flow_ctrl = 0;                                                 
		/*                                                                  
		 * set low/highwater mark for XON/XOFF support                      
		 */                                                                 
		tty->lowwater  = tty->rawInBuf.Size * 1/2;                          
		tty->highwater = tty->rawInBuf.Size * 3/4;                          
   44ea0:	41f0 8a00      	lea %a0@(00000000,%a0:l:2),%a0              
		/*                                                                  
		 * Bump name characer                                               
		 */                                                                 
		if (c++ == 'z')                                                     
   44ea4:	49c1           	extbl %d1                                   
   44ea6:	2a41           	moveal %d1,%a5                              
   44ea8:	528d           	addql #1,%a5                                
   44eaa:	2241           	moveal %d1,%a1                              
		tty->flow_ctrl = 0;                                                 
		/*                                                                  
		 * set low/highwater mark for XON/XOFF support                      
		 */                                                                 
		tty->lowwater  = tty->rawInBuf.Size * 1/2;                          
		tty->highwater = tty->rawInBuf.Size * 3/4;                          
   44eac:	2208           	movel %a0,%d1                               
   44eae:	e489           	lsrl #2,%d1                                 
		/*                                                                  
		 * Set default parameters                                           
		 */                                                                 
		tty->termios.c_iflag = BRKINT | ICRNL | IXON | IMAXBEL;             
		tty->termios.c_oflag = OPOST | ONLCR | XTABS;                       
		tty->termios.c_cflag = B9600 | CS8 | CREAD | CLOCAL;                
   44eb0:	307c 08bd      	moveaw #2237,%a0                            
		tty->lowwater  = tty->rawInBuf.Size * 1/2;                          
		tty->highwater = tty->rawInBuf.Size * 3/4;                          
		/*                                                                  
		 * Bump name characer                                               
		 */                                                                 
		if (c++ == 'z')                                                     
   44eb4:	3a0d           	movew %a5,%d5                               
   44eb6:	13c5 0005 d820 	moveb %d5,5d820 <c.6272>                    
		tty->termios.c_iflag = BRKINT | ICRNL | IXON | IMAXBEL;             
		tty->termios.c_oflag = OPOST | ONLCR | XTABS;                       
		tty->termios.c_cflag = B9600 | CS8 | CREAD | CLOCAL;                
		tty->termios.c_lflag = ISIG | ICANON | IEXTEN | ECHO | ECHOK | ECHOE | ECHOCTL;
                                                                      
		tty->termios.c_cc[VINTR] = '\003';                                  
   44ebc:	7a03           	moveq #3,%d5                                
		tty->flow_ctrl = 0;                                                 
		/*                                                                  
		 * set low/highwater mark for XON/XOFF support                      
		 */                                                                 
		tty->lowwater  = tty->rawInBuf.Size * 1/2;                          
		tty->highwater = tty->rawInBuf.Size * 3/4;                          
   44ebe:	2941 00c0      	movel %d1,%a4@(192)                         
		tty->termios.c_iflag = BRKINT | ICRNL | IXON | IMAXBEL;             
		tty->termios.c_oflag = OPOST | ONLCR | XTABS;                       
		tty->termios.c_cflag = B9600 | CS8 | CREAD | CLOCAL;                
		tty->termios.c_lflag = ISIG | ICANON | IEXTEN | ECHO | ECHOK | ECHOE | ECHOCTL;
                                                                      
		tty->termios.c_cc[VINTR] = '\003';                                  
   44ec2:	1945 0041      	moveb %d5,%a4@(65)                          
		tty->termios.c_cc[VQUIT] = '\034';                                  
   44ec6:	7a1c           	moveq #28,%d5                               
		/* start with no flow control, clear flow control flags */          
		tty->flow_ctrl = 0;                                                 
		/*                                                                  
		 * set low/highwater mark for XON/XOFF support                      
		 */                                                                 
		tty->lowwater  = tty->rawInBuf.Size * 1/2;                          
   44ec8:	2940 00bc      	movel %d0,%a4@(188)                         
		tty->termios.c_oflag = OPOST | ONLCR | XTABS;                       
		tty->termios.c_cflag = B9600 | CS8 | CREAD | CLOCAL;                
		tty->termios.c_lflag = ISIG | ICANON | IEXTEN | ECHO | ECHOK | ECHOE | ECHOCTL;
                                                                      
		tty->termios.c_cc[VINTR] = '\003';                                  
		tty->termios.c_cc[VQUIT] = '\034';                                  
   44ecc:	1945 0042      	moveb %d5,%a4@(66)                          
		tty->termios.c_cc[VERASE] = '\177';                                 
   44ed0:	7a7f           	moveq #127,%d5                              
		/*                                                                  
		 * Set default parameters                                           
		 */                                                                 
		tty->termios.c_iflag = BRKINT | ICRNL | IXON | IMAXBEL;             
		tty->termios.c_oflag = OPOST | ONLCR | XTABS;                       
		tty->termios.c_cflag = B9600 | CS8 | CREAD | CLOCAL;                
   44ed2:	2948 0038      	movel %a0,%a4@(56)                          
		tty->termios.c_lflag = ISIG | ICANON | IEXTEN | ECHO | ECHOK | ECHOE | ECHOCTL;
                                                                      
		tty->termios.c_cc[VINTR] = '\003';                                  
		tty->termios.c_cc[VQUIT] = '\034';                                  
		tty->termios.c_cc[VERASE] = '\177';                                 
   44ed6:	1945 0043      	moveb %d5,%a4@(67)                          
		tty->termios.c_cc[VKILL] = '\025';                                  
   44eda:	7a15           	moveq #21,%d5                               
		tty->termios.c_cc[VEOF] = '\004';                                   
   44edc:	7204           	moveq #4,%d1                                
		tty->termios.c_lflag = ISIG | ICANON | IEXTEN | ECHO | ECHOK | ECHOE | ECHOCTL;
                                                                      
		tty->termios.c_cc[VINTR] = '\003';                                  
		tty->termios.c_cc[VQUIT] = '\034';                                  
		tty->termios.c_cc[VERASE] = '\177';                                 
		tty->termios.c_cc[VKILL] = '\025';                                  
   44ede:	1945 0044      	moveb %d5,%a4@(68)                          
		tty->termios.c_cc[VEOF] = '\004';                                   
		tty->termios.c_cc[VEOL] = '\000';                                   
   44ee2:	4205           	clrb %d5                                    
		tty->termios.c_cc[VEOL2] = '\000';                                  
		tty->termios.c_cc[VSTART] = '\021';                                 
   44ee4:	7011           	moveq #17,%d0                               
                                                                      
		tty->termios.c_cc[VINTR] = '\003';                                  
		tty->termios.c_cc[VQUIT] = '\034';                                  
		tty->termios.c_cc[VERASE] = '\177';                                 
		tty->termios.c_cc[VKILL] = '\025';                                  
		tty->termios.c_cc[VEOF] = '\004';                                   
   44ee6:	1941 0045      	moveb %d1,%a4@(69)                          
		tty->termios.c_cc[VEOL] = '\000';                                   
		tty->termios.c_cc[VEOL2] = '\000';                                  
		tty->termios.c_cc[VSTART] = '\021';                                 
		tty->termios.c_cc[VSTOP] = '\023';                                  
   44eea:	7213           	moveq #19,%d1                               
		tty->termios.c_cc[VINTR] = '\003';                                  
		tty->termios.c_cc[VQUIT] = '\034';                                  
		tty->termios.c_cc[VERASE] = '\177';                                 
		tty->termios.c_cc[VKILL] = '\025';                                  
		tty->termios.c_cc[VEOF] = '\004';                                   
		tty->termios.c_cc[VEOL] = '\000';                                   
   44eec:	1945 004c      	moveb %d5,%a4@(76)                          
		tty->termios.c_cc[VEOL2] = '\000';                                  
   44ef0:	1945 0051      	moveb %d5,%a4@(81)                          
		tty->termios.c_cc[VSTART] = '\021';                                 
   44ef4:	1940 0049      	moveb %d0,%a4@(73)                          
		tty->termios.c_cc[VSTOP] = '\023';                                  
		tty->termios.c_cc[VSUSP] = '\032';                                  
   44ef8:	7a1a           	moveq #26,%d5                               
		tty->termios.c_cc[VREPRINT] = '\022';                               
   44efa:	7012           	moveq #18,%d0                               
		tty->termios.c_cc[VKILL] = '\025';                                  
		tty->termios.c_cc[VEOF] = '\004';                                   
		tty->termios.c_cc[VEOL] = '\000';                                   
		tty->termios.c_cc[VEOL2] = '\000';                                  
		tty->termios.c_cc[VSTART] = '\021';                                 
		tty->termios.c_cc[VSTOP] = '\023';                                  
   44efc:	1941 004a      	moveb %d1,%a4@(74)                          
		tty->termios.c_cc[VSUSP] = '\032';                                  
		tty->termios.c_cc[VREPRINT] = '\022';                               
		tty->termios.c_cc[VDISCARD] = '\017';                               
   44f00:	720f           	moveq #15,%d1                               
		tty->termios.c_cc[VEOF] = '\004';                                   
		tty->termios.c_cc[VEOL] = '\000';                                   
		tty->termios.c_cc[VEOL2] = '\000';                                  
		tty->termios.c_cc[VSTART] = '\021';                                 
		tty->termios.c_cc[VSTOP] = '\023';                                  
		tty->termios.c_cc[VSUSP] = '\032';                                  
   44f02:	1945 004b      	moveb %d5,%a4@(75)                          
		tty->termios.c_cc[VREPRINT] = '\022';                               
   44f06:	1940 004d      	moveb %d0,%a4@(77)                          
		tty->termios.c_cc[VDISCARD] = '\017';                               
		tty->termios.c_cc[VWERASE] = '\027';                                
   44f0a:	7a17           	moveq #23,%d5                               
		tty->termios.c_cc[VLNEXT] = '\026';                                 
   44f0c:	7016           	moveq #22,%d0                               
		tty->termios.c_cc[VEOL2] = '\000';                                  
		tty->termios.c_cc[VSTART] = '\021';                                 
		tty->termios.c_cc[VSTOP] = '\023';                                  
		tty->termios.c_cc[VSUSP] = '\032';                                  
		tty->termios.c_cc[VREPRINT] = '\022';                               
		tty->termios.c_cc[VDISCARD] = '\017';                               
   44f0e:	1941 004e      	moveb %d1,%a4@(78)                          
		}                                                                   
                                                                      
		/*                                                                  
		 * Set default parameters                                           
		 */                                                                 
		tty->termios.c_iflag = BRKINT | ICRNL | IXON | IMAXBEL;             
   44f12:	223c 0000 2502 	movel #9474,%d1                             
		tty->termios.c_cc[VSTART] = '\021';                                 
		tty->termios.c_cc[VSTOP] = '\023';                                  
		tty->termios.c_cc[VSUSP] = '\032';                                  
		tty->termios.c_cc[VREPRINT] = '\022';                               
		tty->termios.c_cc[VDISCARD] = '\017';                               
		tty->termios.c_cc[VWERASE] = '\027';                                
   44f18:	1945 004f      	moveb %d5,%a4@(79)                          
		tty->termios.c_cc[VLNEXT] = '\026';                                 
   44f1c:	1940 0050      	moveb %d0,%a4@(80)                          
		}                                                                   
                                                                      
		/*                                                                  
		 * Set default parameters                                           
		 */                                                                 
		tty->termios.c_iflag = BRKINT | ICRNL | IXON | IMAXBEL;             
   44f20:	2941 0030      	movel %d1,%a4@(48)                          
		tty->termios.c_oflag = OPOST | ONLCR | XTABS;                       
   44f24:	2a3c 0000 1805 	movel #6149,%d5                             
   44f2a:	2945 0034      	movel %d5,%a4@(52)                          
		tty->termios.c_cflag = B9600 | CS8 | CREAD | CLOCAL;                
		tty->termios.c_lflag = ISIG | ICANON | IEXTEN | ECHO | ECHOK | ECHOE | ECHOCTL;
   44f2e:	203c 0000 823b 	movel #33339,%d0                            
		tty->lowwater  = tty->rawInBuf.Size * 1/2;                          
		tty->highwater = tty->rawInBuf.Size * 3/4;                          
		/*                                                                  
		 * Bump name characer                                               
		 */                                                                 
		if (c++ == 'z')                                                     
   44f34:	323c 007a      	movew #122,%d1                              
		 * Set default parameters                                           
		 */                                                                 
		tty->termios.c_iflag = BRKINT | ICRNL | IXON | IMAXBEL;             
		tty->termios.c_oflag = OPOST | ONLCR | XTABS;                       
		tty->termios.c_cflag = B9600 | CS8 | CREAD | CLOCAL;                
		tty->termios.c_lflag = ISIG | ICANON | IEXTEN | ECHO | ECHOK | ECHOE | ECHOCTL;
   44f38:	2940 003c      	movel %d0,%a4@(60)                          
		tty->lowwater  = tty->rawInBuf.Size * 1/2;                          
		tty->highwater = tty->rawInBuf.Size * 3/4;                          
		/*                                                                  
		 * Bump name characer                                               
		 */                                                                 
		if (c++ == 'z')                                                     
   44f3c:	b289           	cmpl %a1,%d1                                
   44f3e:	6608           	bnes 44f48 <rtems_termios_open+0x266>       
			c = 'a';                                                           
   44f40:	7a61           	moveq #97,%d5                               <== NOT EXECUTED
   44f42:	13c5 0005 d820 	moveb %d5,5d820 <c.6272>                    <== NOT EXECUTED
                                                                      
	}                                                                    
	args->iop->data1 = tty;                                              
	if (!tty->refcount++) {                                              
   44f48:	202a 0008      	movel %a2@(8),%d0                           
   44f4c:	2200           	movel %d0,%d1                               
   44f4e:	5281           	addql #1,%d1                                
		 */                                                                 
		if (c++ == 'z')                                                     
			c = 'a';                                                           
                                                                      
	}                                                                    
	args->iop->data1 = tty;                                              
   44f50:	2053           	moveal %a3@,%a0                             
	if (!tty->refcount++) {                                              
   44f52:	2541 0008      	movel %d1,%a2@(8)                           
		 */                                                                 
		if (c++ == 'z')                                                     
			c = 'a';                                                           
                                                                      
	}                                                                    
	args->iop->data1 = tty;                                              
   44f56:	214a 0034      	movel %a2,%a0@(52)                          
	if (!tty->refcount++) {                                              
   44f5a:	4a80           	tstl %d0                                    
   44f5c:	661c           	bnes 44f7a <rtems_termios_open+0x298>       
	  if (tty->device.firstOpen)                                         
   44f5e:	206a 0098      	moveal %a2@(152),%a0                        
   44f62:	4a88           	tstl %a0                                    
   44f64:	670c           	beqs 44f72 <rtems_termios_open+0x290>       
		(*tty->device.firstOpen)(major, minor, arg);                        
   44f66:	2f0b           	movel %a3,%sp@-                             
   44f68:	2f03           	movel %d3,%sp@-                             
   44f6a:	2f02           	movel %d2,%sp@-                             
   44f6c:	4e90           	jsr %a0@                                    
   44f6e:	4fef 000c      	lea %sp@(12),%sp                            
	  /*                                                                 
	   * start I/O tasks, if needed                                      
	   */                                                                
	  if (tty->device.outputUsesInterrupts == TERMIOS_TASK_DRIVEN) {     
   44f72:	7a02           	moveq #2,%d5                                
   44f74:	baaa 00b4      	cmpl %a2@(180),%d5                          
   44f78:	672c           	beqs 44fa6 <rtems_termios_open+0x2c4>       
				  (rtems_task_argument)tty);                                      
	    if (sc != RTEMS_SUCCESSFUL)                                      
	      rtems_fatal_error_occurred (sc);                               
	  }                                                                  
	}                                                                    
	rtems_semaphore_release (rtems_termios_ttyMutex);                    
   44f7a:	2f39 0005 ee5c 	movel 5ee5c <rtems_termios_ttyMutex>,%sp@-  
   44f80:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         
	return RTEMS_SUCCESSFUL;                                             
   44f86:	588f           	addql #4,%sp                                
}                                                                     
   44f88:	2004           	movel %d4,%d0                               
   44f8a:	4cee 3c3c ffdc 	moveml %fp@(-36),%d2-%d5/%a2-%a5            
   44f90:	4e5e           	unlk %fp                                    
   44f92:	4e75           	rts                                         
	sc = rtems_semaphore_obtain (rtems_termios_ttyMutex,                 
				     RTEMS_WAIT, RTEMS_NO_TIMEOUT);                               
	if (sc != RTEMS_SUCCESSFUL)                                          
		return sc;                                                          
	for (tty = rtems_termios_ttyHead ; tty != NULL ; tty = tty->forw) {  
		if ((tty->major == major) && (tty->minor == minor))                 
   44f94:	b6aa 0010      	cmpl %a2@(16),%d3                           
   44f98:	67ae           	beqs 44f48 <rtems_termios_open+0x266>       
	 */                                                                  
	sc = rtems_semaphore_obtain (rtems_termios_ttyMutex,                 
				     RTEMS_WAIT, RTEMS_NO_TIMEOUT);                               
	if (sc != RTEMS_SUCCESSFUL)                                          
		return sc;                                                          
	for (tty = rtems_termios_ttyHead ; tty != NULL ; tty = tty->forw) {  
   44f9a:	2452           	moveal %a2@,%a2                             <== NOT EXECUTED
   44f9c:	4a8a           	tstl %a2                                    <== NOT EXECUTED
   44f9e:	6600 fd7a      	bnew 44d1a <rtems_termios_open+0x38>        <== NOT EXECUTED
   44fa2:	6000 fd84      	braw 44d28 <rtems_termios_open+0x46>        <== NOT EXECUTED
		(*tty->device.firstOpen)(major, minor, arg);                        
	  /*                                                                 
	   * start I/O tasks, if needed                                      
	   */                                                                
	  if (tty->device.outputUsesInterrupts == TERMIOS_TASK_DRIVEN) {     
	    sc = rtems_task_start(tty->rxTaskId,                             
   44fa6:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   44fa8:	487a 0202      	pea %pc@(451ac <rtems_termios_rxdaemon>)    <== NOT EXECUTED
   44fac:	47f9 0004 61d8 	lea 461d8 <rtems_task_start>,%a3            <== NOT EXECUTED
   44fb2:	2f2a 00c4      	movel %a2@(196),%sp@-                       <== NOT EXECUTED
   44fb6:	4e93           	jsr %a3@                                    <== NOT EXECUTED
				  rtems_termios_rxdaemon,                                         
				  (rtems_task_argument)tty);                                      
	    if (sc != RTEMS_SUCCESSFUL)                                      
   44fb8:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   44fbc:	4a80           	tstl %d0                                    <== NOT EXECUTED
   44fbe:	664c           	bnes 4500c <rtems_termios_open+0x32a>       <== NOT EXECUTED
	      rtems_fatal_error_occurred (sc);                               
                                                                      
	    sc = rtems_task_start(tty->txTaskId,                             
   44fc0:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   44fc2:	487a 0166      	pea %pc@(4512a <rtems_termios_txdaemon>)    <== NOT EXECUTED
   44fc6:	2f2a 00c8      	movel %a2@(200),%sp@-                       <== NOT EXECUTED
   44fca:	4e93           	jsr %a3@                                    <== NOT EXECUTED
				  rtems_termios_txdaemon,                                         
				  (rtems_task_argument)tty);                                      
	    if (sc != RTEMS_SUCCESSFUL)                                      
   44fcc:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   44fd0:	4a80           	tstl %d0                                    <== NOT EXECUTED
   44fd2:	6638           	bnes 4500c <rtems_termios_open+0x32a>       <== NOT EXECUTED
	      rtems_fatal_error_occurred (sc);                               
	  }                                                                  
	}                                                                    
	rtems_semaphore_release (rtems_termios_ttyMutex);                    
   44fd4:	2f39 0005 ee5c 	movel 5ee5c <rtems_termios_ttyMutex>,%sp@-  <== NOT EXECUTED
   44fda:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
	return RTEMS_SUCCESSFUL;                                             
   44fe0:	588f           	addql #4,%sp                                <== NOT EXECUTED
   44fe2:	60a4           	bras 44f88 <rtems_termios_open+0x2a6>       <== NOT EXECUTED
				rtems_fatal_error_occurred (sc);                                  
                                                                      
		}                                                                   
		if ((tty->device.pollRead == NULL) ||                               
		    (tty->device.outputUsesInterrupts == TERMIOS_TASK_DRIVEN)){     
			sc = rtems_semaphore_create (                                      
   44fe4:	486c 0068      	pea %a4@(104)                               
   44fe8:	1039 0005 d820 	moveb 5d820 <c.6272>,%d0                    
   44fee:	42a7           	clrl %sp@-                                  
   44ff0:	4878 0024      	pea 24 <OPER2+0x10>                         
   44ff4:	49c0           	extbl %d0                                   
   44ff6:	0080 5452 7200 	oril #1414689280,%d0                        
   44ffc:	42a7           	clrl %sp@-                                  
   44ffe:	2f00           	movel %d0,%sp@-                             
   45000:	4e95           	jsr %a5@                                    
				rtems_build_name ('T', 'R', 'r', c),                              
				0,                                                                
				RTEMS_SIMPLE_BINARY_SEMAPHORE | RTEMS_PRIORITY,                   
				RTEMS_NO_PRIORITY,                                                
				&tty->rawInBuf.Semaphore);                                        
			if (sc != RTEMS_SUCCESSFUL)                                        
   45002:	4fef 0014      	lea %sp@(20),%sp                            
   45006:	4a80           	tstl %d0                                    
   45008:	6700 fe82      	beqw 44e8c <rtems_termios_open+0x1aa>       
                                                                      
	    sc = rtems_task_start(tty->txTaskId,                             
				  rtems_termios_txdaemon,                                         
				  (rtems_task_argument)tty);                                      
	    if (sc != RTEMS_SUCCESSFUL)                                      
	      rtems_fatal_error_occurred (sc);                               
   4500c:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4500e:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
                                                                      
		/*                                                                  
		 * Create I/O tasks                                                 
		 */                                                                 
		if (tty->device.outputUsesInterrupts == TERMIOS_TASK_DRIVEN) {      
			sc = rtems_task_create (                                           
   45014:	486c 00c8      	pea %a4@(200)                               <== NOT EXECUTED
   45018:	41f9 0004 5f24 	lea 45f24 <rtems_task_create>,%a0           <== NOT EXECUTED
   4501e:	1039 0005 d820 	moveb 5d820 <c.6272>,%d0                    <== NOT EXECUTED
   45024:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   45026:	4878 0500      	pea 500 <DBL_MAX_EXP+0xff>                  <== NOT EXECUTED
   4502a:	49c0           	extbl %d0                                   <== NOT EXECUTED
   4502c:	4878 0400      	pea 400 <D_BIAS+0x2>                        <== NOT EXECUTED
   45030:	4878 000a      	pea a <LASTO>                               <== NOT EXECUTED
   45034:	0080 5478 5400 	oril #1417171968,%d0                        <== NOT EXECUTED
   4503a:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4503c:	2d48 fffc      	movel %a0,%fp@(-4)                          <== NOT EXECUTED
   45040:	4e90           	jsr %a0@                                    <== NOT EXECUTED
				   TERMIOS_TXTASK_STACKSIZE,                                      
				   RTEMS_NO_PREEMPT | RTEMS_NO_TIMESLICE |                        
				   RTEMS_NO_ASR,                                                  
				   RTEMS_NO_FLOATING_POINT | RTEMS_LOCAL,                         
				   &tty->txTaskId);                                               
			if (sc != RTEMS_SUCCESSFUL)                                        
   45042:	206e fffc      	moveal %fp@(-4),%a0                         <== NOT EXECUTED
   45046:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
   4504a:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4504c:	66be           	bnes 4500c <rtems_termios_open+0x32a>       <== NOT EXECUTED
				rtems_fatal_error_occurred (sc);                                  
			sc = rtems_task_create (                                           
   4504e:	486c 00c4      	pea %a4@(196)                               <== NOT EXECUTED
   45052:	1039 0005 d820 	moveb 5d820 <c.6272>,%d0                    <== NOT EXECUTED
   45058:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4505a:	4878 0500      	pea 500 <DBL_MAX_EXP+0xff>                  <== NOT EXECUTED
   4505e:	49c0           	extbl %d0                                   <== NOT EXECUTED
   45060:	4878 0400      	pea 400 <D_BIAS+0x2>                        <== NOT EXECUTED
   45064:	4878 0009      	pea 9 <DIVIDE_BY_ZERO+0x1>                  <== NOT EXECUTED
   45068:	0080 5278 5400 	oril #1383617536,%d0                        <== NOT EXECUTED
   4506e:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   45070:	4e90           	jsr %a0@                                    <== NOT EXECUTED
				   TERMIOS_RXTASK_STACKSIZE,                                      
				   RTEMS_NO_PREEMPT | RTEMS_NO_TIMESLICE |                        
				   RTEMS_NO_ASR,                                                  
				   RTEMS_NO_FLOATING_POINT | RTEMS_LOCAL,                         
				   &tty->rxTaskId);                                               
			if (sc != RTEMS_SUCCESSFUL)                                        
   45072:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
   45076:	4a80           	tstl %d0                                    <== NOT EXECUTED
   45078:	6700 fe00      	beqw 44e7a <rtems_termios_open+0x198>       <== NOT EXECUTED
   4507c:	608e           	bras 4500c <rtems_termios_open+0x32a>       <== NOT EXECUTED
		tty->back = NULL;                                                   
		if (rtems_termios_ttyHead != NULL)                                  
			rtems_termios_ttyHead->back = tty;                                 
		rtems_termios_ttyHead = tty;                                        
		if (rtems_termios_ttyTail == NULL)                                  
			rtems_termios_ttyTail = tty;                                       
   4507e:	23cc 0005 ee60 	movel %a4,5ee60 <rtems_termios_ttyTail>     
   45084:	6000 fd44      	braw 44dca <rtems_termios_open+0xe8>        
		/*                                                                  
		 * Create a new device                                              
		 */                                                                 
		tty = calloc (1, sizeof (struct rtems_termios_tty));                
		if (tty == NULL) {                                                  
			rtems_semaphore_release (rtems_termios_ttyMutex);                  
   45088:	2f39 0005 ee5c 	movel 5ee5c <rtems_termios_ttyMutex>,%sp@-  <== NOT EXECUTED
   4508e:	781a           	moveq #26,%d4                               <== NOT EXECUTED
   45090:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
			return RTEMS_NO_MEMORY;                                            
   45096:	588f           	addql #4,%sp                                <== NOT EXECUTED
	      rtems_fatal_error_occurred (sc);                               
	  }                                                                  
	}                                                                    
	rtems_semaphore_release (rtems_termios_ttyMutex);                    
	return RTEMS_SUCCESSFUL;                                             
}                                                                     
   45098:	2004           	movel %d4,%d0                               <== NOT EXECUTED
   4509a:	4cee 3c3c ffdc 	moveml %fp@(-36),%d2-%d5/%a2-%a5            <== NOT EXECUTED
   450a0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   450a2:	4e75           	rts                                         <== NOT EXECUTED
		 * allocate raw input buffer                                        
		 */                                                                 
		tty->rawInBuf.Size = RAW_INPUT_BUFFER_SIZE;                         
		tty->rawInBuf.theBuf = malloc (tty->rawInBuf.Size);                 
		if (tty->rawInBuf.theBuf == NULL) {                                 
		        free(tty);                                                  
   450a4:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
			rtems_semaphore_release (rtems_termios_ttyMutex);                  
   450a6:	781a           	moveq #26,%d4                               <== NOT EXECUTED
		 * allocate raw input buffer                                        
		 */                                                                 
		tty->rawInBuf.Size = RAW_INPUT_BUFFER_SIZE;                         
		tty->rawInBuf.theBuf = malloc (tty->rawInBuf.Size);                 
		if (tty->rawInBuf.theBuf == NULL) {                                 
		        free(tty);                                                  
   450a8:	4eb9 0004 a6f4 	jsr 4a6f4 <free>                            <== NOT EXECUTED
			rtems_semaphore_release (rtems_termios_ttyMutex);                  
   450ae:	2f39 0005 ee5c 	movel 5ee5c <rtems_termios_ttyMutex>,%sp@-  <== NOT EXECUTED
   450b4:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
			return RTEMS_NO_MEMORY;                                            
   450ba:	508f           	addql #8,%sp                                <== NOT EXECUTED
	      rtems_fatal_error_occurred (sc);                               
	  }                                                                  
	}                                                                    
	rtems_semaphore_release (rtems_termios_ttyMutex);                    
	return RTEMS_SUCCESSFUL;                                             
}                                                                     
   450bc:	2004           	movel %d4,%d0                               <== NOT EXECUTED
   450be:	4cee 3c3c ffdc 	moveml %fp@(-36),%d2-%d5/%a2-%a5            <== NOT EXECUTED
   450c4:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   450c6:	4e75           	rts                                         <== NOT EXECUTED
		 * allocate raw output buffer                                       
		 */                                                                 
		tty->rawOutBuf.Size = RAW_OUTPUT_BUFFER_SIZE;                       
		tty->rawOutBuf.theBuf = malloc (tty->rawOutBuf.Size);               
		if (tty->rawOutBuf.theBuf == NULL) {                                
		        free((void *)(tty->rawInBuf.theBuf));                       
   450c8:	2f2c 0058      	movel %a4@(88),%sp@-                        <== NOT EXECUTED
   450cc:	45f9 0004 a6f4 	lea 4a6f4 <free>,%a2                        <== NOT EXECUTED
		        free(tty);                                                  
			rtems_semaphore_release (rtems_termios_ttyMutex);                  
   450d2:	781a           	moveq #26,%d4                               <== NOT EXECUTED
		 * allocate raw output buffer                                       
		 */                                                                 
		tty->rawOutBuf.Size = RAW_OUTPUT_BUFFER_SIZE;                       
		tty->rawOutBuf.theBuf = malloc (tty->rawOutBuf.Size);               
		if (tty->rawOutBuf.theBuf == NULL) {                                
		        free((void *)(tty->rawInBuf.theBuf));                       
   450d4:	4e92           	jsr %a2@                                    <== NOT EXECUTED
		        free(tty);                                                  
   450d6:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   450d8:	4e92           	jsr %a2@                                    <== NOT EXECUTED
			rtems_semaphore_release (rtems_termios_ttyMutex);                  
   450da:	2f39 0005 ee5c 	movel 5ee5c <rtems_termios_ttyMutex>,%sp@-  <== NOT EXECUTED
   450e0:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
			return RTEMS_NO_MEMORY;                                            
   450e6:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
	      rtems_fatal_error_occurred (sc);                               
	  }                                                                  
	}                                                                    
	rtems_semaphore_release (rtems_termios_ttyMutex);                    
	return RTEMS_SUCCESSFUL;                                             
}                                                                     
   450ea:	2004           	movel %d4,%d0                               <== NOT EXECUTED
   450ec:	4cee 3c3c ffdc 	moveml %fp@(-36),%d2-%d5/%a2-%a5            <== NOT EXECUTED
   450f2:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   450f4:	4e75           	rts                                         <== NOT EXECUTED
		/*                                                                  
		 * allocate cooked buffer                                           
		 */                                                                 
		tty->cbuf  = malloc (CBUFSIZE);                                     
		if (tty->cbuf == NULL) {                                            
		        free((void *)(tty->rawOutBuf.theBuf));                      
   450f6:	2f2c 007c      	movel %a4@(124),%sp@-                       <== NOT EXECUTED
   450fa:	45f9 0004 a6f4 	lea 4a6f4 <free>,%a2                        <== NOT EXECUTED
		        free((void *)(tty->rawInBuf.theBuf));                       
		        free(tty);                                                  
			rtems_semaphore_release (rtems_termios_ttyMutex);                  
   45100:	781a           	moveq #26,%d4                               <== NOT EXECUTED
		/*                                                                  
		 * allocate cooked buffer                                           
		 */                                                                 
		tty->cbuf  = malloc (CBUFSIZE);                                     
		if (tty->cbuf == NULL) {                                            
		        free((void *)(tty->rawOutBuf.theBuf));                      
   45102:	4e92           	jsr %a2@                                    <== NOT EXECUTED
		        free((void *)(tty->rawInBuf.theBuf));                       
   45104:	2f2c 0058      	movel %a4@(88),%sp@-                        <== NOT EXECUTED
   45108:	4e92           	jsr %a2@                                    <== NOT EXECUTED
		        free(tty);                                                  
   4510a:	2f0c           	movel %a4,%sp@-                             <== NOT EXECUTED
   4510c:	4e92           	jsr %a2@                                    <== NOT EXECUTED
			rtems_semaphore_release (rtems_termios_ttyMutex);                  
   4510e:	2f39 0005 ee5c 	movel 5ee5c <rtems_termios_ttyMutex>,%sp@-  <== NOT EXECUTED
   45114:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
			return RTEMS_NO_MEMORY;                                            
   4511a:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
	      rtems_fatal_error_occurred (sc);                               
	  }                                                                  
	}                                                                    
	rtems_semaphore_release (rtems_termios_ttyMutex);                    
	return RTEMS_SUCCESSFUL;                                             
}                                                                     
   4511e:	2004           	movel %d4,%d0                               <== NOT EXECUTED
   45120:	4cee 3c3c ffdc 	moveml %fp@(-36),%d2-%d5/%a2-%a5            <== NOT EXECUTED
   45126:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00043ac4 <rtems_termios_puts>:                                        
 * Send characters to device-specific code                            
 */                                                                   
void                                                                  
rtems_termios_puts (                                                  
  const void *_buf, int len, struct rtems_termios_tty *tty)           
{                                                                     
   43ac4:	4e56 ffdc      	linkw %fp,#-36                              
   43ac8:	202e 0008      	movel %fp@(8),%d0                           
   43acc:	48d7 1cfc      	moveml %d2-%d7/%a2-%a4,%sp@                 
   43ad0:	242e 000c      	movel %fp@(12),%d2                          
	const unsigned char *buf = _buf;                                     
   43ad4:	2840           	moveal %d0,%a4                              
 * Send characters to device-specific code                            
 */                                                                   
void                                                                  
rtems_termios_puts (                                                  
  const void *_buf, int len, struct rtems_termios_tty *tty)           
{                                                                     
   43ad6:	246e 0010      	moveal %fp@(16),%a2                         
	const unsigned char *buf = _buf;                                     
	unsigned int newHead;                                                
	rtems_interrupt_level level;                                         
	rtems_status_code sc;                                                
                                                                      
	if (tty->device.outputUsesInterrupts == TERMIOS_POLLED) {            
   43ada:	4aaa 00b4      	tstl %a2@(180)                              
   43ade:	6700 00e8      	beqw 43bc8 <rtems_termios_puts+0x104>       
		(*tty->device.write)(tty->minor, (void *)buf, len);                 
		return;                                                             
	}                                                                    
	newHead = tty->rawOutBuf.Head;                                       
   43ae2:	2c2a 0080      	movel %a2@(128),%d6                         
	while (len) {                                                        
   43ae6:	4a82           	tstl %d2                                    
   43ae8:	6700 00d4      	beqw 43bbe <rtems_termios_puts+0xfa>        
		 *	len -= ncopy                                                     
		 *                                                                  
		 * To minimize latency, the memcpy should be done                   
		 * with interrupts enabled.                                         
		 */                                                                 
		newHead = (newHead + 1) % tty->rawOutBuf.Size;                      
   43aec:	222a 0088      	movel %a2@(136),%d1                         
   43af0:	5286           	addql #1,%d6                                
		rtems_interrupt_disable (level);                                    
   43af2:	2a3c 0000 0700 	movel #1792,%d5                             
   43af8:	47f9 0004 5d2c 	lea 45d2c <rtems_semaphore_obtain>,%a3      
   43afe:	2005           	movel %d5,%d0                               
		 *	len -= ncopy                                                     
		 *                                                                  
		 * To minimize latency, the memcpy should be done                   
		 * with interrupts enabled.                                         
		 */                                                                 
		newHead = (newHead + 1) % tty->rawOutBuf.Size;                      
   43b00:	4c41 6007      	remul %d1,%d7,%d6                           
   43b04:	2c07           	movel %d7,%d6                               
		rtems_interrupt_disable (level);                                    
   43b06:	40c3           	movew %sr,%d3                               
   43b08:	8083           	orl %d3,%d0                                 
   43b0a:	46c0           	movew %d0,%sr                               
		while (newHead == tty->rawOutBuf.Tail) {                            
   43b0c:	282a 0084      	movel %a2@(132),%d4                         
   43b10:	be84           	cmpl %d4,%d7                                
   43b12:	662c           	bnes 43b40 <rtems_termios_puts+0x7c>        
			tty->rawOutBufState = rob_wait;                                    
   43b14:	7002           	moveq #2,%d0                                
   43b16:	2540 0094      	movel %d0,%a2@(148)                         
			rtems_interrupt_enable (level);                                    
   43b1a:	46c3           	movew %d3,%sr                               
			sc = rtems_semaphore_obtain (tty->rawOutBuf.Semaphore,             
   43b1c:	42a7           	clrl %sp@-                                  
   43b1e:	42a7           	clrl %sp@-                                  
   43b20:	2f2a 008c      	movel %a2@(140),%sp@-                       
   43b24:	4e93           	jsr %a3@                                    
							RTEMS_WAIT,                                                    
							RTEMS_NO_TIMEOUT);                                             
			if (sc != RTEMS_SUCCESSFUL)                                        
   43b26:	4fef 000c      	lea %sp@(12),%sp                            
   43b2a:	4a80           	tstl %d0                                    
   43b2c:	6600 00b6      	bnew 43be4 <rtems_termios_puts+0x120>       
				rtems_fatal_error_occurred (sc);                                  
			rtems_interrupt_disable (level);                                   
   43b30:	2005           	movel %d5,%d0                               
   43b32:	40c3           	movew %sr,%d3                               
   43b34:	8083           	orl %d3,%d0                                 
   43b36:	46c0           	movew %d0,%sr                               
		 * To minimize latency, the memcpy should be done                   
		 * with interrupts enabled.                                         
		 */                                                                 
		newHead = (newHead + 1) % tty->rawOutBuf.Size;                      
		rtems_interrupt_disable (level);                                    
		while (newHead == tty->rawOutBuf.Tail) {                            
   43b38:	202a 0084      	movel %a2@(132),%d0                         
   43b3c:	b880           	cmpl %d0,%d4                                
   43b3e:	67d4           	beqs 43b14 <rtems_termios_puts+0x50>        
							RTEMS_NO_TIMEOUT);                                             
			if (sc != RTEMS_SUCCESSFUL)                                        
				rtems_fatal_error_occurred (sc);                                  
			rtems_interrupt_disable (level);                                   
		}                                                                   
		tty->rawOutBuf.theBuf[tty->rawOutBuf.Head] = *buf++;                
   43b40:	202a 0080      	movel %a2@(128),%d0                         
   43b44:	206a 007c      	moveal %a2@(124),%a0                        
   43b48:	1194 0800      	moveb %a4@,%a0@(00000000,%d0:l)             
		tty->rawOutBuf.Head = newHead;                                      
   43b4c:	2547 0080      	movel %d7,%a2@(128)                         
		if (tty->rawOutBufState == rob_idle) {                              
   43b50:	4aaa 0094      	tstl %a2@(148)                              
   43b54:	661c           	bnes 43b72 <rtems_termios_puts+0xae>        
		  /* check, whether XOFF has been received */                       
		  if (!(tty->flow_ctrl & FL_ORCVXOF)) {                             
   43b56:	202a 00b8      	movel %a2@(184),%d0                         
   43b5a:	0800 0004      	btst #4,%d0                                 
   43b5e:	673a           	beqs 43b9a <rtems_termios_puts+0xd6>        
		    (*tty->device.write)(tty->minor,                                
			(char *)&tty->rawOutBuf.theBuf[tty->rawOutBuf.Tail],1);            
		  }                                                                 
		  else {                                                            
		    /* remember that output has been stopped due to flow ctrl*/     
		    tty->flow_ctrl |= FL_OSTOP;                                     
   43b60:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   43b64:	7220           	moveq #32,%d1                               <== NOT EXECUTED
   43b66:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   43b68:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
		  }                                                                 
		  tty->rawOutBufState = rob_busy;                                   
   43b6c:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   43b6e:	2540 0094      	movel %d0,%a2@(148)                         <== NOT EXECUTED
		}                                                                   
		rtems_interrupt_enable (level);                                     
   43b72:	46c3           	movew %d3,%sr                               
		len--;                                                              
   43b74:	5382           	subql #1,%d2                                
	if (tty->device.outputUsesInterrupts == TERMIOS_POLLED) {            
		(*tty->device.write)(tty->minor, (void *)buf, len);                 
		return;                                                             
	}                                                                    
	newHead = tty->rawOutBuf.Head;                                       
	while (len) {                                                        
   43b76:	6746           	beqs 43bbe <rtems_termios_puts+0xfa>        
		 *	len -= ncopy                                                     
		 *                                                                  
		 * To minimize latency, the memcpy should be done                   
		 * with interrupts enabled.                                         
		 */                                                                 
		newHead = (newHead + 1) % tty->rawOutBuf.Size;                      
   43b78:	222a 0088      	movel %a2@(136),%d1                         
   43b7c:	5286           	addql #1,%d6                                
							RTEMS_NO_TIMEOUT);                                             
			if (sc != RTEMS_SUCCESSFUL)                                        
				rtems_fatal_error_occurred (sc);                                  
			rtems_interrupt_disable (level);                                   
		}                                                                   
		tty->rawOutBuf.theBuf[tty->rawOutBuf.Head] = *buf++;                
   43b7e:	528c           	addql #1,%a4                                
		 *                                                                  
		 * To minimize latency, the memcpy should be done                   
		 * with interrupts enabled.                                         
		 */                                                                 
		newHead = (newHead + 1) % tty->rawOutBuf.Size;                      
		rtems_interrupt_disable (level);                                    
   43b80:	2005           	movel %d5,%d0                               
		 *	len -= ncopy                                                     
		 *                                                                  
		 * To minimize latency, the memcpy should be done                   
		 * with interrupts enabled.                                         
		 */                                                                 
		newHead = (newHead + 1) % tty->rawOutBuf.Size;                      
   43b82:	4c41 6007      	remul %d1,%d7,%d6                           
   43b86:	2c07           	movel %d7,%d6                               
		rtems_interrupt_disable (level);                                    
   43b88:	40c3           	movew %sr,%d3                               
   43b8a:	8083           	orl %d3,%d0                                 
   43b8c:	46c0           	movew %d0,%sr                               
		while (newHead == tty->rawOutBuf.Tail) {                            
   43b8e:	282a 0084      	movel %a2@(132),%d4                         
   43b92:	be84           	cmpl %d4,%d7                                
   43b94:	6700 ff7e      	beqw 43b14 <rtems_termios_puts+0x50>        
   43b98:	60a6           	bras 43b40 <rtems_termios_puts+0x7c>        
		tty->rawOutBuf.theBuf[tty->rawOutBuf.Head] = *buf++;                
		tty->rawOutBuf.Head = newHead;                                      
		if (tty->rawOutBufState == rob_idle) {                              
		  /* check, whether XOFF has been received */                       
		  if (!(tty->flow_ctrl & FL_ORCVXOF)) {                             
		    (*tty->device.write)(tty->minor,                                
   43b9a:	4878 0001      	pea 1 <ADD>                                 
			(char *)&tty->rawOutBuf.theBuf[tty->rawOutBuf.Tail],1);            
   43b9e:	202a 0084      	movel %a2@(132),%d0                         
		tty->rawOutBuf.theBuf[tty->rawOutBuf.Head] = *buf++;                
		tty->rawOutBuf.Head = newHead;                                      
		if (tty->rawOutBufState == rob_idle) {                              
		  /* check, whether XOFF has been received */                       
		  if (!(tty->flow_ctrl & FL_ORCVXOF)) {                             
		    (*tty->device.write)(tty->minor,                                
   43ba2:	d0aa 007c      	addl %a2@(124),%d0                          
   43ba6:	2f00           	movel %d0,%sp@-                             
   43ba8:	2f2a 0010      	movel %a2@(16),%sp@-                        
   43bac:	206a 00a4      	moveal %a2@(164),%a0                        
   43bb0:	4e90           	jsr %a0@                                    
   43bb2:	4fef 000c      	lea %sp@(12),%sp                            
		  }                                                                 
		  else {                                                            
		    /* remember that output has been stopped due to flow ctrl*/     
		    tty->flow_ctrl |= FL_OSTOP;                                     
		  }                                                                 
		  tty->rawOutBufState = rob_busy;                                   
   43bb6:	7001           	moveq #1,%d0                                
   43bb8:	2540 0094      	movel %d0,%a2@(148)                         
   43bbc:	60b4           	bras 43b72 <rtems_termios_puts+0xae>        
		}                                                                   
		rtems_interrupt_enable (level);                                     
		len--;                                                              
	}                                                                    
}                                                                     
   43bbe:	4cee 1cfc ffdc 	moveml %fp@(-36),%d2-%d7/%a2-%a4            
   43bc4:	4e5e           	unlk %fp                                    
   43bc6:	4e75           	rts                                         
	unsigned int newHead;                                                
	rtems_interrupt_level level;                                         
	rtems_status_code sc;                                                
                                                                      
	if (tty->device.outputUsesInterrupts == TERMIOS_POLLED) {            
		(*tty->device.write)(tty->minor, (void *)buf, len);                 
   43bc8:	226a 00a4      	moveal %a2@(164),%a1                        <== NOT EXECUTED
   43bcc:	2d6a 0010 0008 	movel %a2@(16),%fp@(8)                      <== NOT EXECUTED
   43bd2:	2d42 0010      	movel %d2,%fp@(16)                          <== NOT EXECUTED
		  tty->rawOutBufState = rob_busy;                                   
		}                                                                   
		rtems_interrupt_enable (level);                                     
		len--;                                                              
	}                                                                    
}                                                                     
   43bd6:	4cee 1cfc ffdc 	moveml %fp@(-36),%d2-%d7/%a2-%a4            <== NOT EXECUTED
	unsigned int newHead;                                                
	rtems_interrupt_level level;                                         
	rtems_status_code sc;                                                
                                                                      
	if (tty->device.outputUsesInterrupts == TERMIOS_POLLED) {            
		(*tty->device.write)(tty->minor, (void *)buf, len);                 
   43bdc:	2d40 000c      	movel %d0,%fp@(12)                          <== NOT EXECUTED
		  tty->rawOutBufState = rob_busy;                                   
		}                                                                   
		rtems_interrupt_enable (level);                                     
		len--;                                                              
	}                                                                    
}                                                                     
   43be0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	unsigned int newHead;                                                
	rtems_interrupt_level level;                                         
	rtems_status_code sc;                                                
                                                                      
	if (tty->device.outputUsesInterrupts == TERMIOS_POLLED) {            
		(*tty->device.write)(tty->minor, (void *)buf, len);                 
   43be2:	4ed1           	jmp %a1@                                    <== NOT EXECUTED
			rtems_interrupt_enable (level);                                    
			sc = rtems_semaphore_obtain (tty->rawOutBuf.Semaphore,             
							RTEMS_WAIT,                                                    
							RTEMS_NO_TIMEOUT);                                             
			if (sc != RTEMS_SUCCESSFUL)                                        
				rtems_fatal_error_occurred (sc);                                  
   43be4:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   43be6:	4eb9 0004 6458 	jsr 46458 <rtems_fatal_error_occurred>      <== NOT EXECUTED
                                                                      
0004441e <rtems_termios_read>:                                        
	return RTEMS_SUCCESSFUL;                                             
}                                                                     
                                                                      
rtems_status_code                                                     
rtems_termios_read (void *arg)                                        
{                                                                     
   4441e:	4e56 ffd4      	linkw %fp,#-44                              <== NOT EXECUTED
   44422:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 <== NOT EXECUTED
   44426:	2a6e 0008      	moveal %fp@(8),%a5                          <== NOT EXECUTED
	struct rtems_termios_tty *tty = args->iop->data1;                    
	uint32_t   count = args->count;                                      
	char      *buffer = args->buffer;                                    
	rtems_status_code sc;                                                
                                                                      
	sc = rtems_semaphore_obtain (tty->isem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
   4442a:	2c3c 0004 5d2c 	movel #285996,%d6                           <== NOT EXECUTED
                                                                      
rtems_status_code                                                     
rtems_termios_read (void *arg)                                        
{                                                                     
	rtems_libio_rw_args_t *args = arg;                                   
	struct rtems_termios_tty *tty = args->iop->data1;                    
   44430:	2055           	moveal %a5@,%a0                             <== NOT EXECUTED
   44432:	2468 0034      	moveal %a0@(52),%a2                         <== NOT EXECUTED
	uint32_t   count = args->count;                                      
	char      *buffer = args->buffer;                                    
	rtems_status_code sc;                                                
                                                                      
	sc = rtems_semaphore_obtain (tty->isem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
   44436:	2046           	moveal %d6,%a0                              <== NOT EXECUTED
   44438:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
rtems_status_code                                                     
rtems_termios_read (void *arg)                                        
{                                                                     
	rtems_libio_rw_args_t *args = arg;                                   
	struct rtems_termios_tty *tty = args->iop->data1;                    
	uint32_t   count = args->count;                                      
   4443a:	262d 0010      	movel %a5@(16),%d3                          <== NOT EXECUTED
	char      *buffer = args->buffer;                                    
	rtems_status_code sc;                                                
                                                                      
	sc = rtems_semaphore_obtain (tty->isem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
   4443e:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   44440:	2f2a 0014      	movel %a2@(20),%sp@-                        <== NOT EXECUTED
rtems_termios_read (void *arg)                                        
{                                                                     
	rtems_libio_rw_args_t *args = arg;                                   
	struct rtems_termios_tty *tty = args->iop->data1;                    
	uint32_t   count = args->count;                                      
	char      *buffer = args->buffer;                                    
   44444:	286d 000c      	moveal %a5@(12),%a4                         <== NOT EXECUTED
	rtems_status_code sc;                                                
                                                                      
	sc = rtems_semaphore_obtain (tty->isem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
   44448:	4e90           	jsr %a0@                                    <== NOT EXECUTED
	if (sc != RTEMS_SUCCESSFUL)                                          
   4444a:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
	struct rtems_termios_tty *tty = args->iop->data1;                    
	uint32_t   count = args->count;                                      
	char      *buffer = args->buffer;                                    
	rtems_status_code sc;                                                
                                                                      
	sc = rtems_semaphore_obtain (tty->isem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
   4444e:	2a00           	movel %d0,%d5                               <== NOT EXECUTED
	if (sc != RTEMS_SUCCESSFUL)                                          
   44450:	662e           	bnes 44480 <rtems_termios_read+0x62>        <== NOT EXECUTED
		return sc;                                                          
	if (rtems_termios_linesw[tty->t_line].l_read != NULL) {              
   44452:	202a 00cc      	movel %a2@(204),%d0                         <== NOT EXECUTED
   44456:	41f9 0005 e614 	lea 5e614 <rtems_termios_linesw>,%a0        <== NOT EXECUTED
   4445c:	eb88           	lsll #5,%d0                                 <== NOT EXECUTED
   4445e:	2070 0808      	moveal %a0@(00000008,%d0:l),%a0             <== NOT EXECUTED
   44462:	4a88           	tstl %a0                                    <== NOT EXECUTED
   44464:	6726           	beqs 4448c <rtems_termios_read+0x6e>        <== NOT EXECUTED
		sc = rtems_termios_linesw[tty->t_line].l_read(tty,args);            
   44466:	2f0d           	movel %a5,%sp@-                             <== NOT EXECUTED
   44468:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4446a:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4446c:	2a00           	movel %d0,%d5                               <== NOT EXECUTED
		tty->tty_rcvwakeup = 0;                                             
   4446e:	42aa 00e4      	clrl %a2@(228)                              <== NOT EXECUTED
		rtems_semaphore_release (tty->isem);                                
   44472:	2f2a 0014      	movel %a2@(20),%sp@-                        <== NOT EXECUTED
   44476:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
		return sc;                                                          
   4447c:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
	}                                                                    
	args->bytes_moved = args->count - count;                             
	tty->tty_rcvwakeup = 0;                                              
	rtems_semaphore_release (tty->isem);                                 
	return sc;                                                           
}                                                                     
   44480:	2005           	movel %d5,%d0                               <== NOT EXECUTED
   44482:	4cee 3cfc ffd4 	moveml %fp@(-44),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   44488:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4448a:	4e75           	rts                                         <== NOT EXECUTED
		sc = rtems_termios_linesw[tty->t_line].l_read(tty,args);            
		tty->tty_rcvwakeup = 0;                                             
		rtems_semaphore_release (tty->isem);                                
		return sc;                                                          
	}                                                                    
	if (tty->cindex == tty->ccount) {                                    
   4448c:	202a 0020      	movel %a2@(32),%d0                          <== NOT EXECUTED
   44490:	b0aa 0024      	cmpl %a2@(36),%d0                           <== NOT EXECUTED
   44494:	674e           	beqs 444e4 <rtems_termios_read+0xc6>        <== NOT EXECUTED
		else                                                                
			sc = fillBufferQueue (tty);                                        
		if (sc != RTEMS_SUCCESSFUL)                                         
			tty->cindex = tty->ccount = 0;                                     
	}                                                                    
	while (count && (tty->cindex < tty->ccount)) {                       
   44496:	4a83           	tstl %d3                                    <== NOT EXECUTED
   44498:	6724           	beqs 444be <rtems_termios_read+0xa0>        <== NOT EXECUTED
   4449a:	202a 0024      	movel %a2@(36),%d0                          <== NOT EXECUTED
   4449e:	b0aa 0020      	cmpl %a2@(32),%d0                           <== NOT EXECUTED
   444a2:	6c1a           	bges 444be <rtems_termios_read+0xa0>        <== NOT EXECUTED
		*buffer++ = tty->cbuf[tty->cindex++];                               
   444a4:	206a 001c      	moveal %a2@(28),%a0                         <== NOT EXECUTED
		count--;                                                            
   444a8:	5383           	subql #1,%d3                                <== NOT EXECUTED
			sc = fillBufferQueue (tty);                                        
		if (sc != RTEMS_SUCCESSFUL)                                         
			tty->cindex = tty->ccount = 0;                                     
	}                                                                    
	while (count && (tty->cindex < tty->ccount)) {                       
		*buffer++ = tty->cbuf[tty->cindex++];                               
   444aa:	18f0 0800      	moveb %a0@(00000000,%d0:l),%a4@+            <== NOT EXECUTED
   444ae:	5280           	addql #1,%d0                                <== NOT EXECUTED
   444b0:	2540 0024      	movel %d0,%a2@(36)                          <== NOT EXECUTED
		else                                                                
			sc = fillBufferQueue (tty);                                        
		if (sc != RTEMS_SUCCESSFUL)                                         
			tty->cindex = tty->ccount = 0;                                     
	}                                                                    
	while (count && (tty->cindex < tty->ccount)) {                       
   444b4:	4a83           	tstl %d3                                    <== NOT EXECUTED
   444b6:	6706           	beqs 444be <rtems_termios_read+0xa0>        <== NOT EXECUTED
   444b8:	b0aa 0020      	cmpl %a2@(32),%d0                           <== NOT EXECUTED
   444bc:	6de6           	blts 444a4 <rtems_termios_read+0x86>        <== NOT EXECUTED
		*buffer++ = tty->cbuf[tty->cindex++];                               
		count--;                                                            
	}                                                                    
	args->bytes_moved = args->count - count;                             
   444be:	202d 0010      	movel %a5@(16),%d0                          <== NOT EXECUTED
   444c2:	9083           	subl %d3,%d0                                <== NOT EXECUTED
	tty->tty_rcvwakeup = 0;                                              
   444c4:	42aa 00e4      	clrl %a2@(228)                              <== NOT EXECUTED
	}                                                                    
	while (count && (tty->cindex < tty->ccount)) {                       
		*buffer++ = tty->cbuf[tty->cindex++];                               
		count--;                                                            
	}                                                                    
	args->bytes_moved = args->count - count;                             
   444c8:	2b40 0018      	movel %d0,%a5@(24)                          <== NOT EXECUTED
	tty->tty_rcvwakeup = 0;                                              
	rtems_semaphore_release (tty->isem);                                 
   444cc:	2f2a 0014      	movel %a2@(20),%sp@-                        <== NOT EXECUTED
   444d0:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
	return sc;                                                           
   444d6:	588f           	addql #4,%sp                                <== NOT EXECUTED
}                                                                     
   444d8:	2005           	movel %d5,%d0                               <== NOT EXECUTED
   444da:	4cee 3cfc ffd4 	moveml %fp@(-44),%d2-%d7/%a2-%a5            <== NOT EXECUTED
   444e0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   444e2:	4e75           	rts                                         <== NOT EXECUTED
	}                                                                    
	if (tty->cindex == tty->ccount) {                                    
		tty->cindex = tty->ccount = 0;                                      
		tty->read_start_column = tty->column;                               
		if (tty->device.pollRead != NULL                                    
		    && tty->device.outputUsesInterrupts == TERMIOS_POLLED)          
   444e4:	206a 00a0      	moveal %a2@(160),%a0                        <== NOT EXECUTED
		rtems_semaphore_release (tty->isem);                                
		return sc;                                                          
	}                                                                    
	if (tty->cindex == tty->ccount) {                                    
		tty->cindex = tty->ccount = 0;                                      
		tty->read_start_column = tty->column;                               
   444e8:	256a 0028 002c 	movel %a2@(40),%a2@(44)                     <== NOT EXECUTED
		tty->tty_rcvwakeup = 0;                                             
		rtems_semaphore_release (tty->isem);                                
		return sc;                                                          
	}                                                                    
	if (tty->cindex == tty->ccount) {                                    
		tty->cindex = tty->ccount = 0;                                      
   444ee:	42aa 0020      	clrl %a2@(32)                               <== NOT EXECUTED
   444f2:	42aa 0024      	clrl %a2@(36)                               <== NOT EXECUTED
		tty->read_start_column = tty->column;                               
		if (tty->device.pollRead != NULL                                    
   444f6:	4a88           	tstl %a0                                    <== NOT EXECUTED
   444f8:	6708           	beqs 44502 <rtems_termios_read+0xe4>        <== NOT EXECUTED
		    && tty->device.outputUsesInterrupts == TERMIOS_POLLED)          
   444fa:	4aaa 00b4      	tstl %a2@(180)                              <== NOT EXECUTED
   444fe:	6700 015e      	beqw 4465e <rtems_termios_read+0x240>       <== NOT EXECUTED
                                                                      
	while ( wait ) {                                                     
		/*                                                                  
		 * Process characters read from raw queue                           
		 */                                                                 
		while ((tty->rawInBuf.Head != tty->rawInBuf.Tail) &&                
   44502:	222a 005c      	movel %a2@(92),%d1                          <== NOT EXECUTED
			  if (((tty->flow_ctrl & (FL_MDXON | FL_ISNTXOF))                  
			       ==                (FL_MDXON | FL_ISNTXOF))                  
			      && ((tty->rawOutBufState == rob_idle)                        
				  || (tty->flow_ctrl & FL_OSTOP))) {                              
			    /* XON should be sent now... */                                
			    (*tty->device.write)(tty->minor,                               
   44506:	41ea 0049      	lea %a2@(73),%a0                            <== NOT EXECUTED
   4450a:	7801           	moveq #1,%d4                                <== NOT EXECUTED
   4450c:	47fa fd4e      	lea %pc@(4425c <siproc>),%a3                <== NOT EXECUTED
 * Fill the input buffer from the raw input queue                     
 */                                                                   
static rtems_status_code                                              
fillBufferQueue (struct rtems_termios_tty *tty)                       
{                                                                     
	rtems_interval timeout = tty->rawInBufSemaphoreFirstTimeout;         
   44510:	242a 0074      	movel %a2@(116),%d2                         <== NOT EXECUTED
                                                                      
	while ( wait ) {                                                     
		/*                                                                  
		 * Process characters read from raw queue                           
		 */                                                                 
		while ((tty->rawInBuf.Head != tty->rawInBuf.Tail) &&                
   44514:	202a 0060      	movel %a2@(96),%d0                          <== NOT EXECUTED
			  if (((tty->flow_ctrl & (FL_MDXON | FL_ISNTXOF))                  
			       ==                (FL_MDXON | FL_ISNTXOF))                  
			      && ((tty->rawOutBufState == rob_idle)                        
				  || (tty->flow_ctrl & FL_OSTOP))) {                              
			    /* XON should be sent now... */                                
			    (*tty->device.write)(tty->minor,                               
   44518:	2d48 fffc      	movel %a0,%fp@(-4)                          <== NOT EXECUTED
                                                                      
	while ( wait ) {                                                     
		/*                                                                  
		 * Process characters read from raw queue                           
		 */                                                                 
		while ((tty->rawInBuf.Head != tty->rawInBuf.Tail) &&                
   4451c:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   4451e:	6700 00bc      	beqw 445dc <rtems_termios_read+0x1be>       <== NOT EXECUTED
   44522:	2039 0005 d814 	movel 5d814 <rtems_termios_cbufsize>,%d0    <== NOT EXECUTED
   44528:	5380           	subql #1,%d0                                <== NOT EXECUTED
   4452a:	b0aa 0020      	cmpl %a2@(32),%d0                           <== NOT EXECUTED
   4452e:	6f00 00ac      	blew 445dc <rtems_termios_read+0x1be>       <== NOT EXECUTED
                       (tty->ccount < (CBUFSIZE-1))) {                
			unsigned char c;                                                   
			unsigned int newHead;                                              
                                                                      
			newHead = (tty->rawInBuf.Head + 1) % tty->rawInBuf.Size;           
   44532:	242a 005c      	movel %a2@(92),%d2                          <== NOT EXECUTED
   44536:	5282           	addql #1,%d2                                <== NOT EXECUTED
   44538:	202a 0064      	movel %a2@(100),%d0                         <== NOT EXECUTED
			c = tty->rawInBuf.theBuf[newHead];                                 
   4453c:	206a 0058      	moveal %a2@(88),%a0                         <== NOT EXECUTED
		while ((tty->rawInBuf.Head != tty->rawInBuf.Tail) &&                
                       (tty->ccount < (CBUFSIZE-1))) {                
			unsigned char c;                                                   
			unsigned int newHead;                                              
                                                                      
			newHead = (tty->rawInBuf.Head + 1) % tty->rawInBuf.Size;           
   44540:	4c40 2001      	remul %d0,%d1,%d2                           <== NOT EXECUTED
			c = tty->rawInBuf.theBuf[newHead];                                 
   44544:	1430 1800      	moveb %a0@(00000000,%d1:l),%d2              <== NOT EXECUTED
			tty->rawInBuf.Head = newHead;                                      
   44548:	2541 005c      	movel %d1,%a2@(92)                          <== NOT EXECUTED
			if(((tty->rawInBuf.Tail-newHead+tty->rawInBuf.Size)                
   4454c:	202a 0060      	movel %a2@(96),%d0                          <== NOT EXECUTED
   44550:	206a 0064      	moveal %a2@(100),%a0                        <== NOT EXECUTED
   44554:	d088           	addl %a0,%d0                                <== NOT EXECUTED
   44556:	9081           	subl %d1,%d0                                <== NOT EXECUTED
   44558:	222a 0064      	movel %a2@(100),%d1                         <== NOT EXECUTED
   4455c:	4c41 0007      	remul %d1,%d7,%d0                           <== NOT EXECUTED
   44560:	beaa 00bc      	cmpl %a2@(188),%d7                          <== NOT EXECUTED
   44564:	6446           	bccs 445ac <rtems_termios_read+0x18e>       <== NOT EXECUTED
			    % tty->rawInBuf.Size)                                          
			   < tty->lowwater) {                                              
			  tty->flow_ctrl &= ~FL_IREQXOF;                                   
   44566:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   4456a:	72fe           	moveq #-2,%d1                               <== NOT EXECUTED
   4456c:	c081           	andl %d1,%d0                                <== NOT EXECUTED
   4456e:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
			  /* if tx stopped and XON should be sent... */                    
			  if (((tty->flow_ctrl & (FL_MDXON | FL_ISNTXOF))                  
   44572:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   44576:	0280 0000 0202 	andil #514,%d0                              <== NOT EXECUTED
   4457c:	0c80 0000 0202 	cmpil #514,%d0                              <== NOT EXECUTED
   44582:	6700 0086      	beqw 4460a <rtems_termios_read+0x1ec>       <== NOT EXECUTED
			    /* XON should be sent now... */                                
			    (*tty->device.write)(tty->minor,                               
				(void *)&(tty->termios.c_cc[VSTART]),                             
				1);                                                               
			  }                                                                
			  else if (tty->flow_ctrl & FL_MDRTS) {                            
   44586:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   4458a:	0800 0008      	btst #8,%d0                                 <== NOT EXECUTED
   4458e:	671c           	beqs 445ac <rtems_termios_read+0x18e>       <== NOT EXECUTED
			    tty->flow_ctrl &= ~FL_IRTSOFF;                                 
   44590:	222a 00b8      	movel %a2@(184),%d1                         <== NOT EXECUTED
   44594:	7efb           	moveq #-5,%d7                               <== NOT EXECUTED
   44596:	c287           	andl %d7,%d1                                <== NOT EXECUTED
			    /* activate RTS line */                                        
			    if (tty->device.startRemoteTx != NULL) {                       
   44598:	206a 00b0      	moveal %a2@(176),%a0                        <== NOT EXECUTED
			    (*tty->device.write)(tty->minor,                               
				(void *)&(tty->termios.c_cc[VSTART]),                             
				1);                                                               
			  }                                                                
			  else if (tty->flow_ctrl & FL_MDRTS) {                            
			    tty->flow_ctrl &= ~FL_IRTSOFF;                                 
   4459c:	2541 00b8      	movel %d1,%a2@(184)                         <== NOT EXECUTED
			    /* activate RTS line */                                        
			    if (tty->device.startRemoteTx != NULL) {                       
   445a0:	4a88           	tstl %a0                                    <== NOT EXECUTED
   445a2:	6708           	beqs 445ac <rtems_termios_read+0x18e>       <== NOT EXECUTED
			      tty->device.startRemoteTx(tty->minor);                       
   445a4:	2f2a 0010      	movel %a2@(16),%sp@-                        <== NOT EXECUTED
   445a8:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   445aa:	588f           	addql #4,%sp                                <== NOT EXECUTED
			    }                                                              
			  }                                                                
			}                                                                  
                                                                      
			/* continue processing new character */                            
			if (tty->termios.c_lflag & ICANON) {                               
   445ac:	7002           	moveq #2,%d0                                <== NOT EXECUTED
   445ae:	c0aa 003c      	andl %a2@(60),%d0                           <== NOT EXECUTED
   445b2:	6700 0088      	beqw 4463c <rtems_termios_read+0x21e>       <== NOT EXECUTED
				if  (siproc (c, tty))                                             
   445b6:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   445b8:	0282 0000 00ff 	andil #255,%d2                              <== NOT EXECUTED
   445be:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   445c0:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   445c2:	508f           	addql #8,%sp                                <== NOT EXECUTED
   445c4:	4a80           	tstl %d0                                    <== NOT EXECUTED
   445c6:	6702           	beqs 445ca <rtems_termios_read+0x1ac>       <== NOT EXECUTED
					wait = 0;                                                        
			}                                                                  
			else {                                                             
				siproc (c, tty);                                                  
				if (tty->ccount >= tty->termios.c_cc[VMIN])                       
   445c8:	4284           	clrl %d4                                    <== NOT EXECUTED
                                                                      
	while ( wait ) {                                                     
		/*                                                                  
		 * Process characters read from raw queue                           
		 */                                                                 
		while ((tty->rawInBuf.Head != tty->rawInBuf.Tail) &&                
   445ca:	222a 005c      	movel %a2@(92),%d1                          <== NOT EXECUTED
			else {                                                             
				siproc (c, tty);                                                  
				if (tty->ccount >= tty->termios.c_cc[VMIN])                       
					wait = 0;                                                        
			}                                                                  
			timeout = tty->rawInBufSemaphoreTimeout;                           
   445ce:	242a 0070      	movel %a2@(112),%d2                         <== NOT EXECUTED
                                                                      
	while ( wait ) {                                                     
		/*                                                                  
		 * Process characters read from raw queue                           
		 */                                                                 
		while ((tty->rawInBuf.Head != tty->rawInBuf.Tail) &&                
   445d2:	202a 0060      	movel %a2@(96),%d0                          <== NOT EXECUTED
   445d6:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   445d8:	6600 ff48      	bnew 44522 <rtems_termios_read+0x104>       <== NOT EXECUTED
		}                                                                   
                                                                      
		/*                                                                  
		 * Wait for characters                                              
		 */                                                                 
		if ( wait ) {                                                       
   445dc:	4a84           	tstl %d4                                    <== NOT EXECUTED
   445de:	6700 feb6      	beqw 44496 <rtems_termios_read+0x78>        <== NOT EXECUTED
			sc = rtems_semaphore_obtain (tty->rawInBuf.Semaphore,              
   445e2:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   445e4:	2f2a 006c      	movel %a2@(108),%sp@-                       <== NOT EXECUTED
   445e8:	2046           	moveal %d6,%a0                              <== NOT EXECUTED
   445ea:	2f2a 0068      	movel %a2@(104),%sp@-                       <== NOT EXECUTED
   445ee:	4e90           	jsr %a0@                                    <== NOT EXECUTED
				tty->rawInBufSemaphoreOptions,                                    
				timeout);                                                         
			if (sc != RTEMS_SUCCESSFUL)                                        
   445f0:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   445f4:	4a80           	tstl %d0                                    <== NOT EXECUTED
   445f6:	6600 fe9e      	bnew 44496 <rtems_termios_read+0x78>        <== NOT EXECUTED
                                                                      
	while ( wait ) {                                                     
		/*                                                                  
		 * Process characters read from raw queue                           
		 */                                                                 
		while ((tty->rawInBuf.Head != tty->rawInBuf.Tail) &&                
   445fa:	222a 005c      	movel %a2@(92),%d1                          <== NOT EXECUTED
   445fe:	202a 0060      	movel %a2@(96),%d0                          <== NOT EXECUTED
   44602:	b081           	cmpl %d1,%d0                                <== NOT EXECUTED
   44604:	6600 ff1c      	bnew 44522 <rtems_termios_read+0x104>       <== NOT EXECUTED
   44608:	60d2           	bras 445dc <rtems_termios_read+0x1be>       <== NOT EXECUTED
			if(((tty->rawInBuf.Tail-newHead+tty->rawInBuf.Size)                
			    % tty->rawInBuf.Size)                                          
			   < tty->lowwater) {                                              
			  tty->flow_ctrl &= ~FL_IREQXOF;                                   
			  /* if tx stopped and XON should be sent... */                    
			  if (((tty->flow_ctrl & (FL_MDXON | FL_ISNTXOF))                  
   4460a:	4aaa 0094      	tstl %a2@(148)                              <== NOT EXECUTED
   4460e:	670c           	beqs 4461c <rtems_termios_read+0x1fe>       <== NOT EXECUTED
			       ==                (FL_MDXON | FL_ISNTXOF))                  
			      && ((tty->rawOutBufState == rob_idle)                        
				  || (tty->flow_ctrl & FL_OSTOP))) {                              
   44610:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
			if(((tty->rawInBuf.Tail-newHead+tty->rawInBuf.Size)                
			    % tty->rawInBuf.Size)                                          
			   < tty->lowwater) {                                              
			  tty->flow_ctrl &= ~FL_IREQXOF;                                   
			  /* if tx stopped and XON should be sent... */                    
			  if (((tty->flow_ctrl & (FL_MDXON | FL_ISNTXOF))                  
   44614:	0800 0005      	btst #5,%d0                                 <== NOT EXECUTED
   44618:	6700 ff6c      	beqw 44586 <rtems_termios_read+0x168>       <== NOT EXECUTED
			       ==                (FL_MDXON | FL_ISNTXOF))                  
			      && ((tty->rawOutBufState == rob_idle)                        
				  || (tty->flow_ctrl & FL_OSTOP))) {                              
			    /* XON should be sent now... */                                
			    (*tty->device.write)(tty->minor,                               
   4461c:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   44620:	2f2e fffc      	movel %fp@(-4),%sp@-                        <== NOT EXECUTED
   44624:	2f2a 0010      	movel %a2@(16),%sp@-                        <== NOT EXECUTED
   44628:	206a 00a4      	moveal %a2@(164),%a0                        <== NOT EXECUTED
   4462c:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4462e:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
			    }                                                              
			  }                                                                
			}                                                                  
                                                                      
			/* continue processing new character */                            
			if (tty->termios.c_lflag & ICANON) {                               
   44632:	7002           	moveq #2,%d0                                <== NOT EXECUTED
   44634:	c0aa 003c      	andl %a2@(60),%d0                           <== NOT EXECUTED
   44638:	6600 ff7c      	bnew 445b6 <rtems_termios_read+0x198>       <== NOT EXECUTED
				if  (siproc (c, tty))                                             
					wait = 0;                                                        
			}                                                                  
			else {                                                             
				siproc (c, tty);                                                  
   4463c:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4463e:	0282 0000 00ff 	andil #255,%d2                              <== NOT EXECUTED
   44644:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   44646:	4e93           	jsr %a3@                                    <== NOT EXECUTED
				if (tty->ccount >= tty->termios.c_cc[VMIN])                       
   44648:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4464a:	4280           	clrl %d0                                    <== NOT EXECUTED
   4464c:	102a 0047      	moveb %a2@(71),%d0                          <== NOT EXECUTED
   44650:	b0aa 0020      	cmpl %a2@(32),%d0                           <== NOT EXECUTED
   44654:	6e00 ff74      	bgtw 445ca <rtems_termios_read+0x1ac>       <== NOT EXECUTED
   44658:	4284           	clrl %d4                                    <== NOT EXECUTED
   4465a:	6000 ff6e      	braw 445ca <rtems_termios_read+0x1ac>       <== NOT EXECUTED
static rtems_status_code                                              
fillBufferPoll (struct rtems_termios_tty *tty)                        
{                                                                     
	int n;                                                               
                                                                      
	if (tty->termios.c_lflag & ICANON) {                                 
   4465e:	7002           	moveq #2,%d0                                <== NOT EXECUTED
   44660:	47fa fbfa      	lea %pc@(4425c <siproc>),%a3                <== NOT EXECUTED
		for (;;) {                                                          
			n = (*tty->device.pollRead)(tty->minor);                           
			if (n < 0) {                                                       
				rtems_task_wake_after (1);                                        
   44664:	243c 0004 6294 	movel #287380,%d2                           <== NOT EXECUTED
static rtems_status_code                                              
fillBufferPoll (struct rtems_termios_tty *tty)                        
{                                                                     
	int n;                                                               
                                                                      
	if (tty->termios.c_lflag & ICANON) {                                 
   4466a:	c0aa 003c      	andl %a2@(60),%d0                           <== NOT EXECUTED
   4466e:	6728           	beqs 44698 <rtems_termios_read+0x27a>       <== NOT EXECUTED
		for (;;) {                                                          
			n = (*tty->device.pollRead)(tty->minor);                           
   44670:	2f2a 0010      	movel %a2@(16),%sp@-                        <== NOT EXECUTED
   44674:	4e90           	jsr %a0@                                    <== NOT EXECUTED
			if (n < 0) {                                                       
   44676:	588f           	addql #4,%sp                                <== NOT EXECUTED
   44678:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4467a:	6d00 00b8      	bltw 44734 <rtems_termios_read+0x316>       <== NOT EXECUTED
				rtems_task_wake_after (1);                                        
			}                                                                  
			else {                                                             
				if  (siproc (n, tty))                                             
   4467e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   44680:	0280 0000 00ff 	andil #255,%d0                              <== NOT EXECUTED
   44686:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   44688:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   4468a:	508f           	addql #8,%sp                                <== NOT EXECUTED
   4468c:	4a80           	tstl %d0                                    <== NOT EXECUTED
   4468e:	6600 fe06      	bnew 44496 <rtems_termios_read+0x78>        <== NOT EXECUTED
static rtems_status_code                                              
fillBufferPoll (struct rtems_termios_tty *tty)                        
{                                                                     
	int n;                                                               
                                                                      
	if (tty->termios.c_lflag & ICANON) {                                 
   44692:	206a 00a0      	moveal %a2@(160),%a0                        <== NOT EXECUTED
   44696:	60d8           	bras 44670 <rtems_termios_read+0x252>       <== NOT EXECUTED
			}                                                                  
		}                                                                   
	}                                                                    
	else {                                                               
		rtems_interval then, now;                                           
		then = rtems_clock_get_ticks_since_boot();                          
   44698:	283c 0004 55fc 	movel #284156,%d4                           <== NOT EXECUTED
					now = rtems_clock_get_ticks_since_boot();                        
					if ((now - then) > tty->vtimeTicks) {                            
						break;                                                          
					}                                                                
				}                                                                 
				rtems_task_wake_after (1);                                        
   4469e:	243c 0004 6294 	movel #287380,%d2                           <== NOT EXECUTED
			}                                                                  
		}                                                                   
	}                                                                    
	else {                                                               
		rtems_interval then, now;                                           
		then = rtems_clock_get_ticks_since_boot();                          
   446a4:	2044           	moveal %d4,%a0                              <== NOT EXECUTED
   446a6:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   446a8:	2c00           	movel %d0,%d6                               <== NOT EXECUTED
		for (;;) {                                                          
			n = (*tty->device.pollRead)(tty->minor);                           
   446aa:	2f2a 0010      	movel %a2@(16),%sp@-                        <== NOT EXECUTED
   446ae:	206a 00a0      	moveal %a2@(160),%a0                        <== NOT EXECUTED
   446b2:	4e90           	jsr %a0@                                    <== NOT EXECUTED
			if (n < 0) {                                                       
   446b4:	588f           	addql #4,%sp                                <== NOT EXECUTED
   446b6:	4a80           	tstl %d0                                    <== NOT EXECUTED
   446b8:	6d38           	blts 446f2 <rtems_termios_read+0x2d4>       <== NOT EXECUTED
					}                                                                
				}                                                                 
				rtems_task_wake_after (1);                                        
			}                                                                  
			else {                                                             
				siproc (n, tty);                                                  
   446ba:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   446bc:	0280 0000 00ff 	andil #255,%d0                              <== NOT EXECUTED
   446c2:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   446c4:	4e93           	jsr %a3@                                    <== NOT EXECUTED
				if (tty->ccount >= tty->termios.c_cc[VMIN])                       
   446c6:	508f           	addql #8,%sp                                <== NOT EXECUTED
   446c8:	4281           	clrl %d1                                    <== NOT EXECUTED
   446ca:	102a 0047      	moveb %a2@(71),%d0                          <== NOT EXECUTED
   446ce:	1200           	moveb %d0,%d1                               <== NOT EXECUTED
   446d0:	b2aa 0020      	cmpl %a2@(32),%d1                           <== NOT EXECUTED
   446d4:	6f00 fdc0      	blew 44496 <rtems_termios_read+0x78>        <== NOT EXECUTED
					break;                                                           
				if (tty->termios.c_cc[VMIN] && tty->termios.c_cc[VTIME])          
   446d8:	4a00           	tstb %d0                                    <== NOT EXECUTED
   446da:	67ce           	beqs 446aa <rtems_termios_read+0x28c>       <== NOT EXECUTED
   446dc:	4a2a 0046      	tstb %a2@(70)                               <== NOT EXECUTED
   446e0:	66c2           	bnes 446a4 <rtems_termios_read+0x286>       <== NOT EXECUTED
	}                                                                    
	else {                                                               
		rtems_interval then, now;                                           
		then = rtems_clock_get_ticks_since_boot();                          
		for (;;) {                                                          
			n = (*tty->device.pollRead)(tty->minor);                           
   446e2:	2f2a 0010      	movel %a2@(16),%sp@-                        <== NOT EXECUTED
   446e6:	206a 00a0      	moveal %a2@(160),%a0                        <== NOT EXECUTED
   446ea:	4e90           	jsr %a0@                                    <== NOT EXECUTED
			if (n < 0) {                                                       
   446ec:	588f           	addql #4,%sp                                <== NOT EXECUTED
   446ee:	4a80           	tstl %d0                                    <== NOT EXECUTED
   446f0:	6cc8           	bges 446ba <rtems_termios_read+0x29c>       <== NOT EXECUTED
				if (tty->termios.c_cc[VMIN]) {                                    
   446f2:	4a2a 0047      	tstb %a2@(71)                               <== NOT EXECUTED
   446f6:	6718           	beqs 44710 <rtems_termios_read+0x2f2>       <== NOT EXECUTED
					if (tty->termios.c_cc[VTIME] && tty->ccount) {                   
   446f8:	4a2a 0046      	tstb %a2@(70)                               <== NOT EXECUTED
   446fc:	6706           	beqs 44704 <rtems_termios_read+0x2e6>       <== NOT EXECUTED
   446fe:	4aaa 0020      	tstl %a2@(32)                               <== NOT EXECUTED
   44702:	6614           	bnes 44718 <rtems_termios_read+0x2fa>       <== NOT EXECUTED
					now = rtems_clock_get_ticks_since_boot();                        
					if ((now - then) > tty->vtimeTicks) {                            
						break;                                                          
					}                                                                
				}                                                                 
				rtems_task_wake_after (1);                                        
   44704:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   44708:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4470a:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4470c:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4470e:	609a           	bras 446aa <rtems_termios_read+0x28c>       <== NOT EXECUTED
							break;                                                         
						}                                                               
					}                                                                
				}                                                                 
				else {                                                            
					if (!tty->termios.c_cc[VTIME])                                   
   44710:	4a2a 0046      	tstb %a2@(70)                               <== NOT EXECUTED
   44714:	6700 fd80      	beqw 44496 <rtems_termios_read+0x78>        <== NOT EXECUTED
						break;                                                          
					now = rtems_clock_get_ticks_since_boot();                        
   44718:	2044           	moveal %d4,%a0                              <== NOT EXECUTED
   4471a:	4e90           	jsr %a0@                                    <== NOT EXECUTED
					if ((now - then) > tty->vtimeTicks) {                            
   4471c:	9086           	subl %d6,%d0                                <== NOT EXECUTED
   4471e:	b0aa 0054      	cmpl %a2@(84),%d0                           <== NOT EXECUTED
   44722:	6200 fd72      	bhiw 44496 <rtems_termios_read+0x78>        <== NOT EXECUTED
						break;                                                          
					}                                                                
				}                                                                 
				rtems_task_wake_after (1);                                        
   44726:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   4472a:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4472c:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4472e:	588f           	addql #4,%sp                                <== NOT EXECUTED
   44730:	6000 ff78      	braw 446aa <rtems_termios_read+0x28c>       <== NOT EXECUTED
                                                                      
	if (tty->termios.c_lflag & ICANON) {                                 
		for (;;) {                                                          
			n = (*tty->device.pollRead)(tty->minor);                           
			if (n < 0) {                                                       
				rtems_task_wake_after (1);                                        
   44734:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   44738:	2042           	moveal %d2,%a0                              <== NOT EXECUTED
   4473a:	4e90           	jsr %a0@                                    <== NOT EXECUTED
static rtems_status_code                                              
fillBufferPoll (struct rtems_termios_tty *tty)                        
{                                                                     
	int n;                                                               
                                                                      
	if (tty->termios.c_lflag & ICANON) {                                 
   4473c:	206a 00a0      	moveal %a2@(160),%a0                        <== NOT EXECUTED
		for (;;) {                                                          
			n = (*tty->device.pollRead)(tty->minor);                           
			if (n < 0) {                                                       
				rtems_task_wake_after (1);                                        
   44740:	588f           	addql #4,%sp                                <== NOT EXECUTED
   44742:	6000 ff2c      	braw 44670 <rtems_termios_read+0x252>       <== NOT EXECUTED
                                                                      
0004357c <rtems_termios_refill_transmitter>:                          
 * in task-driven mode, this function is called in Tx task context    
 * in interrupt-driven mode, this function is called in TxIRQ context 
 */                                                                   
int                                                                   
rtems_termios_refill_transmitter (struct rtems_termios_tty *tty)      
{                                                                     
   4357c:	4e56 fff4      	linkw %fp,#-12                              
   43580:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
   43584:	246e 0008      	moveal %fp@(8),%a2                          
	int nToSend;                                                         
	rtems_interrupt_level level;                                         
	int len;                                                             
                                                                      
	/* check for XOF/XON to send */                                      
	if ((tty->flow_ctrl & (FL_MDXOF | FL_IREQXOF | FL_ISNTXOF))          
   43588:	202a 00b8      	movel %a2@(184),%d0                         
   4358c:	0280 0000 0403 	andil #1027,%d0                             
   43592:	0c80 0000 0401 	cmpil #1025,%d0                             
   43598:	6700 0140      	beqw 436da <rtems_termios_refill_transmitter+0x15e>
	  tty->flow_ctrl |= FL_ISNTXOF;                                      
	  rtems_interrupt_enable(level);                                     
                                                                      
	  nToSend = 1;                                                       
	}                                                                    
	else if ((tty->flow_ctrl & (FL_IREQXOF | FL_ISNTXOF))                
   4359c:	202a 00b8      	movel %a2@(184),%d0                         
   435a0:	7603           	moveq #3,%d3                                
   435a2:	7202           	moveq #2,%d1                                
   435a4:	c083           	andl %d3,%d0                                
   435a6:	b280           	cmpl %d0,%d1                                
   435a8:	6700 0172      	beqw 4371c <rtems_termios_refill_transmitter+0x1a0>
	  rtems_interrupt_enable(level);                                     
                                                                      
	  nToSend = 1;                                                       
	}                                                                    
	else {                                                               
	  if ( tty->rawOutBuf.Head == tty->rawOutBuf.Tail ) {                
   435ac:	222a 0080      	movel %a2@(128),%d1                         
   435b0:	202a 0084      	movel %a2@(132),%d0                         
   435b4:	b081           	cmpl %d1,%d0                                
   435b6:	6700 009c      	beqw 43654 <rtems_termios_refill_transmitter+0xd8>
	      rtems_semaphore_release (tty->rawOutBuf.Semaphore);            
	    }                                                                
	    return 0;                                                        
	  }                                                                  
                                                                      
	  rtems_interrupt_disable(level);                                    
   435ba:	203c 0000 0700 	movel #1792,%d0                             
   435c0:	40c2           	movew %sr,%d2                               
   435c2:	8082           	orl %d2,%d0                                 
   435c4:	46c0           	movew %d0,%sr                               
	  len = tty->t_dqlen;                                                
   435c6:	222a 0090      	movel %a2@(144),%d1                         
	  tty->t_dqlen = 0;                                                  
   435ca:	42aa 0090      	clrl %a2@(144)                              
	  rtems_interrupt_enable(level);                                     
   435ce:	46c2           	movew %d2,%sr                               
                                                                      
	  newTail = (tty->rawOutBuf.Tail + len) % tty->rawOutBuf.Size;       
   435d0:	202a 0084      	movel %a2@(132),%d0                         
   435d4:	d280           	addl %d0,%d1                                
   435d6:	202a 0088      	movel %a2@(136),%d0                         
   435da:	4c40 1002      	remul %d0,%d2,%d1                           
	  tty->rawOutBuf.Tail = newTail;                                     
	  if (tty->rawOutBufState == rob_wait) {                             
   435de:	7002           	moveq #2,%d0                                
	  len = tty->t_dqlen;                                                
	  tty->t_dqlen = 0;                                                  
	  rtems_interrupt_enable(level);                                     
                                                                      
	  newTail = (tty->rawOutBuf.Tail + len) % tty->rawOutBuf.Size;       
	  tty->rawOutBuf.Tail = newTail;                                     
   435e0:	2542 0084      	movel %d2,%a2@(132)                         
	  if (tty->rawOutBufState == rob_wait) {                             
   435e4:	b0aa 0094      	cmpl %a2@(148),%d0                          
   435e8:	6700 00d8      	beqw 436c2 <rtems_termios_refill_transmitter+0x146>
	    /*                                                               
	     * wake up any pending writer task                               
	     */                                                              
	    rtems_semaphore_release (tty->rawOutBuf.Semaphore);              
	  }                                                                  
	  if (newTail == tty->rawOutBuf.Head) {                              
   435ec:	202a 0080      	movel %a2@(128),%d0                         
   435f0:	b480           	cmpl %d0,%d2                                
   435f2:	6778           	beqs 4366c <rtems_termios_refill_transmitter+0xf0>
	    if ( tty->tty_snd.sw_pfn != NULL) {                              
	      (*tty->tty_snd.sw_pfn)(&tty->termios, tty->tty_snd.sw_arg);    
	    }                                                                
	  }                                                                  
	  /* check, whether output should stop due to received XOFF */       
	  else if ((tty->flow_ctrl & (FL_MDXON | FL_ORCVXOF))                
   435f4:	202a 00b8      	movel %a2@(184),%d0                         
   435f8:	0280 0000 0210 	andil #528,%d0                              
   435fe:	0c80 0000 0210 	cmpil #528,%d0                              
   43604:	6700 015a      	beqw 43760 <rtems_termios_refill_transmitter+0x1e4>
	  }                                                                  
	  else {                                                             
	    /*                                                               
	     * Buffer not empty, start tranmitter                            
	     */                                                              
	    if (newTail > tty->rawOutBuf.Head)                               
   43608:	202a 0080      	movel %a2@(128),%d0                         
   4360c:	b082           	cmpl %d2,%d0                                
   4360e:	647e           	bccs 4368e <rtems_termios_refill_transmitter+0x112>
		    nToSend = tty->rawOutBuf.Size - newTail;                        
   43610:	262a 0088      	movel %a2@(136),%d3                         
   43614:	9682           	subl %d2,%d3                                
	    else                                                             
		    nToSend = tty->rawOutBuf.Head - newTail;                        
	    /* when flow control XON or XOF, don't send blocks of data     */
	    /* to allow fast reaction on incoming flow ctrl and low latency*/
	    /* for outgoing flow control                                   */
	    if (tty->flow_ctrl & (FL_MDXON | FL_MDXOF)) {                    
   43616:	202a 00b8      	movel %a2@(184),%d0                         
   4361a:	0280 0000 0600 	andil #1536,%d0                             
   43620:	677e           	beqs 436a0 <rtems_termios_refill_transmitter+0x124>
   43622:	7001           	moveq #1,%d0                                <== NOT EXECUTED
		    nToSend = 1;                                                    
	    }                                                                
	    tty->rawOutBufState = rob_busy; /*apm*/                          
   43624:	7201           	moveq #1,%d1                                <== NOT EXECUTED
	    else                                                             
		    nToSend = tty->rawOutBuf.Head - newTail;                        
	    /* when flow control XON or XOF, don't send blocks of data     */
	    /* to allow fast reaction on incoming flow ctrl and low latency*/
	    /* for outgoing flow control                                   */
	    if (tty->flow_ctrl & (FL_MDXON | FL_MDXOF)) {                    
   43626:	7601           	moveq #1,%d3                                <== NOT EXECUTED
		    nToSend = 1;                                                    
	    }                                                                
	    tty->rawOutBufState = rob_busy; /*apm*/                          
	    (*tty->device.write)(tty->minor,                                 
   43628:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   4362a:	202a 007c      	movel %a2@(124),%d0                         <== NOT EXECUTED
   4362e:	d082           	addl %d2,%d0                                <== NOT EXECUTED
   43630:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   43632:	2f2a 0010      	movel %a2@(16),%sp@-                        <== NOT EXECUTED
   43636:	206a 00a4      	moveal %a2@(164),%a0                        <== NOT EXECUTED
	    /* to allow fast reaction on incoming flow ctrl and low latency*/
	    /* for outgoing flow control                                   */
	    if (tty->flow_ctrl & (FL_MDXON | FL_MDXOF)) {                    
		    nToSend = 1;                                                    
	    }                                                                
	    tty->rawOutBufState = rob_busy; /*apm*/                          
   4363a:	2541 0094      	movel %d1,%a2@(148)                         <== NOT EXECUTED
	    (*tty->device.write)(tty->minor,                                 
   4363e:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   43640:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
				 &tty->rawOutBuf.theBuf[newTail],                                 
				 nToSend);                                                        
	  }                                                                  
	  tty->rawOutBuf.Tail = newTail; /*apm*/                             
   43644:	2542 0084      	movel %d2,%a2@(132)                         
	}                                                                    
	return nToSend;                                                      
}                                                                     
   43648:	2003           	movel %d3,%d0                               
   4364a:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   43650:	4e5e           	unlk %fp                                    
   43652:	4e75           	rts                                         
	else {                                                               
	  if ( tty->rawOutBuf.Head == tty->rawOutBuf.Tail ) {                
	    /*                                                               
	     * buffer was empty                                              
	     */                                                              
	    if (tty->rawOutBufState == rob_wait) {                           
   43654:	7602           	moveq #2,%d3                                <== NOT EXECUTED
   43656:	b6aa 0094      	cmpl %a2@(148),%d3                          <== NOT EXECUTED
   4365a:	6700 012e      	beqw 4378a <rtems_termios_refill_transmitter+0x20e><== NOT EXECUTED
   4365e:	4203           	clrb %d3                                    <== NOT EXECUTED
				 nToSend);                                                        
	  }                                                                  
	  tty->rawOutBuf.Tail = newTail; /*apm*/                             
	}                                                                    
	return nToSend;                                                      
}                                                                     
   43660:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   43662:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   43668:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4366a:	4e75           	rts                                         <== NOT EXECUTED
	    nToSend = 0;                                                     
                                                                      
	    /*                                                               
	     * check to see if snd wakeup callback was set                   
	     */                                                              
	    if ( tty->tty_snd.sw_pfn != NULL) {                              
   4366c:	206a 00d4      	moveal %a2@(212),%a0                        
	  }                                                                  
	  if (newTail == tty->rawOutBuf.Head) {                              
	    /*                                                               
	     * Buffer has become empty                                       
	     */                                                              
	    tty->rawOutBufState = rob_idle;                                  
   43670:	42aa 0094      	clrl %a2@(148)                              
	    nToSend = 0;                                                     
                                                                      
	    /*                                                               
	     * check to see if snd wakeup callback was set                   
	     */                                                              
	    if ( tty->tty_snd.sw_pfn != NULL) {                              
   43674:	4a88           	tstl %a0                                    
   43676:	6700 012c      	beqw 437a4 <rtems_termios_refill_transmitter+0x228>
	      (*tty->tty_snd.sw_pfn)(&tty->termios, tty->tty_snd.sw_arg);    
   4367a:	2f2a 00d8      	movel %a2@(216),%sp@-                       <== NOT EXECUTED
   4367e:	4283           	clrl %d3                                    <== NOT EXECUTED
   43680:	486a 0030      	pea %a2@(48)                                <== NOT EXECUTED
   43684:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   43686:	508f           	addql #8,%sp                                <== NOT EXECUTED
	    tty->rawOutBufState = rob_busy; /*apm*/                          
	    (*tty->device.write)(tty->minor,                                 
				 &tty->rawOutBuf.theBuf[newTail],                                 
				 nToSend);                                                        
	  }                                                                  
	  tty->rawOutBuf.Tail = newTail; /*apm*/                             
   43688:	2542 0084      	movel %d2,%a2@(132)                         <== NOT EXECUTED
   4368c:	60ba           	bras 43648 <rtems_termios_refill_transmitter+0xcc><== NOT EXECUTED
	     * Buffer not empty, start tranmitter                            
	     */                                                              
	    if (newTail > tty->rawOutBuf.Head)                               
		    nToSend = tty->rawOutBuf.Size - newTail;                        
	    else                                                             
		    nToSend = tty->rawOutBuf.Head - newTail;                        
   4368e:	262a 0080      	movel %a2@(128),%d3                         
   43692:	9682           	subl %d2,%d3                                
	    /* when flow control XON or XOF, don't send blocks of data     */
	    /* to allow fast reaction on incoming flow ctrl and low latency*/
	    /* for outgoing flow control                                   */
	    if (tty->flow_ctrl & (FL_MDXON | FL_MDXOF)) {                    
   43694:	202a 00b8      	movel %a2@(184),%d0                         
   43698:	0280 0000 0600 	andil #1536,%d0                             
   4369e:	6682           	bnes 43622 <rtems_termios_refill_transmitter+0xa6>
   436a0:	2003           	movel %d3,%d0                               
		    nToSend = 1;                                                    
	    }                                                                
	    tty->rawOutBufState = rob_busy; /*apm*/                          
   436a2:	7201           	moveq #1,%d1                                
	    (*tty->device.write)(tty->minor,                                 
   436a4:	2f00           	movel %d0,%sp@-                             
   436a6:	202a 007c      	movel %a2@(124),%d0                         
   436aa:	d082           	addl %d2,%d0                                
   436ac:	2f00           	movel %d0,%sp@-                             
   436ae:	2f2a 0010      	movel %a2@(16),%sp@-                        
   436b2:	206a 00a4      	moveal %a2@(164),%a0                        
	    /* to allow fast reaction on incoming flow ctrl and low latency*/
	    /* for outgoing flow control                                   */
	    if (tty->flow_ctrl & (FL_MDXON | FL_MDXOF)) {                    
		    nToSend = 1;                                                    
	    }                                                                
	    tty->rawOutBufState = rob_busy; /*apm*/                          
   436b6:	2541 0094      	movel %d1,%a2@(148)                         
	    (*tty->device.write)(tty->minor,                                 
   436ba:	4e90           	jsr %a0@                                    
   436bc:	4fef 000c      	lea %sp@(12),%sp                            
   436c0:	6082           	bras 43644 <rtems_termios_refill_transmitter+0xc8>
	  tty->rawOutBuf.Tail = newTail;                                     
	  if (tty->rawOutBufState == rob_wait) {                             
	    /*                                                               
	     * wake up any pending writer task                               
	     */                                                              
	    rtems_semaphore_release (tty->rawOutBuf.Semaphore);              
   436c2:	2f2a 008c      	movel %a2@(140),%sp@-                       
   436c6:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         
	  }                                                                  
	  if (newTail == tty->rawOutBuf.Head) {                              
   436cc:	202a 0080      	movel %a2@(128),%d0                         
	  tty->rawOutBuf.Tail = newTail;                                     
	  if (tty->rawOutBufState == rob_wait) {                             
	    /*                                                               
	     * wake up any pending writer task                               
	     */                                                              
	    rtems_semaphore_release (tty->rawOutBuf.Semaphore);              
   436d0:	588f           	addql #4,%sp                                
	  }                                                                  
	  if (newTail == tty->rawOutBuf.Head) {                              
   436d2:	b480           	cmpl %d0,%d2                                
   436d4:	6600 ff1e      	bnew 435f4 <rtems_termios_refill_transmitter+0x78>
   436d8:	6092           	bras 4366c <rtems_termios_refill_transmitter+0xf0>
                                                                      
	/* check for XOF/XON to send */                                      
	if ((tty->flow_ctrl & (FL_MDXOF | FL_IREQXOF | FL_ISNTXOF))          
	    == (FL_MDXOF | FL_IREQXOF)) {                                    
	  /* XOFF should be sent now... */                                   
	  (*tty->device.write)(tty->minor,                                   
   436da:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   436de:	486a 004a      	pea %a2@(74)                                <== NOT EXECUTED
   436e2:	2f2a 0010      	movel %a2@(16),%sp@-                        <== NOT EXECUTED
   436e6:	206a 00a4      	moveal %a2@(164),%a0                        <== NOT EXECUTED
   436ea:	4e90           	jsr %a0@                                    <== NOT EXECUTED
			       (void *)&(tty->termios.c_cc[VSTOP]), 1);                    
                                                                      
	  rtems_interrupt_disable(level);                                    
   436ec:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   436f2:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   436f4:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   436f6:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
	  tty->t_dqlen--;                                                    
	  tty->flow_ctrl |= FL_ISNTXOF;                                      
   436f8:	7402           	moveq #2,%d2                                <== NOT EXECUTED
	  /* XOFF should be sent now... */                                   
	  (*tty->device.write)(tty->minor,                                   
			       (void *)&(tty->termios.c_cc[VSTOP]), 1);                    
                                                                      
	  rtems_interrupt_disable(level);                                    
	  tty->t_dqlen--;                                                    
   436fa:	53aa 0090      	subql #1,%a2@(144)                          <== NOT EXECUTED
	  tty->flow_ctrl |= FL_ISNTXOF;                                      
   436fe:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   43702:	8082           	orl %d2,%d0                                 <== NOT EXECUTED
   43704:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
	  rtems_interrupt_enable(level);                                     
   43708:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
   4370a:	7601           	moveq #1,%d3                                <== NOT EXECUTED
				 nToSend);                                                        
	  }                                                                  
	  tty->rawOutBuf.Tail = newTail; /*apm*/                             
	}                                                                    
	return nToSend;                                                      
}                                                                     
   4370c:	2003           	movel %d3,%d0                               <== NOT EXECUTED
			       (void *)&(tty->termios.c_cc[VSTOP]), 1);                    
                                                                      
	  rtems_interrupt_disable(level);                                    
	  tty->t_dqlen--;                                                    
	  tty->flow_ctrl |= FL_ISNTXOF;                                      
	  rtems_interrupt_enable(level);                                     
   4370e:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
				 nToSend);                                                        
	  }                                                                  
	  tty->rawOutBuf.Tail = newTail; /*apm*/                             
	}                                                                    
	return nToSend;                                                      
}                                                                     
   43712:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   43718:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4371a:	4e75           	rts                                         <== NOT EXECUTED
		 * FIXME: this .write call will generate another                    
		 * dequeue callback. This will advance the "Tail" in the data       
		 * buffer, although the corresponding data is not yet out!          
		 * Therefore the dequeue "length" should be reduced by 1            
		 */                                                                 
	  (*tty->device.write)(tty->minor,                                   
   4371c:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
   43720:	486a 0049      	pea %a2@(73)                                <== NOT EXECUTED
   43724:	2f2a 0010      	movel %a2@(16),%sp@-                        <== NOT EXECUTED
   43728:	206a 00a4      	moveal %a2@(164),%a0                        <== NOT EXECUTED
   4372c:	4e90           	jsr %a0@                                    <== NOT EXECUTED
			       (void *)&(tty->termios.c_cc[VSTART]), 1);                   
                                                                      
	  rtems_interrupt_disable(level);                                    
   4372e:	203c 0000 0700 	movel #1792,%d0                             <== NOT EXECUTED
   43734:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   43736:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   43738:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
	  tty->t_dqlen--;                                                    
	  tty->flow_ctrl &= ~FL_ISNTXOF;                                     
   4373a:	74fd           	moveq #-3,%d2                               <== NOT EXECUTED
		 */                                                                 
	  (*tty->device.write)(tty->minor,                                   
			       (void *)&(tty->termios.c_cc[VSTART]), 1);                   
                                                                      
	  rtems_interrupt_disable(level);                                    
	  tty->t_dqlen--;                                                    
   4373c:	53aa 0090      	subql #1,%a2@(144)                          <== NOT EXECUTED
	  tty->flow_ctrl &= ~FL_ISNTXOF;                                     
   43740:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   43744:	c082           	andl %d2,%d0                                <== NOT EXECUTED
   43746:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
	  rtems_interrupt_enable(level);                                     
   4374a:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
   4374c:	163c 0001      	moveb #1,%d3                                <== NOT EXECUTED
				 nToSend);                                                        
	  }                                                                  
	  tty->rawOutBuf.Tail = newTail; /*apm*/                             
	}                                                                    
	return nToSend;                                                      
}                                                                     
   43750:	2003           	movel %d3,%d0                               <== NOT EXECUTED
			       (void *)&(tty->termios.c_cc[VSTART]), 1);                   
                                                                      
	  rtems_interrupt_disable(level);                                    
	  tty->t_dqlen--;                                                    
	  tty->flow_ctrl &= ~FL_ISNTXOF;                                     
	  rtems_interrupt_enable(level);                                     
   43752:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
				 nToSend);                                                        
	  }                                                                  
	  tty->rawOutBuf.Tail = newTail; /*apm*/                             
	}                                                                    
	return nToSend;                                                      
}                                                                     
   43756:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   4375c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4375e:	4e75           	rts                                         <== NOT EXECUTED
	  /* check, whether output should stop due to received XOFF */       
	  else if ((tty->flow_ctrl & (FL_MDXON | FL_ORCVXOF))                
		   ==                (FL_MDXON | FL_ORCVXOF)) {                     
		  /* Buffer not empty, but output stops due to XOFF */              
		  /* set flag, that output has been stopped */                      
		  rtems_interrupt_disable(level);                                   
   43760:	303c 0700      	movew #1792,%d0                             <== NOT EXECUTED
   43764:	40c1           	movew %sr,%d1                               <== NOT EXECUTED
   43766:	8081           	orl %d1,%d0                                 <== NOT EXECUTED
   43768:	46c0           	movew %d0,%sr                               <== NOT EXECUTED
		  tty->flow_ctrl |= FL_OSTOP;                                       
   4376a:	202a 00b8      	movel %a2@(184),%d0                         <== NOT EXECUTED
   4376e:	7620           	moveq #32,%d3                               <== NOT EXECUTED
   43770:	8083           	orl %d3,%d0                                 <== NOT EXECUTED
		  tty->rawOutBufState = rob_busy; /*apm*/                           
   43772:	163c 0001      	moveb #1,%d3                                <== NOT EXECUTED
	  else if ((tty->flow_ctrl & (FL_MDXON | FL_ORCVXOF))                
		   ==                (FL_MDXON | FL_ORCVXOF)) {                     
		  /* Buffer not empty, but output stops due to XOFF */              
		  /* set flag, that output has been stopped */                      
		  rtems_interrupt_disable(level);                                   
		  tty->flow_ctrl |= FL_OSTOP;                                       
   43776:	2540 00b8      	movel %d0,%a2@(184)                         <== NOT EXECUTED
		  tty->rawOutBufState = rob_busy; /*apm*/                           
   4377a:	2543 0094      	movel %d3,%a2@(148)                         <== NOT EXECUTED
		  rtems_interrupt_enable(level);                                    
   4377e:	46c1           	movew %d1,%sr                               <== NOT EXECUTED
	    tty->rawOutBufState = rob_busy; /*apm*/                          
	    (*tty->device.write)(tty->minor,                                 
				 &tty->rawOutBuf.theBuf[newTail],                                 
				 nToSend);                                                        
	  }                                                                  
	  tty->rawOutBuf.Tail = newTail; /*apm*/                             
   43780:	2542 0084      	movel %d2,%a2@(132)                         <== NOT EXECUTED
		  /* Buffer not empty, but output stops due to XOFF */              
		  /* set flag, that output has been stopped */                      
		  rtems_interrupt_disable(level);                                   
		  tty->flow_ctrl |= FL_OSTOP;                                       
		  tty->rawOutBufState = rob_busy; /*apm*/                           
		  rtems_interrupt_enable(level);                                    
   43784:	4203           	clrb %d3                                    <== NOT EXECUTED
   43786:	6000 fec0      	braw 43648 <rtems_termios_refill_transmitter+0xcc><== NOT EXECUTED
	     */                                                              
	    if (tty->rawOutBufState == rob_wait) {                           
	      /*                                                             
	       * this should never happen...                                 
	       */                                                            
	      rtems_semaphore_release (tty->rawOutBuf.Semaphore);            
   4378a:	2f2a 008c      	movel %a2@(140),%sp@-                       <== NOT EXECUTED
   4378e:	4283           	clrl %d3                                    <== NOT EXECUTED
   43790:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
   43796:	588f           	addql #4,%sp                                <== NOT EXECUTED
				 nToSend);                                                        
	  }                                                                  
	  tty->rawOutBuf.Tail = newTail; /*apm*/                             
	}                                                                    
	return nToSend;                                                      
}                                                                     
   43798:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   4379a:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   437a0:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   437a2:	4e75           	rts                                         <== NOT EXECUTED
	    tty->rawOutBufState = rob_busy; /*apm*/                          
	    (*tty->device.write)(tty->minor,                                 
				 &tty->rawOutBuf.theBuf[newTail],                                 
				 nToSend);                                                        
	  }                                                                  
	  tty->rawOutBuf.Tail = newTail; /*apm*/                             
   437a4:	2542 0084      	movel %d2,%a2@(132)                         
	    nToSend = 0;                                                     
                                                                      
	    /*                                                               
	     * check to see if snd wakeup callback was set                   
	     */                                                              
	    if ( tty->tty_snd.sw_pfn != NULL) {                              
   437a8:	4283           	clrl %d3                                    
   437aa:	6000 fe9c      	braw 43648 <rtems_termios_refill_transmitter+0xcc>
                                                                      
000451ac <rtems_termios_rxdaemon>:                                    
                                                                      
/*                                                                    
 * this task actually processes any receive events                    
 */                                                                   
static rtems_task rtems_termios_rxdaemon(rtems_task_argument argument)
{                                                                     
   451ac:	4e56 ffe0      	linkw %fp,#-32                              <== NOT EXECUTED
   451b0:	48d7 3c0c      	moveml %d2-%d3/%a2-%a5,%sp@                 <== NOT EXECUTED
   451b4:	240e           	movel %fp,%d2                               <== NOT EXECUTED
   451b6:	260e           	movel %fp,%d3                               <== NOT EXECUTED
   451b8:	5d82           	subql #6,%d2                                <== NOT EXECUTED
   451ba:	47f9 0004 566c 	lea 4566c <rtems_event_receive>,%a3         <== NOT EXECUTED
   451c0:	4bf9 0004 606c 	lea 4606c <rtems_task_delete>,%a5           <== NOT EXECUTED
   451c6:	5383           	subql #1,%d3                                <== NOT EXECUTED
   451c8:	49f9 0004 380c 	lea 4380c <rtems_termios_enqueue_raw_characters>,%a4<== NOT EXECUTED
   451ce:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
	char c_buf;                                                          
	while (1) {                                                          
		/*                                                                  
		 * wait for rtems event                                             
		 */                                                                 
		rtems_event_receive((TERMIOS_RX_PROC_EVENT |                        
   451d2:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   451d4:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   451d6:	4878 0002      	pea 2 <DOUBLE_FLOAT>                        <== NOT EXECUTED
   451da:	4878 0003      	pea 3 <DIVIDE>                              <== NOT EXECUTED
   451de:	4e93           	jsr %a3@                                    <== NOT EXECUTED
				     TERMIOS_RX_TERMINATE_EVENT),                                 
				    RTEMS_EVENT_ANY | RTEMS_WAIT,                                 
				    RTEMS_NO_TIMEOUT,                                             
				    &the_event);                                                  
		if ((the_event & TERMIOS_RX_TERMINATE_EVENT) != 0) {                
   451e0:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   451e4:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   451e6:	c0ae fffa      	andl %fp@(-6),%d0                           <== NOT EXECUTED
   451ea:	663e           	bnes 4522a <rtems_termios_rxdaemon+0x7e>    <== NOT EXECUTED
		}                                                                   
		else {                                                              
			/*                                                                 
			 * do something                                                    
			 */                                                                
			c = tty->device.pollRead(tty->minor);                              
   451ec:	2f2a 0010      	movel %a2@(16),%sp@-                        <== NOT EXECUTED
   451f0:	206a 00a0      	moveal %a2@(160),%a0                        <== NOT EXECUTED
   451f4:	4e90           	jsr %a0@                                    <== NOT EXECUTED
			if (c != EOF) {                                                    
   451f6:	588f           	addql #4,%sp                                <== NOT EXECUTED
   451f8:	72ff           	moveq #-1,%d1                               <== NOT EXECUTED
   451fa:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   451fc:	67d4           	beqs 451d2 <rtems_termios_rxdaemon+0x26>    <== NOT EXECUTED
				/*                                                                
				 * pollRead did call enqueue on its own                           
				 */                                                               
				c_buf = c;                                                        
				rtems_termios_enqueue_raw_characters (                            
   451fe:	4878 0001      	pea 1 <ADD>                                 <== NOT EXECUTED
			c = tty->device.pollRead(tty->minor);                              
			if (c != EOF) {                                                    
				/*                                                                
				 * pollRead did call enqueue on its own                           
				 */                                                               
				c_buf = c;                                                        
   45202:	1d40 ffff      	moveb %d0,%fp@(-1)                          <== NOT EXECUTED
				rtems_termios_enqueue_raw_characters (                            
   45206:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   45208:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4520a:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   4520c:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
	char c_buf;                                                          
	while (1) {                                                          
		/*                                                                  
		 * wait for rtems event                                             
		 */                                                                 
		rtems_event_receive((TERMIOS_RX_PROC_EVENT |                        
   45210:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   45212:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   45214:	4878 0002      	pea 2 <DOUBLE_FLOAT>                        <== NOT EXECUTED
   45218:	4878 0003      	pea 3 <DIVIDE>                              <== NOT EXECUTED
   4521c:	4e93           	jsr %a3@                                    <== NOT EXECUTED
				     TERMIOS_RX_TERMINATE_EVENT),                                 
				    RTEMS_EVENT_ANY | RTEMS_WAIT,                                 
				    RTEMS_NO_TIMEOUT,                                             
				    &the_event);                                                  
		if ((the_event & TERMIOS_RX_TERMINATE_EVENT) != 0) {                
   4521e:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   45222:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   45224:	c0ae fffa      	andl %fp@(-6),%d0                           <== NOT EXECUTED
   45228:	67c2           	beqs 451ec <rtems_termios_rxdaemon+0x40>    <== NOT EXECUTED
			tty->rxTaskId = 0;                                                 
   4522a:	42aa 00c4      	clrl %a2@(196)                              <== NOT EXECUTED
			rtems_task_delete(RTEMS_SELF);                                     
   4522e:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   45230:	4e95           	jsr %a5@                                    <== NOT EXECUTED
   45232:	588f           	addql #4,%sp                                <== NOT EXECUTED
   45234:	609c           	bras 451d2 <rtems_termios_rxdaemon+0x26>    <== NOT EXECUTED
	...                                                                  
                                                                      
00043560 <rtems_termios_rxirq_occured>:                               
 * signal receive interrupt to rx daemon                              
 * NOTE: This routine runs in the context of the                      
 *       device receive interrupt handler.                            
 */                                                                   
void rtems_termios_rxirq_occured(struct rtems_termios_tty *tty)       
{                                                                     
   43560:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   43564:	206e 0008      	moveal %fp@(8),%a0                          <== NOT EXECUTED
	/*                                                                   
	 * send event to rx daemon task                                      
	 */                                                                  
	rtems_event_send(tty->rxTaskId,TERMIOS_RX_PROC_EVENT);               
   43568:	4878 0002      	pea 2 <DOUBLE_FLOAT>                        <== NOT EXECUTED
   4356c:	2f28 00c4      	movel %a0@(196),%sp@-                       <== NOT EXECUTED
   43570:	4eb9 0004 5814 	jsr 45814 <rtems_event_send>                <== NOT EXECUTED
   43576:	508f           	addql #8,%sp                                <== NOT EXECUTED
}                                                                     
   43578:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0004512a <rtems_termios_txdaemon>:                                    
                                                                      
/*                                                                    
 * this task actually processes any transmit events                   
 */                                                                   
static rtems_task rtems_termios_txdaemon(rtems_task_argument argument)
{                                                                     
   4512a:	4e56 ffe8      	linkw %fp,#-24                              <== NOT EXECUTED
   4512e:	48d7 3c04      	moveml %d2/%a2-%a5,%sp@                     <== NOT EXECUTED
   45132:	240e           	movel %fp,%d2                               <== NOT EXECUTED
   45134:	5982           	subql #4,%d2                                <== NOT EXECUTED
   45136:	47f9 0004 566c 	lea 4566c <rtems_event_receive>,%a3         <== NOT EXECUTED
   4513c:	4bf9 0004 606c 	lea 4606c <rtems_task_delete>,%a5           <== NOT EXECUTED
   45142:	49f9 0004 357c 	lea 4357c <rtems_termios_refill_transmitter>,%a4<== NOT EXECUTED
   45148:	246e 0008      	moveal %fp@(8),%a2                          <== NOT EXECUTED
                                                                      
	while (1) {                                                          
		/*                                                                  
		 * wait for rtems event                                             
		 */                                                                 
		rtems_event_receive((TERMIOS_TX_START_EVENT |                       
   4514c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4514e:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   45150:	4878 0002      	pea 2 <DOUBLE_FLOAT>                        <== NOT EXECUTED
   45154:	4878 0003      	pea 3 <DIVIDE>                              <== NOT EXECUTED
   45158:	4e93           	jsr %a3@                                    <== NOT EXECUTED
				     TERMIOS_TX_TERMINATE_EVENT),                                 
				    RTEMS_EVENT_ANY | RTEMS_WAIT,                                 
				    RTEMS_NO_TIMEOUT,                                             
				    &the_event);                                                  
		if ((the_event & TERMIOS_TX_TERMINATE_EVENT) != 0) {                
   4515a:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   4515e:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   45160:	c0ae fffc      	andl %fp@(-4),%d0                           <== NOT EXECUTED
   45164:	663a           	bnes 451a0 <rtems_termios_txdaemon+0x76>    <== NOT EXECUTED
		}                                                                   
		else {                                                              
			/*                                                                 
			 * call any line discipline start function                         
			 */                                                                
			if (rtems_termios_linesw[tty->t_line].l_start != NULL) {           
   45166:	202a 00cc      	movel %a2@(204),%d0                         <== NOT EXECUTED
   4516a:	eb88           	lsll #5,%d0                                 <== NOT EXECUTED
   4516c:	0680 0005 e628 	addil #386600,%d0                           <== NOT EXECUTED
   45172:	2240           	moveal %d0,%a1                              <== NOT EXECUTED
   45174:	2051           	moveal %a1@,%a0                             <== NOT EXECUTED
   45176:	4a88           	tstl %a0                                    <== NOT EXECUTED
   45178:	6706           	beqs 45180 <rtems_termios_txdaemon+0x56>    <== NOT EXECUTED
				rtems_termios_linesw[tty->t_line].l_start(tty);                   
   4517a:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4517c:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4517e:	588f           	addql #4,%sp                                <== NOT EXECUTED
			}                                                                  
			/*                                                                 
			 * try to push further characters to device                        
			 */                                                                
			rtems_termios_refill_transmitter(tty);                             
   45180:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   45182:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   45184:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
	while (1) {                                                          
		/*                                                                  
		 * wait for rtems event                                             
		 */                                                                 
		rtems_event_receive((TERMIOS_TX_START_EVENT |                       
   45186:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   45188:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   4518a:	4878 0002      	pea 2 <DOUBLE_FLOAT>                        <== NOT EXECUTED
   4518e:	4878 0003      	pea 3 <DIVIDE>                              <== NOT EXECUTED
   45192:	4e93           	jsr %a3@                                    <== NOT EXECUTED
				     TERMIOS_TX_TERMINATE_EVENT),                                 
				    RTEMS_EVENT_ANY | RTEMS_WAIT,                                 
				    RTEMS_NO_TIMEOUT,                                             
				    &the_event);                                                  
		if ((the_event & TERMIOS_TX_TERMINATE_EVENT) != 0) {                
   45194:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   45198:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   4519a:	c0ae fffc      	andl %fp@(-4),%d0                           <== NOT EXECUTED
   4519e:	67c6           	beqs 45166 <rtems_termios_txdaemon+0x3c>    <== NOT EXECUTED
			tty->txTaskId = 0;                                                 
   451a0:	42aa 00c8      	clrl %a2@(200)                              <== NOT EXECUTED
			rtems_task_delete(RTEMS_SELF);                                     
   451a4:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   451a6:	4e95           	jsr %a5@                                    <== NOT EXECUTED
   451a8:	588f           	addql #4,%sp                                <== NOT EXECUTED
   451aa:	60a0           	bras 4514c <rtems_termios_txdaemon+0x22>    <== NOT EXECUTED
                                                                      
000442d0 <rtems_termios_write>:                                       
	rtems_termios_puts (&c, 1, tty);                                     
}                                                                     
                                                                      
rtems_status_code                                                     
rtems_termios_write (void *arg)                                       
{                                                                     
   442d0:	4e56 ffe4      	linkw %fp,#-28                              
   442d4:	48d7 3c1c      	moveml %d2-%d4/%a2-%a5,%sp@                 
   442d8:	266e 0008      	moveal %fp@(8),%a3                          
	rtems_libio_rw_args_t *args = arg;                                   
	struct rtems_termios_tty *tty = args->iop->data1;                    
   442dc:	2053           	moveal %a3@,%a0                             
   442de:	2468 0034      	moveal %a0@(52),%a2                         
	rtems_status_code sc;                                                
                                                                      
	sc = rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
   442e2:	42a7           	clrl %sp@-                                  
   442e4:	42a7           	clrl %sp@-                                  
   442e6:	2f2a 0018      	movel %a2@(24),%sp@-                        
   442ea:	4eb9 0004 5d2c 	jsr 45d2c <rtems_semaphore_obtain>          
	if (sc != RTEMS_SUCCESSFUL)                                          
   442f0:	4fef 000c      	lea %sp@(12),%sp                            
{                                                                     
	rtems_libio_rw_args_t *args = arg;                                   
	struct rtems_termios_tty *tty = args->iop->data1;                    
	rtems_status_code sc;                                                
                                                                      
	sc = rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
   442f4:	2400           	movel %d0,%d2                               
	if (sc != RTEMS_SUCCESSFUL)                                          
   442f6:	662a           	bnes 44322 <rtems_termios_write+0x52>       
		return sc;                                                          
	if (rtems_termios_linesw[tty->t_line].l_write != NULL) {             
   442f8:	202a 00cc      	movel %a2@(204),%d0                         
   442fc:	eb88           	lsll #5,%d0                                 
   442fe:	0680 0005 e620 	addil #386592,%d0                           
   44304:	2240           	moveal %d0,%a1                              
   44306:	2051           	moveal %a1@,%a0                             
   44308:	4a88           	tstl %a0                                    
   4430a:	6722           	beqs 4432e <rtems_termios_write+0x5e>       
		sc = rtems_termios_linesw[tty->t_line].l_write(tty,args);           
   4430c:	2f0b           	movel %a3,%sp@-                             <== NOT EXECUTED
   4430e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   44310:	4e90           	jsr %a0@                                    <== NOT EXECUTED
		rtems_semaphore_release (tty->osem);                                
   44312:	2f2a 0018      	movel %a2@(24),%sp@-                        <== NOT EXECUTED
                                                                      
	sc = rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);
	if (sc != RTEMS_SUCCESSFUL)                                          
		return sc;                                                          
	if (rtems_termios_linesw[tty->t_line].l_write != NULL) {             
		sc = rtems_termios_linesw[tty->t_line].l_write(tty,args);           
   44316:	2400           	movel %d0,%d2                               <== NOT EXECUTED
		rtems_semaphore_release (tty->osem);                                
   44318:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
		return sc;                                                          
   4431e:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
		rtems_termios_puts (args->buffer, args->count, tty);                
		args->bytes_moved = args->count;                                    
	}                                                                    
	rtems_semaphore_release (tty->osem);                                 
	return sc;                                                           
}                                                                     
   44322:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   44324:	4cee 3c1c ffe4 	moveml %fp@(-28),%d2-%d4/%a2-%a5            <== NOT EXECUTED
   4432a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4432c:	4e75           	rts                                         <== NOT EXECUTED
	if (rtems_termios_linesw[tty->t_line].l_write != NULL) {             
		sc = rtems_termios_linesw[tty->t_line].l_write(tty,args);           
		rtems_semaphore_release (tty->osem);                                
		return sc;                                                          
	}                                                                    
	if (tty->termios.c_oflag & OPOST) {                                  
   4432e:	7001           	moveq #1,%d0                                
   44330:	c0aa 0034      	andl %a2@(52),%d0                           
   44334:	6744           	beqs 4437a <rtems_termios_write+0xaa>       
		uint32_t   count = args->count;                                     
   44336:	282b 0010      	movel %a3@(16),%d4                          
		char      *buffer = args->buffer;                                   
   4433a:	286b 000c      	moveal %a3@(12),%a4                         
		while (count--)                                                     
   4433e:	6762           	beqs 443a2 <rtems_termios_write+0xd2>       
   44340:	4283           	clrl %d3                                    
   44342:	4bfa f8a8      	lea %pc@(43bec <oproc>),%a5                 
			oproc (*buffer++, tty);                                            
   44346:	2f0a           	movel %a2,%sp@-                             
   44348:	4280           	clrl %d0                                    
   4434a:	1034 3800      	moveb %a4@(00000000,%d3:l),%d0              
   4434e:	5283           	addql #1,%d3                                
   44350:	2f00           	movel %d0,%sp@-                             
   44352:	4e95           	jsr %a5@                                    
		return sc;                                                          
	}                                                                    
	if (tty->termios.c_oflag & OPOST) {                                  
		uint32_t   count = args->count;                                     
		char      *buffer = args->buffer;                                   
		while (count--)                                                     
   44354:	508f           	addql #8,%sp                                
   44356:	b883           	cmpl %d3,%d4                                
   44358:	66ec           	bnes 44346 <rtems_termios_write+0x76>       
   4435a:	202b 0010      	movel %a3@(16),%d0                          
			oproc (*buffer++, tty);                                            
		args->bytes_moved = args->count;                                    
   4435e:	2740 0018      	movel %d0,%a3@(24)                          
	}                                                                    
	else {                                                               
		rtems_termios_puts (args->buffer, args->count, tty);                
		args->bytes_moved = args->count;                                    
	}                                                                    
	rtems_semaphore_release (tty->osem);                                 
   44362:	2f2a 0018      	movel %a2@(24),%sp@-                        
   44366:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         
	return sc;                                                           
   4436c:	588f           	addql #4,%sp                                
}                                                                     
   4436e:	2002           	movel %d2,%d0                               
   44370:	4cee 3c1c ffe4 	moveml %fp@(-28),%d2-%d4/%a2-%a5            
   44376:	4e5e           	unlk %fp                                    
   44378:	4e75           	rts                                         
		while (count--)                                                     
			oproc (*buffer++, tty);                                            
		args->bytes_moved = args->count;                                    
	}                                                                    
	else {                                                               
		rtems_termios_puts (args->buffer, args->count, tty);                
   4437a:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4437c:	2f2b 0010      	movel %a3@(16),%sp@-                        <== NOT EXECUTED
   44380:	2f2b 000c      	movel %a3@(12),%sp@-                        <== NOT EXECUTED
   44384:	4eb9 0004 3ac4 	jsr 43ac4 <rtems_termios_puts>              <== NOT EXECUTED
		args->bytes_moved = args->count;                                    
   4438a:	276b 0010 0018 	movel %a3@(16),%a3@(24)                     <== NOT EXECUTED
   44390:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
	}                                                                    
	rtems_semaphore_release (tty->osem);                                 
   44394:	2f2a 0018      	movel %a2@(24),%sp@-                        <== NOT EXECUTED
   44398:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
	return sc;                                                           
   4439e:	588f           	addql #4,%sp                                <== NOT EXECUTED
   443a0:	60cc           	bras 4436e <rtems_termios_write+0x9e>       <== NOT EXECUTED
		return sc;                                                          
	}                                                                    
	if (tty->termios.c_oflag & OPOST) {                                  
		uint32_t   count = args->count;                                     
		char      *buffer = args->buffer;                                   
		while (count--)                                                     
   443a2:	4280           	clrl %d0                                    <== NOT EXECUTED
			oproc (*buffer++, tty);                                            
		args->bytes_moved = args->count;                                    
   443a4:	2740 0018      	movel %d0,%a3@(24)                          <== NOT EXECUTED
   443a8:	60b8           	bras 44362 <rtems_termios_write+0x92>       <== NOT EXECUTED
                                                                      
00058f30 <rtems_timer_reset>:                                         
 */                                                                   
                                                                      
rtems_status_code rtems_timer_reset(                                  
  rtems_id id                                                         
)                                                                     
{                                                                     
   58f30:	4e56 fff0      	linkw %fp,#-16                              
   58f34:	48d7 0c04      	moveml %d2/%a2-%a3,%sp@                     
   58f38:	486e fffc      	pea %fp@(-4)                                
   58f3c:	2f2e 0008      	movel %fp@(8),%sp@-                         
   58f40:	4879 0007 f060 	pea 7f060 <_Timer_Information>              
   58f46:	4eb9 0005 b9a4 	jsr 5b9a4 <_Objects_Get>                    
  Timer_Control     *the_timer;                                       
  Objects_Locations  location;                                        
  rtems_status_code  status = RTEMS_SUCCESSFUL;                       
                                                                      
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
   58f4c:	4fef 000c      	lea %sp@(12),%sp                            
   58f50:	2440           	moveal %d0,%a2                              
   58f52:	4aae fffc      	tstl %fp@(-4)                               
   58f56:	670e           	beqs 58f66 <rtems_timer_reset+0x36>         
   58f58:	7404           	moveq #4,%d2                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   58f5a:	2002           	movel %d2,%d0                               
   58f5c:	4cee 0c04 fff0 	moveml %fp@(-16),%d2/%a2-%a3                
   58f62:	4e5e           	unlk %fp                                    
   58f64:	4e75           	rts                                         
                                                                      
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( the_timer->the_class == TIMER_INTERVAL ) {                 
   58f66:	202a 0038      	movel %a2@(56),%d0                          
   58f6a:	671a           	beqs 58f86 <rtems_timer_reset+0x56>         
        _Watchdog_Remove( &the_timer->Ticker );                       
        _Watchdog_Insert( &_Watchdog_Ticks_chain, &the_timer->Ticker );
      } else if ( the_timer->the_class == TIMER_INTERVAL_ON_TASK ) {  
   58f6c:	7201           	moveq #1,%d1                                
   58f6e:	b280           	cmpl %d0,%d1                                
   58f70:	673c           	beqs 58fae <rtems_timer_reset+0x7e>         
   58f72:	740b           	moveq #11,%d2                               
         *  TIMER_TIME_OF_DAY, or TIMER_TIME_OF_DAY_ON_TASK).  We     
         *  can only reset active interval timers.                    
         */                                                           
        status = RTEMS_NOT_DEFINED;                                   
      }                                                               
      _Thread_Enable_dispatch();                                      
   58f74:	4eb9 0005 c2c0 	jsr 5c2c0 <_Thread_Enable_dispatch>         
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   58f7a:	2002           	movel %d2,%d0                               
   58f7c:	4cee 0c04 fff0 	moveml %fp@(-16),%d2/%a2-%a3                
   58f82:	4e5e           	unlk %fp                                    
   58f84:	4e75           	rts                                         
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( the_timer->the_class == TIMER_INTERVAL ) {                 
        _Watchdog_Remove( &the_timer->Ticker );                       
   58f86:	45ea 0010      	lea %a2@(16),%a2                            
        _Watchdog_Insert( &_Watchdog_Ticks_chain, &the_timer->Ticker );
   58f8a:	4282           	clrl %d2                                    
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
                                                                      
    case OBJECTS_LOCAL:                                               
      if ( the_timer->the_class == TIMER_INTERVAL ) {                 
        _Watchdog_Remove( &the_timer->Ticker );                       
   58f8c:	2f0a           	movel %a2,%sp@-                             
   58f8e:	4eb9 0005 d8e4 	jsr 5d8e4 <_Watchdog_Remove>                
        _Watchdog_Insert( &_Watchdog_Ticks_chain, &the_timer->Ticker );
   58f94:	2f0a           	movel %a2,%sp@-                             
   58f96:	4879 0007 e8a4 	pea 7e8a4 <_Watchdog_Ticks_chain>           
   58f9c:	4eb9 0005 d79c 	jsr 5d79c <_Watchdog_Insert>                
   58fa2:	4fef 000c      	lea %sp@(12),%sp                            
         *  TIMER_TIME_OF_DAY, or TIMER_TIME_OF_DAY_ON_TASK).  We     
         *  can only reset active interval timers.                    
         */                                                           
        status = RTEMS_NOT_DEFINED;                                   
      }                                                               
      _Thread_Enable_dispatch();                                      
   58fa6:	4eb9 0005 c2c0 	jsr 5c2c0 <_Thread_Enable_dispatch>         
   58fac:	60cc           	bras 58f7a <rtems_timer_reset+0x4a>         
          if ( !timer_server ) {                                      
            _Thread_Enable_dispatch();                                
            return RTEMS_INCORRECT_STATE;                             
          }                                                           
        #endif                                                        
        _Watchdog_Remove( &the_timer->Ticker );                       
   58fae:	486a 0010      	pea %a2@(16)                                
        (*timer_server->schedule_operation)( timer_server, the_timer );
   58fb2:	4282           	clrl %d2                                    
    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;           
   58fb4:	2679 0007 f09a 	moveal 7f09a <_Timer_server>,%a3            
          if ( !timer_server ) {                                      
            _Thread_Enable_dispatch();                                
            return RTEMS_INCORRECT_STATE;                             
          }                                                           
        #endif                                                        
        _Watchdog_Remove( &the_timer->Ticker );                       
   58fba:	4eb9 0005 d8e4 	jsr 5d8e4 <_Watchdog_Remove>                
        (*timer_server->schedule_operation)( timer_server, the_timer );
   58fc0:	2f0a           	movel %a2,%sp@-                             
   58fc2:	2f0b           	movel %a3,%sp@-                             
   58fc4:	206b 0004      	moveal %a3@(4),%a0                          
   58fc8:	4e90           	jsr %a0@                                    
   58fca:	4fef 000c      	lea %sp@(12),%sp                            
         *  TIMER_TIME_OF_DAY, or TIMER_TIME_OF_DAY_ON_TASK).  We     
         *  can only reset active interval timers.                    
         */                                                           
        status = RTEMS_NOT_DEFINED;                                   
      }                                                               
      _Thread_Enable_dispatch();                                      
   58fce:	4eb9 0005 c2c0 	jsr 5c2c0 <_Thread_Enable_dispatch>         
   58fd4:	60a4           	bras 58f7a <rtems_timer_reset+0x4a>         
	...                                                                  
                                                                      
000590c0 <rtems_timer_server_fire_when>:                              
  rtems_id                           id,                              
  rtems_time_of_day                  *wall_time,                      
  rtems_timer_service_routine_entry  routine,                         
  void                              *user_data                        
)                                                                     
{                                                                     
   590c0:	4e56 ffec      	linkw %fp,#-20                              
   590c4:	48d7 0c0c      	moveml %d2-%d3/%a2-%a3,%sp@                 
   590c8:	242e 000c      	movel %fp@(12),%d2                          
   590cc:	262e 0010      	movel %fp@(16),%d3                          
  Timer_Control        *the_timer;                                    
  Objects_Locations     location;                                     
  rtems_interval        seconds;                                      
  Timer_server_Control *timer_server = _Timer_server;                 
   590d0:	2479 0007 f09a 	moveal 7f09a <_Timer_server>,%a2            
                                                                      
  if ( !timer_server )                                                
   590d6:	4a8a           	tstl %a2                                    
   590d8:	6700 00c8      	beqw 591a2 <rtems_timer_server_fire_when+0xe2>
    return RTEMS_INCORRECT_STATE;                                     
                                                                      
  if ( !_TOD_Is_set )                                                 
   590dc:	4a39 0007 e7e0 	tstb 7e7e0 <_TOD_Is_set>                    
   590e2:	6700 00a6      	beqw 5918a <rtems_timer_server_fire_when+0xca>
    return RTEMS_NOT_DEFINED;                                         
                                                                      
  if ( !routine )                                                     
   590e6:	4a83           	tstl %d3                                    
   590e8:	6700 00ac      	beqw 59196 <rtems_timer_server_fire_when+0xd6>
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !_TOD_Validate( wall_time ) )                                  
   590ec:	2f02           	movel %d2,%sp@-                             
   590ee:	4eb9 0005 5d94 	jsr 55d94 <_TOD_Validate>                   
   590f4:	588f           	addql #4,%sp                                
   590f6:	4a00           	tstb %d0                                    
   590f8:	660c           	bnes 59106 <rtems_timer_server_fire_when+0x46>
      the_timer->Ticker.initial = seconds - _TOD_Seconds_since_epoch();
                                                                      
      (*timer_server->schedule_operation)( timer_server, the_timer ); 
                                                                      
      _Thread_Enable_dispatch();                                      
      return RTEMS_SUCCESSFUL;                                        
   590fa:	7014           	moveq #20,%d0                               
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   590fc:	4cee 0c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a3            
   59102:	4e5e           	unlk %fp                                    
   59104:	4e75           	rts                                         
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !_TOD_Validate( wall_time ) )                                  
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  seconds = _TOD_To_seconds( wall_time );                             
   59106:	2f02           	movel %d2,%sp@-                             
   59108:	4eb9 0005 5c84 	jsr 55c84 <_TOD_To_seconds>                 
  if ( seconds <= _TOD_Seconds_since_epoch() )                        
   5910e:	588f           	addql #4,%sp                                
    return RTEMS_INVALID_ADDRESS;                                     
                                                                      
  if ( !_TOD_Validate( wall_time ) )                                  
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  seconds = _TOD_To_seconds( wall_time );                             
   59110:	2400           	movel %d0,%d2                               
  if ( seconds <= _TOD_Seconds_since_epoch() )                        
   59112:	b0b9 0007 e85e 	cmpl 7e85e <_TOD_Now>,%d0                   
   59118:	63e0           	blss 590fa <rtems_timer_server_fire_when+0x3a>
   5911a:	486e fffc      	pea %fp@(-4)                                
   5911e:	2f2e 0008      	movel %fp@(8),%sp@-                         
   59122:	4879 0007 f060 	pea 7f060 <_Timer_Information>              
   59128:	4eb9 0005 b9a4 	jsr 5b9a4 <_Objects_Get>                    
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
   5912e:	4fef 000c      	lea %sp@(12),%sp                            
   59132:	2640           	moveal %d0,%a3                              
   59134:	4aae fffc      	tstl %fp@(-4)                               
   59138:	6674           	bnes 591ae <rtems_timer_server_fire_when+0xee>
                                                                      
    case OBJECTS_LOCAL:                                               
      (void) _Watchdog_Remove( &the_timer->Ticker );                  
   5913a:	486b 0010      	pea %a3@(16)                                
   5913e:	4eb9 0005 d8e4 	jsr 5d8e4 <_Watchdog_Remove>                
  the_watchdog->routine   = routine;                                  
  the_watchdog->id        = id;                                       
   59144:	202e 0008      	movel %fp@(8),%d0                           
   59148:	2740 0030      	movel %d0,%a3@(48)                          
      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();
   5914c:	94b9 0007 e85e 	subl 7e85e <_TOD_Now>,%d2                   
  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;               
   59152:	7003           	moveq #3,%d0                                
  the_watchdog->user_data = user_data;                                
   59154:	276e 0014 0034 	movel %fp@(20),%a3@(52)                     
   5915a:	2740 0038      	movel %d0,%a3@(56)                          
      _Watchdog_Initialize( &the_timer->Ticker, routine, id, user_data );
      the_timer->Ticker.initial = seconds - _TOD_Seconds_since_epoch();
   5915e:	2742 001c      	movel %d2,%a3@(28)                          
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
  the_watchdog->routine   = routine;                                  
   59162:	2743 002c      	movel %d3,%a3@(44)                          
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   59166:	42ab 0018      	clrl %a3@(24)                               
                                                                      
      (*timer_server->schedule_operation)( timer_server, the_timer ); 
   5916a:	2f0b           	movel %a3,%sp@-                             
   5916c:	2f0a           	movel %a2,%sp@-                             
   5916e:	206a 0004      	moveal %a2@(4),%a0                          
   59172:	4e90           	jsr %a0@                                    
                                                                      
      _Thread_Enable_dispatch();                                      
   59174:	4eb9 0005 c2c0 	jsr 5c2c0 <_Thread_Enable_dispatch>         
      return RTEMS_SUCCESSFUL;                                        
   5917a:	4fef 000c      	lea %sp@(12),%sp                            
      _Watchdog_Initialize( &the_timer->Ticker, routine, id, user_data );
      the_timer->Ticker.initial = seconds - _TOD_Seconds_since_epoch();
                                                                      
      (*timer_server->schedule_operation)( timer_server, the_timer ); 
                                                                      
      _Thread_Enable_dispatch();                                      
   5917e:	4280           	clrl %d0                                    
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   59180:	4cee 0c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a3            
   59186:	4e5e           	unlk %fp                                    
   59188:	4e75           	rts                                         
  Timer_server_Control *timer_server = _Timer_server;                 
                                                                      
  if ( !timer_server )                                                
    return RTEMS_INCORRECT_STATE;                                     
                                                                      
  if ( !_TOD_Is_set )                                                 
   5918a:	700b           	moveq #11,%d0                               <== NOT EXECUTED
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   5918c:	4cee 0c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a3            <== NOT EXECUTED
   59192:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   59194:	4e75           	rts                                         <== NOT EXECUTED
    return RTEMS_INCORRECT_STATE;                                     
                                                                      
  if ( !_TOD_Is_set )                                                 
    return RTEMS_NOT_DEFINED;                                         
                                                                      
  if ( !routine )                                                     
   59196:	7009           	moveq #9,%d0                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   59198:	4cee 0c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a3            
   5919e:	4e5e           	unlk %fp                                    
   591a0:	4e75           	rts                                         
  Timer_Control        *the_timer;                                    
  Objects_Locations     location;                                     
  rtems_interval        seconds;                                      
  Timer_server_Control *timer_server = _Timer_server;                 
                                                                      
  if ( !timer_server )                                                
   591a2:	700e           	moveq #14,%d0                               
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   591a4:	4cee 0c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a3            
   591aa:	4e5e           	unlk %fp                                    
   591ac:	4e75           	rts                                         
  seconds = _TOD_To_seconds( wall_time );                             
  if ( seconds <= _TOD_Seconds_since_epoch() )                        
    return RTEMS_INVALID_CLOCK;                                       
                                                                      
  the_timer = _Timer_Get( id, &location );                            
  switch ( location ) {                                               
   591ae:	7004           	moveq #4,%d0                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  return RTEMS_INVALID_ID;                                            
}                                                                     
   591b0:	4cee 0c0c ffec 	moveml %fp@(-20),%d2-%d3/%a2-%a3            
   591b6:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      
00042330 <rtems_verror>:                                              
static int rtems_verror(                                              
    rtems_error_code_t error_flag,                                    
    const char   *printf_format,                                      
    va_list      arglist                                              
)                                                                     
{                                                                     
   42330:	4e56 ffe0      	linkw %fp,#-32                              <== NOT EXECUTED
   42334:	48d7 1c7c      	moveml %d2-%d6/%a2-%a4,%sp@                 <== NOT EXECUTED
   42338:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
    int               local_errno = 0;                                
    int               chars_written = 0;                              
    rtems_status_code status;                                         
                                                                      
    if (error_flag & RTEMS_ERROR_PANIC)                               
   4233c:	2802           	movel %d2,%d4                               <== NOT EXECUTED
   4233e:	0284 2000 0000 	andil #536870912,%d4                        <== NOT EXECUTED
   42344:	6730           	beqs 42376 <rtems_verror+0x46>              <== NOT EXECUTED
    {                                                                 
        if (rtems_panic_in_progress++)                                
   42346:	2239 0005 ee14 	movel 5ee14 <rtems_panic_in_progress>,%d1   <== NOT EXECUTED
   4234c:	2001           	movel %d1,%d0                               <== NOT EXECUTED
   4234e:	5280           	addql #1,%d0                                <== NOT EXECUTED
   42350:	23c0 0005 ee14 	movel %d0,5ee14 <rtems_panic_in_progress>   <== NOT EXECUTED
   42356:	4a81           	tstl %d1                                    <== NOT EXECUTED
   42358:	6714           	beqs 4236e <rtems_verror+0x3e>              <== NOT EXECUTED
	rtems_fatal_error_occurred( 99 );                                    
      }                                                               
    }                                                                 
  #endif                                                              
                                                                      
  _Thread_Dispatch_disable_level += 1;                                
   4235a:	2039 0005 ef78 	movel 5ef78 <_Thread_Dispatch_disable_level>,%d0<== NOT EXECUTED
   42360:	5280           	addql #1,%d0                                <== NOT EXECUTED
   42362:	23c0 0005 ef78 	movel %d0,5ef78 <_Thread_Dispatch_disable_level><== NOT EXECUTED
  RTEMS_COMPILER_MEMORY_BARRIER();                                    
   42368:	2039 0005 ee14 	movel 5ee14 <rtems_panic_in_progress>,%d0   <== NOT EXECUTED
            _Thread_Disable_dispatch();       /* disable task switches */
                                                                      
        /* don't aggravate things */                                  
        if (rtems_panic_in_progress > 2)                              
   4236e:	7202           	moveq #2,%d1                                <== NOT EXECUTED
   42370:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   42372:	6d00 00de      	bltw 42452 <rtems_verror+0x122>             <== NOT EXECUTED
            return 0;                                                 
    }                                                                 
                                                                      
    (void) fflush(stdout);  	    /* in case stdout/stderr same */     
   42376:	2079 0005 d8f0 	moveal 5d8f0 <_impure_ptr>,%a0              <== NOT EXECUTED
   4237c:	45f9 0004 ef50 	lea 4ef50 <fflush>,%a2                      <== NOT EXECUTED
                                                                      
    status = error_flag & ~RTEMS_ERROR_MASK;                          
   42382:	2c02           	movel %d2,%d6                               <== NOT EXECUTED
        /* don't aggravate things */                                  
        if (rtems_panic_in_progress > 2)                              
            return 0;                                                 
    }                                                                 
                                                                      
    (void) fflush(stdout);  	    /* in case stdout/stderr same */     
   42384:	2f28 0008      	movel %a0@(8),%sp@-                         <== NOT EXECUTED
                                                                      
    status = error_flag & ~RTEMS_ERROR_MASK;                          
   42388:	0286 8fff ffff 	andil #-1879048193,%d6                      <== NOT EXECUTED
        /* don't aggravate things */                                  
        if (rtems_panic_in_progress > 2)                              
            return 0;                                                 
    }                                                                 
                                                                      
    (void) fflush(stdout);  	    /* in case stdout/stderr same */     
   4238e:	4e92           	jsr %a2@                                    <== NOT EXECUTED
                                                                      
    status = error_flag & ~RTEMS_ERROR_MASK;                          
    if (error_flag & RTEMS_ERROR_ERRNO)     /* include errno? */      
   42390:	588f           	addql #4,%sp                                <== NOT EXECUTED
   42392:	0802 001e      	btst #30,%d2                                <== NOT EXECUTED
   42396:	6600 0106      	bnew 4249e <rtems_verror+0x16e>             <== NOT EXECUTED
    #if defined(RTEMS_MULTIPROCESSING)                                
      if (_System_state_Is_multiprocessing)                           
        fprintf(stderr, "[%" PRIu32 "] ", _Configuration_MP_table->node);
    #endif                                                            
                                                                      
    chars_written += vfprintf(stderr, printf_format, arglist);        
   4239a:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
    }                                                                 
                                                                      
    (void) fflush(stdout);  	    /* in case stdout/stderr same */     
                                                                      
    status = error_flag & ~RTEMS_ERROR_MASK;                          
    if (error_flag & RTEMS_ERROR_ERRNO)     /* include errno? */      
   4239e:	4283           	clrl %d3                                    <== NOT EXECUTED
   423a0:	47f9 0004 f2dc 	lea 4f2dc <fprintf>,%a3                     <== NOT EXECUTED
    #if defined(RTEMS_MULTIPROCESSING)                                
      if (_System_state_Is_multiprocessing)                           
        fprintf(stderr, "[%" PRIu32 "] ", _Configuration_MP_table->node);
    #endif                                                            
                                                                      
    chars_written += vfprintf(stderr, printf_format, arglist);        
   423a6:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   423aa:	2079 0005 d8f0 	moveal 5d8f0 <_impure_ptr>,%a0              <== NOT EXECUTED
   423b0:	2f28 000c      	movel %a0@(12),%sp@-                        <== NOT EXECUTED
   423b4:	4eb9 0005 547c 	jsr 5547c <vfprintf>                        <== NOT EXECUTED
                                                                      
    if (status)                                                       
   423ba:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
    #if defined(RTEMS_MULTIPROCESSING)                                
      if (_System_state_Is_multiprocessing)                           
        fprintf(stderr, "[%" PRIu32 "] ", _Configuration_MP_table->node);
    #endif                                                            
                                                                      
    chars_written += vfprintf(stderr, printf_format, arglist);        
   423be:	2a00           	movel %d0,%d5                               <== NOT EXECUTED
                                                                      
    if (status)                                                       
   423c0:	4a86           	tstl %d6                                    <== NOT EXECUTED
   423c2:	6600 009a      	bnew 4245e <rtems_verror+0x12e>             <== NOT EXECUTED
        chars_written += fprintf(stderr, " (status: %s)", rtems_status_text(status));
                                                                      
    if (local_errno)                                                  
   423c6:	4a83           	tstl %d3                                    <== NOT EXECUTED
   423c8:	6732           	beqs 423fc <rtems_verror+0xcc>              <== NOT EXECUTED
    {                                                                 
      if ((local_errno > 0) && *strerror(local_errno))                
   423ca:	4a83           	tstl %d3                                    <== NOT EXECUTED
   423cc:	6f14           	bles 423e2 <rtems_verror+0xb2>              <== NOT EXECUTED
   423ce:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   423d0:	49f9 0004 fb90 	lea 4fb90 <strerror>,%a4                    <== NOT EXECUTED
   423d6:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   423d8:	588f           	addql #4,%sp                                <== NOT EXECUTED
   423da:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   423dc:	4a10           	tstb %a0@                                   <== NOT EXECUTED
   423de:	6600 00f4      	bnew 424d4 <rtems_verror+0x1a4>             <== NOT EXECUTED
        chars_written += fprintf(stderr, " (errno: %s)", strerror(local_errno));
      else                                                            
        chars_written += fprintf(stderr, " (unknown errno=%d)", local_errno);
   423e2:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   423e4:	4879 0005 c214 	pea 5c214 <IntUartPollCallbacks.6602+0x42>  <== NOT EXECUTED
   423ea:	2079 0005 d8f0 	moveal 5d8f0 <_impure_ptr>,%a0              <== NOT EXECUTED
   423f0:	2f28 000c      	movel %a0@(12),%sp@-                        <== NOT EXECUTED
   423f4:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   423f6:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   423fa:	da80           	addl %d0,%d5                                <== NOT EXECUTED
    }                                                                 
                                                                      
    chars_written += fprintf(stderr, "\n");                           
   423fc:	4879 0005 c9f8 	pea 5c9f8 <IMFS_link_handlers+0xb4>         <== NOT EXECUTED
   42402:	2079 0005 d8f0 	moveal 5d8f0 <_impure_ptr>,%a0              <== NOT EXECUTED
   42408:	2f28 000c      	movel %a0@(12),%sp@-                        <== NOT EXECUTED
                                                                      
    (void) fflush(stderr);                                            
                                                                      
    if (error_flag & (RTEMS_ERROR_PANIC | RTEMS_ERROR_ABORT))         
   4240c:	0282 3000 0000 	andil #805306368,%d2                        <== NOT EXECUTED
        chars_written += fprintf(stderr, " (errno: %s)", strerror(local_errno));
      else                                                            
        chars_written += fprintf(stderr, " (unknown errno=%d)", local_errno);
    }                                                                 
                                                                      
    chars_written += fprintf(stderr, "\n");                           
   42412:	4e93           	jsr %a3@                                    <== NOT EXECUTED
                                                                      
    (void) fflush(stderr);                                            
   42414:	2079 0005 d8f0 	moveal 5d8f0 <_impure_ptr>,%a0              <== NOT EXECUTED
        chars_written += fprintf(stderr, " (errno: %s)", strerror(local_errno));
      else                                                            
        chars_written += fprintf(stderr, " (unknown errno=%d)", local_errno);
    }                                                                 
                                                                      
    chars_written += fprintf(stderr, "\n");                           
   4241a:	2c00           	movel %d0,%d6                               <== NOT EXECUTED
                                                                      
    (void) fflush(stderr);                                            
   4241c:	2f28 000c      	movel %a0@(12),%sp@-                        <== NOT EXECUTED
   42420:	4e92           	jsr %a2@                                    <== NOT EXECUTED
                                                                      
    if (error_flag & (RTEMS_ERROR_PANIC | RTEMS_ERROR_ABORT))         
   42422:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   42426:	4a82           	tstl %d2                                    <== NOT EXECUTED
   42428:	671a           	beqs 42444 <rtems_verror+0x114>             <== NOT EXECUTED
    {                                                                 
        if (error_flag & RTEMS_ERROR_PANIC)                           
   4242a:	4a84           	tstl %d4                                    <== NOT EXECUTED
   4242c:	675c           	beqs 4248a <rtems_verror+0x15a>             <== NOT EXECUTED
        {                                                             
            rtems_error(0, "fatal error, exiting");                   
   4242e:	4879 0005 c228 	pea 5c228 <IntUartPollCallbacks.6602+0x56>  <== NOT EXECUTED
   42434:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   42436:	4eb9 0004 2544 	jsr 42544 <rtems_error>                     <== NOT EXECUTED
            _exit(local_errno);                                       
   4243c:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   4243e:	4eb9 0004 2e0a 	jsr 42e0a <_exit>                           <== NOT EXECUTED
        chars_written += fprintf(stderr, " (errno: %s)", strerror(local_errno));
      else                                                            
        chars_written += fprintf(stderr, " (unknown errno=%d)", local_errno);
    }                                                                 
                                                                      
    chars_written += fprintf(stderr, "\n");                           
   42444:	2006           	movel %d6,%d0                               <== NOT EXECUTED
   42446:	d085           	addl %d5,%d0                                <== NOT EXECUTED
            rtems_error(0, "fatal error, aborting");                  
            abort();                                                  
        }                                                             
    }                                                                 
    return chars_written;                                             
}                                                                     
   42448:	4cee 1c7c ffe0 	moveml %fp@(-32),%d2-%d6/%a2-%a4            <== NOT EXECUTED
   4244e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   42450:	4e75           	rts                                         <== NOT EXECUTED
            _exit(local_errno);                                       
        }                                                             
        else                                                          
        {                                                             
            rtems_error(0, "fatal error, aborting");                  
            abort();                                                  
   42452:	4280           	clrl %d0                                    <== NOT EXECUTED
        }                                                             
    }                                                                 
    return chars_written;                                             
}                                                                     
   42454:	4cee 1c7c ffe0 	moveml %fp@(-32),%d2-%d6/%a2-%a4            <== NOT EXECUTED
   4245a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4245c:	4e75           	rts                                         <== NOT EXECUTED
    #endif                                                            
                                                                      
    chars_written += vfprintf(stderr, printf_format, arglist);        
                                                                      
    if (status)                                                       
        chars_written += fprintf(stderr, " (status: %s)", rtems_status_text(status));
   4245e:	2f06           	movel %d6,%sp@-                             <== NOT EXECUTED
   42460:	4eb9 0004 2318 	jsr 42318 <rtems_status_text>               <== NOT EXECUTED
   42466:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   42468:	4879 0005 c1f9 	pea 5c1f9 <IntUartPollCallbacks.6602+0x27>  <== NOT EXECUTED
   4246e:	2079 0005 d8f0 	moveal 5d8f0 <_impure_ptr>,%a0              <== NOT EXECUTED
   42474:	2f28 000c      	movel %a0@(12),%sp@-                        <== NOT EXECUTED
   42478:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   4247a:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
   4247e:	da80           	addl %d0,%d5                                <== NOT EXECUTED
                                                                      
    if (local_errno)                                                  
   42480:	4a83           	tstl %d3                                    <== NOT EXECUTED
   42482:	6700 ff78      	beqw 423fc <rtems_verror+0xcc>              <== NOT EXECUTED
   42486:	6000 ff42      	braw 423ca <rtems_verror+0x9a>              <== NOT EXECUTED
            rtems_error(0, "fatal error, exiting");                   
            _exit(local_errno);                                       
        }                                                             
        else                                                          
        {                                                             
            rtems_error(0, "fatal error, aborting");                  
   4248a:	4879 0005 c23d 	pea 5c23d <IntUartPollCallbacks.6602+0x6b>  <== NOT EXECUTED
   42490:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   42492:	4eb9 0004 2544 	jsr 42544 <rtems_error>                     <== NOT EXECUTED
            abort();                                                  
   42498:	4eb9 0004 ebc4 	jsr 4ebc4 <abort>                           <== NOT EXECUTED
                                                                      
    (void) fflush(stdout);  	    /* in case stdout/stderr same */     
                                                                      
    status = error_flag & ~RTEMS_ERROR_MASK;                          
    if (error_flag & RTEMS_ERROR_ERRNO)     /* include errno? */      
        local_errno = errno;                                          
   4249e:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   424a4:	47f9 0004 f2dc 	lea 4f2dc <fprintf>,%a3                     <== NOT EXECUTED
   424aa:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   424ac:	2610           	movel %a0@,%d3                              <== NOT EXECUTED
    #if defined(RTEMS_MULTIPROCESSING)                                
      if (_System_state_Is_multiprocessing)                           
        fprintf(stderr, "[%" PRIu32 "] ", _Configuration_MP_table->node);
    #endif                                                            
                                                                      
    chars_written += vfprintf(stderr, printf_format, arglist);        
   424ae:	2f2e 0010      	movel %fp@(16),%sp@-                        <== NOT EXECUTED
   424b2:	2f2e 000c      	movel %fp@(12),%sp@-                        <== NOT EXECUTED
   424b6:	2079 0005 d8f0 	moveal 5d8f0 <_impure_ptr>,%a0              <== NOT EXECUTED
   424bc:	2f28 000c      	movel %a0@(12),%sp@-                        <== NOT EXECUTED
   424c0:	4eb9 0005 547c 	jsr 5547c <vfprintf>                        <== NOT EXECUTED
                                                                      
    if (status)                                                       
   424c6:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
    #if defined(RTEMS_MULTIPROCESSING)                                
      if (_System_state_Is_multiprocessing)                           
        fprintf(stderr, "[%" PRIu32 "] ", _Configuration_MP_table->node);
    #endif                                                            
                                                                      
    chars_written += vfprintf(stderr, printf_format, arglist);        
   424ca:	2a00           	movel %d0,%d5                               <== NOT EXECUTED
                                                                      
    if (status)                                                       
   424cc:	4a86           	tstl %d6                                    <== NOT EXECUTED
   424ce:	6700 fef6      	beqw 423c6 <rtems_verror+0x96>              <== NOT EXECUTED
   424d2:	608a           	bras 4245e <rtems_verror+0x12e>             <== NOT EXECUTED
        chars_written += fprintf(stderr, " (status: %s)", rtems_status_text(status));
                                                                      
    if (local_errno)                                                  
    {                                                                 
      if ((local_errno > 0) && *strerror(local_errno))                
        chars_written += fprintf(stderr, " (errno: %s)", strerror(local_errno));
   424d4:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
                                                                      
    chars_written += fprintf(stderr, "\n");                           
                                                                      
    (void) fflush(stderr);                                            
                                                                      
    if (error_flag & (RTEMS_ERROR_PANIC | RTEMS_ERROR_ABORT))         
   424d6:	0282 3000 0000 	andil #805306368,%d2                        <== NOT EXECUTED
        chars_written += fprintf(stderr, " (status: %s)", rtems_status_text(status));
                                                                      
    if (local_errno)                                                  
    {                                                                 
      if ((local_errno > 0) && *strerror(local_errno))                
        chars_written += fprintf(stderr, " (errno: %s)", strerror(local_errno));
   424dc:	4e94           	jsr %a4@                                    <== NOT EXECUTED
   424de:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   424e0:	4879 0005 c207 	pea 5c207 <IntUartPollCallbacks.6602+0x35>  <== NOT EXECUTED
   424e6:	2079 0005 d8f0 	moveal 5d8f0 <_impure_ptr>,%a0              <== NOT EXECUTED
   424ec:	2f28 000c      	movel %a0@(12),%sp@-                        <== NOT EXECUTED
   424f0:	4e93           	jsr %a3@                                    <== NOT EXECUTED
    if (status)                                                       
        chars_written += fprintf(stderr, " (status: %s)", rtems_status_text(status));
                                                                      
    if (local_errno)                                                  
    {                                                                 
      if ((local_errno > 0) && *strerror(local_errno))                
   424f2:	4fef 0010      	lea %sp@(16),%sp                            <== NOT EXECUTED
        chars_written += fprintf(stderr, " (errno: %s)", strerror(local_errno));
   424f6:	da80           	addl %d0,%d5                                <== NOT EXECUTED
      else                                                            
        chars_written += fprintf(stderr, " (unknown errno=%d)", local_errno);
    }                                                                 
                                                                      
    chars_written += fprintf(stderr, "\n");                           
   424f8:	4879 0005 c9f8 	pea 5c9f8 <IMFS_link_handlers+0xb4>         <== NOT EXECUTED
   424fe:	2079 0005 d8f0 	moveal 5d8f0 <_impure_ptr>,%a0              <== NOT EXECUTED
   42504:	2f28 000c      	movel %a0@(12),%sp@-                        <== NOT EXECUTED
   42508:	4e93           	jsr %a3@                                    <== NOT EXECUTED
                                                                      
    (void) fflush(stderr);                                            
   4250a:	2079 0005 d8f0 	moveal 5d8f0 <_impure_ptr>,%a0              <== NOT EXECUTED
        chars_written += fprintf(stderr, " (errno: %s)", strerror(local_errno));
      else                                                            
        chars_written += fprintf(stderr, " (unknown errno=%d)", local_errno);
    }                                                                 
                                                                      
    chars_written += fprintf(stderr, "\n");                           
   42510:	2c00           	movel %d0,%d6                               <== NOT EXECUTED
                                                                      
    (void) fflush(stderr);                                            
   42512:	2f28 000c      	movel %a0@(12),%sp@-                        <== NOT EXECUTED
   42516:	4e92           	jsr %a2@                                    <== NOT EXECUTED
                                                                      
    if (error_flag & (RTEMS_ERROR_PANIC | RTEMS_ERROR_ABORT))         
   42518:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   4251c:	4a82           	tstl %d2                                    <== NOT EXECUTED
   4251e:	6600 ff0a      	bnew 4242a <rtems_verror+0xfa>              <== NOT EXECUTED
   42522:	6000 ff20      	braw 42444 <rtems_verror+0x114>             <== NOT EXECUTED
                                                                      
0006735c <scanInt>:                                                   
/*                                                                    
 * Extract an integer value from the database                         
 */                                                                   
static int                                                            
scanInt(FILE *fp, int *val)                                           
{                                                                     
   6735c:	4e56 ffe4      	linkw %fp,#-28                              
   67360:	48d7 0c7c      	moveml %d2-%d6/%a2-%a3,%sp@                 
   67364:	246e 0008      	moveal %fp@(8),%a2                          
   67368:	4284           	clrl %d4                                    
   6736a:	263c 7fff ffff 	movel #2147483647,%d3                       
   67370:	4282           	clrl %d2                                    
  unsigned int limit = INT_MAX;                                       
  int sign = 0;                                                       
  int d;                                                              
                                                                      
  for (;;) {                                                          
    c = getc(fp);                                                     
   67372:	47f9 0008 5cf8 	lea 85cf8 <__srget_r>,%a3                   
   67378:	202a 0004      	movel %a2@(4),%d0                           
   6737c:	5380           	subql #1,%d0                                
   6737e:	2540 0004      	movel %d0,%a2@(4)                           
   67382:	6d62           	blts 673e6 <scanInt+0x8a>                   
   67384:	2052           	moveal %a2@,%a0                             
   67386:	4280           	clrl %d0                                    
   67388:	1010           	moveb %a0@,%d0                              
   6738a:	5288           	addql #1,%a0                                
    if (c == ':')                                                     
   6738c:	723a           	moveq #58,%d1                               
  unsigned int limit = INT_MAX;                                       
  int sign = 0;                                                       
  int d;                                                              
                                                                      
  for (;;) {                                                          
    c = getc(fp);                                                     
   6738e:	2488           	movel %a0,%a2@                              
    if (c == ':')                                                     
   67390:	b280           	cmpl %d0,%d1                                
   67392:	6764           	beqs 673f8 <scanInt+0x9c>                   
      break;                                                          
    if (sign == 0) {                                                  
   67394:	4a84           	tstl %d4                                    
   67396:	660a           	bnes 673a2 <scanInt+0x46>                   
      if (c == '-') {                                                 
   67398:	7c2d           	moveq #45,%d6                               
   6739a:	bc80           	cmpl %d0,%d6                                
   6739c:	6700 0084      	beqw 67422 <scanInt+0xc6>                   
        sign = -1;                                                    
        limit++;                                                      
        continue;                                                     
   673a0:	7801           	moveq #1,%d4                                
      }                                                               
      sign = 1;                                                       
    }                                                                 
    if (!isdigit(c))                                                  
   673a2:	2079 000a 2778 	moveal a2778 <__ctype_ptr__>,%a0            
   673a8:	1230 0801      	moveb %a0@(00000001,%d0:l),%d1              
   673ac:	49c1           	extbl %d1                                   
   673ae:	44c1           	movew %d1,%ccr                              
   673b0:	6664           	bnes 67416 <scanInt+0xba>                   
      return 0;                                                       
    d = c - '0';                                                      
    if ((i > (limit / 10))                                            
   673b2:	2203           	movel %d3,%d1                               
   673b4:	7c0a           	moveq #10,%d6                               
   673b6:	4c46 1005      	remul %d6,%d5,%d1                           
   673ba:	4c46 1001      	remul %d6,%d1,%d1                           
   673be:	b282           	cmpl %d2,%d1                                
   673c0:	6554           	bcss 67416 <scanInt+0xba>                   
      }                                                               
      sign = 1;                                                       
    }                                                                 
    if (!isdigit(c))                                                  
      return 0;                                                       
    d = c - '0';                                                      
   673c2:	0680 ffff ffd0 	addil #-48,%d0                              
    if ((i > (limit / 10))                                            
   673c8:	b282           	cmpl %d2,%d1                                
   673ca:	6746           	beqs 67412 <scanInt+0xb6>                   
     || ((i == (limit / 10)) && (d > (limit % 10))))                  
      return 0;                                                       
    i = i * 10 + d;                                                   
   673cc:	2202           	movel %d2,%d1                               
   673ce:	e789           	lsll #3,%d1                                 
   673d0:	2241           	moveal %d1,%a1                              
   673d2:	41f1 2a00      	lea %a1@(00000000,%d2:l:2),%a0              
   673d6:	2400           	movel %d0,%d2                               
  unsigned int limit = INT_MAX;                                       
  int sign = 0;                                                       
  int d;                                                              
                                                                      
  for (;;) {                                                          
    c = getc(fp);                                                     
   673d8:	202a 0004      	movel %a2@(4),%d0                           
   673dc:	5380           	subql #1,%d0                                
      return 0;                                                       
    d = c - '0';                                                      
    if ((i > (limit / 10))                                            
     || ((i == (limit / 10)) && (d > (limit % 10))))                  
      return 0;                                                       
    i = i * 10 + d;                                                   
   673de:	d488           	addl %a0,%d2                                
  unsigned int limit = INT_MAX;                                       
  int sign = 0;                                                       
  int d;                                                              
                                                                      
  for (;;) {                                                          
    c = getc(fp);                                                     
   673e0:	2540 0004      	movel %d0,%a2@(4)                           
   673e4:	6c9e           	bges 67384 <scanInt+0x28>                   
   673e6:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   673e8:	2f39 000a 2784 	movel a2784 <_impure_ptr>,%sp@-             <== NOT EXECUTED
   673ee:	4e93           	jsr %a3@                                    <== NOT EXECUTED
   673f0:	508f           	addql #8,%sp                                <== NOT EXECUTED
    if (c == ':')                                                     
   673f2:	723a           	moveq #58,%d1                               <== NOT EXECUTED
   673f4:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   673f6:	669c           	bnes 67394 <scanInt+0x38>                   <== NOT EXECUTED
    if ((i > (limit / 10))                                            
     || ((i == (limit / 10)) && (d > (limit % 10))))                  
      return 0;                                                       
    i = i * 10 + d;                                                   
  }                                                                   
  if (sign == 0)                                                      
   673f8:	4a84           	tstl %d4                                    
   673fa:	671a           	beqs 67416 <scanInt+0xba>                   
    return 0;                                                         
  *val = i * sign;                                                    
   673fc:	4c02 4800      	mulsl %d2,%d4                               
   67400:	7001           	moveq #1,%d0                                
   67402:	206e 000c      	moveal %fp@(12),%a0                         
   67406:	2084           	movel %d4,%a0@                              
  return 1;                                                           
}                                                                     
   67408:	4cee 0c7c ffe4 	moveml %fp@(-28),%d2-%d6/%a2-%a3            
   6740e:	4e5e           	unlk %fp                                    
   67410:	4e75           	rts                                         
      sign = 1;                                                       
    }                                                                 
    if (!isdigit(c))                                                  
      return 0;                                                       
    d = c - '0';                                                      
    if ((i > (limit / 10))                                            
   67412:	ba80           	cmpl %d0,%d5                                <== NOT EXECUTED
   67414:	64b6           	bccs 673cc <scanInt+0x70>                   <== NOT EXECUTED
    i = i * 10 + d;                                                   
  }                                                                   
  if (sign == 0)                                                      
    return 0;                                                         
  *val = i * sign;                                                    
  return 1;                                                           
   67416:	4280           	clrl %d0                                    <== NOT EXECUTED
}                                                                     
   67418:	4cee 0c7c ffe4 	moveml %fp@(-28),%d2-%d6/%a2-%a3            <== NOT EXECUTED
   6741e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   67420:	4e75           	rts                                         <== NOT EXECUTED
    if (c == ':')                                                     
      break;                                                          
    if (sign == 0) {                                                  
      if (c == '-') {                                                 
        sign = -1;                                                    
        limit++;                                                      
   67422:	5283           	addql #1,%d3                                <== NOT EXECUTED
   67424:	78ff           	moveq #-1,%d4                               <== NOT EXECUTED
        continue;                                                     
   67426:	6000 ff50      	braw 67378 <scanInt+0x1c>                   <== NOT EXECUTED
                                                                      
0006742a <scanString>:                                                
/*                                                                    
 * Extract a string value from the database                           
 */                                                                   
static int                                                            
scanString(FILE *fp, char **name, char **bufp, size_t *nleft, int nlFlag)
{                                                                     
   6742a:	4e56 ffec      	linkw %fp,#-20                              
  int c;                                                              
                                                                      
  *name = *bufp;                                                      
   6742e:	206e 000c      	moveal %fp@(12),%a0                         
/*                                                                    
 * Extract a string value from the database                           
 */                                                                   
static int                                                            
scanString(FILE *fp, char **name, char **bufp, size_t *nleft, int nlFlag)
{                                                                     
   67432:	48d7 3c04      	moveml %d2/%a2-%a5,%sp@                     
   67436:	246e 0008      	moveal %fp@(8),%a2                          
  int c;                                                              
                                                                      
  *name = *bufp;                                                      
  for (;;) {                                                          
    c = getc(fp);                                                     
   6743a:	4bf9 0008 5cf8 	lea 85cf8 <__srget_r>,%a5                   
   67440:	202a 0004      	movel %a2@(4),%d0                           
   67444:	5380           	subql #1,%d0                                
/*                                                                    
 * Extract a string value from the database                           
 */                                                                   
static int                                                            
scanString(FILE *fp, char **name, char **bufp, size_t *nleft, int nlFlag)
{                                                                     
   67446:	266e 0010      	moveal %fp@(16),%a3                         
   6744a:	242e 0018      	movel %fp@(24),%d2                          
   6744e:	286e 0014      	moveal %fp@(20),%a4                         
  int c;                                                              
                                                                      
  *name = *bufp;                                                      
   67452:	2093           	movel %a3@,%a0@                             
  for (;;) {                                                          
    c = getc(fp);                                                     
   67454:	2540 0004      	movel %d0,%a2@(4)                           
   67458:	6d36           	blts 67490 <scanString+0x66>                
   6745a:	2052           	moveal %a2@,%a0                             
   6745c:	4280           	clrl %d0                                    
   6745e:	1010           	moveb %a0@,%d0                              
   67460:	5288           	addql #1,%a0                                
    if (c == ':') {                                                   
   67462:	723a           	moveq #58,%d1                               
{                                                                     
  int c;                                                              
                                                                      
  *name = *bufp;                                                      
  for (;;) {                                                          
    c = getc(fp);                                                     
   67464:	2488           	movel %a0,%a2@                              
    if (c == ':') {                                                   
   67466:	b280           	cmpl %d0,%d1                                
   67468:	6738           	beqs 674a2 <scanString+0x78>                
        if (nlFlag)                                                   
            return 0;                                                 
        break;                                                        
    }                                                                 
    if (c == '\n') {                                                  
   6746a:	720a           	moveq #10,%d1                               
   6746c:	b280           	cmpl %d0,%d1                                
   6746e:	674a           	beqs 674ba <scanString+0x90>                
        if (!nlFlag)                                                  
            return 0;                                                 
        break;                                                        
    }                                                                 
    if (c == EOF)                                                     
   67470:	72ff           	moveq #-1,%d1                               
   67472:	b280           	cmpl %d0,%d1                                
   67474:	6748           	beqs 674be <scanString+0x94>                
      return 0;                                                       
    if (*nleft < 2)                                                   
   67476:	7201           	moveq #1,%d1                                
   67478:	b294           	cmpl %a4@,%d1                               
   6747a:	6442           	bccs 674be <scanString+0x94>                
      return 0;                                                       
    **bufp = c;                                                       
   6747c:	2053           	moveal %a3@,%a0                             
   6747e:	1080           	moveb %d0,%a0@                              
{                                                                     
  int c;                                                              
                                                                      
  *name = *bufp;                                                      
  for (;;) {                                                          
    c = getc(fp);                                                     
   67480:	202a 0004      	movel %a2@(4),%d0                           
   67484:	5380           	subql #1,%d0                                
    if (c == EOF)                                                     
      return 0;                                                       
    if (*nleft < 2)                                                   
      return 0;                                                       
    **bufp = c;                                                       
    ++(*bufp);                                                        
   67486:	5293           	addql #1,%a3@                               
    --(*nleft);                                                       
   67488:	5394           	subql #1,%a4@                               
{                                                                     
  int c;                                                              
                                                                      
  *name = *bufp;                                                      
  for (;;) {                                                          
    c = getc(fp);                                                     
   6748a:	2540 0004      	movel %d0,%a2@(4)                           
   6748e:	6cca           	bges 6745a <scanString+0x30>                
   67490:	2f0a           	movel %a2,%sp@-                             
   67492:	2f39 000a 2784 	movel a2784 <_impure_ptr>,%sp@-             
   67498:	4e95           	jsr %a5@                                    
   6749a:	508f           	addql #8,%sp                                
    if (c == ':') {                                                   
   6749c:	723a           	moveq #58,%d1                               
   6749e:	b280           	cmpl %d0,%d1                                
   674a0:	66c8           	bnes 6746a <scanString+0x40>                
        if (nlFlag)                                                   
   674a2:	4a82           	tstl %d2                                    
   674a4:	6618           	bnes 674be <scanString+0x94>                
      return 0;                                                       
    **bufp = c;                                                       
    ++(*bufp);                                                        
    --(*nleft);                                                       
  }                                                                   
  **bufp = '\0';                                                      
   674a6:	2053           	moveal %a3@,%a0                             
  ++(*bufp);                                                          
  --(*nleft);                                                         
   674a8:	7001           	moveq #1,%d0                                
      return 0;                                                       
    **bufp = c;                                                       
    ++(*bufp);                                                        
    --(*nleft);                                                       
  }                                                                   
  **bufp = '\0';                                                      
   674aa:	4210           	clrb %a0@                                   
  ++(*bufp);                                                          
   674ac:	5293           	addql #1,%a3@                               
  --(*nleft);                                                         
   674ae:	5394           	subql #1,%a4@                               
  return 1;                                                           
}                                                                     
   674b0:	4cee 3c04 ffec 	moveml %fp@(-20),%d2/%a2-%a5                
   674b6:	4e5e           	unlk %fp                                    
   674b8:	4e75           	rts                                         
        if (nlFlag)                                                   
            return 0;                                                 
        break;                                                        
    }                                                                 
    if (c == '\n') {                                                  
        if (!nlFlag)                                                  
   674ba:	4a82           	tstl %d2                                    
   674bc:	66e8           	bnes 674a6 <scanString+0x7c>                
    --(*nleft);                                                       
  }                                                                   
  **bufp = '\0';                                                      
  ++(*bufp);                                                          
  --(*nleft);                                                         
  return 1;                                                           
   674be:	4280           	clrl %d0                                    <== NOT EXECUTED
}                                                                     
   674c0:	4cee 3c04 ffec 	moveml %fp@(-20),%d2/%a2-%a5                <== NOT EXECUTED
   674c6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000674ca <scangr>:                                                    
  FILE *fp,                                                           
  struct group *grp,                                                  
  char *buffer,                                                       
  size_t bufsize                                                      
)                                                                     
{                                                                     
   674ca:	4e56 ffe4      	linkw %fp,#-28                              
   674ce:	48d7 0c1c      	moveml %d2-%d4/%a2-%a3,%sp@                 
  int grgid;                                                          
  char *grmem, *cp;                                                   
  int memcount;                                                       
                                                                      
  if (!scanString(fp, &grp->gr_name, &buffer, &bufsize, 0)            
   674d2:	42a7           	clrl %sp@-                                  
   674d4:	280e           	movel %fp,%d4                               
   674d6:	0684 0000 0014 	addil #20,%d4                               
   674dc:	260e           	movel %fp,%d3                               
   674de:	0683 0000 0010 	addil #16,%d3                               
   674e4:	47fa ff44      	lea %pc@(6742a <scanString>),%a3            
   674e8:	2f04           	movel %d4,%sp@-                             
   674ea:	2f03           	movel %d3,%sp@-                             
  FILE *fp,                                                           
  struct group *grp,                                                  
  char *buffer,                                                       
  size_t bufsize                                                      
)                                                                     
{                                                                     
   674ec:	246e 000c      	moveal %fp@(12),%a2                         
  int grgid;                                                          
  char *grmem, *cp;                                                   
  int memcount;                                                       
                                                                      
  if (!scanString(fp, &grp->gr_name, &buffer, &bufsize, 0)            
   674f0:	2f0a           	movel %a2,%sp@-                             
  FILE *fp,                                                           
  struct group *grp,                                                  
  char *buffer,                                                       
  size_t bufsize                                                      
)                                                                     
{                                                                     
   674f2:	242e 0008      	movel %fp@(8),%d2                           
  int grgid;                                                          
  char *grmem, *cp;                                                   
  int memcount;                                                       
                                                                      
  if (!scanString(fp, &grp->gr_name, &buffer, &bufsize, 0)            
   674f6:	2f02           	movel %d2,%sp@-                             
   674f8:	4e93           	jsr %a3@                                    
   674fa:	4fef 0014      	lea %sp@(20),%sp                            
   674fe:	4a80           	tstl %d0                                    
   67500:	660c           	bnes 6750e <scangr+0x44>                    
      *cp = '\0';                                                     
      grp->gr_mem[memcount++] = cp + 1;                               
    }                                                                 
  }                                                                   
  grp->gr_mem[memcount] = NULL;                                       
  return 1;                                                           
   67502:	4280           	clrl %d0                                    <== NOT EXECUTED
}                                                                     
   67504:	4cee 0c1c ffe4 	moveml %fp@(-28),%d2-%d4/%a2-%a3            <== NOT EXECUTED
   6750a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   6750c:	4e75           	rts                                         <== NOT EXECUTED
  int grgid;                                                          
  char *grmem, *cp;                                                   
  int memcount;                                                       
                                                                      
  if (!scanString(fp, &grp->gr_name, &buffer, &bufsize, 0)            
   || !scanString(fp, &grp->gr_passwd, &buffer, &bufsize, 0)          
   6750e:	42a7           	clrl %sp@-                                  
   67510:	2f04           	movel %d4,%sp@-                             
   67512:	2f03           	movel %d3,%sp@-                             
   67514:	486a 0004      	pea %a2@(4)                                 
   67518:	2f02           	movel %d2,%sp@-                             
   6751a:	4e93           	jsr %a3@                                    
{                                                                     
  int grgid;                                                          
  char *grmem, *cp;                                                   
  int memcount;                                                       
                                                                      
  if (!scanString(fp, &grp->gr_name, &buffer, &bufsize, 0)            
   6751c:	4fef 0014      	lea %sp@(20),%sp                            
   67520:	4a80           	tstl %d0                                    
   67522:	67de           	beqs 67502 <scangr+0x38>                    
   || !scanString(fp, &grp->gr_passwd, &buffer, &bufsize, 0)          
   || !scanInt(fp, &grgid)                                            
   67524:	486e fffc      	pea %fp@(-4)                                
   67528:	2f02           	movel %d2,%sp@-                             
   6752a:	4eba fe30      	jsr %pc@(6735c <scanInt>)                   
{                                                                     
  int grgid;                                                          
  char *grmem, *cp;                                                   
  int memcount;                                                       
                                                                      
  if (!scanString(fp, &grp->gr_name, &buffer, &bufsize, 0)            
   6752e:	508f           	addql #8,%sp                                
   67530:	4a80           	tstl %d0                                    
   67532:	67ce           	beqs 67502 <scangr+0x38>                    
   || !scanString(fp, &grp->gr_passwd, &buffer, &bufsize, 0)          
   || !scanInt(fp, &grgid)                                            
   || !scanString(fp, &grmem, &buffer, &bufsize, 1))                  
   67534:	4878 0001      	pea 1 <ADD>                                 
   67538:	2f04           	movel %d4,%sp@-                             
   6753a:	2f03           	movel %d3,%sp@-                             
   6753c:	486e fff8      	pea %fp@(-8)                                
   67540:	2f02           	movel %d2,%sp@-                             
   67542:	4e93           	jsr %a3@                                    
{                                                                     
  int grgid;                                                          
  char *grmem, *cp;                                                   
  int memcount;                                                       
                                                                      
  if (!scanString(fp, &grp->gr_name, &buffer, &bufsize, 0)            
   67544:	4fef 0014      	lea %sp@(20),%sp                            
   67548:	4a80           	tstl %d0                                    
   6754a:	67b6           	beqs 67502 <scangr+0x38>                    
  grp->gr_gid = grgid;                                                
                                                                      
  /*                                                                  
   * Determine number of members                                      
   */                                                                 
  for (cp = grmem, memcount = 1 ; *cp != 0 ; cp++) {                  
   6754c:	226e fff8      	moveal %fp@(-8),%a1                         
  if (!scanString(fp, &grp->gr_name, &buffer, &bufsize, 0)            
   || !scanString(fp, &grp->gr_passwd, &buffer, &bufsize, 0)          
   || !scanInt(fp, &grgid)                                            
   || !scanString(fp, &grmem, &buffer, &bufsize, 1))                  
    return 0;                                                         
  grp->gr_gid = grgid;                                                
   67550:	356e fffe 0008 	movew %fp@(-2),%a2@(8)                      
                                                                      
  /*                                                                  
   * Determine number of members                                      
   */                                                                 
  for (cp = grmem, memcount = 1 ; *cp != 0 ; cp++) {                  
   67556:	1011           	moveb %a1@,%d0                              
   67558:	677a           	beqs 675d4 <scangr+0x10a>                   
   6755a:	2049           	moveal %a1,%a0                              
   6755c:	7201           	moveq #1,%d1                                
   6755e:	5288           	addql #1,%a0                                
    if(*cp == ',')                                                    
   67560:	49c0           	extbl %d0                                   
   67562:	742c           	moveq #44,%d2                               
   67564:	b480           	cmpl %d0,%d2                                
   67566:	6756           	beqs 675be <scangr+0xf4>                    
  grp->gr_gid = grgid;                                                
                                                                      
  /*                                                                  
   * Determine number of members                                      
   */                                                                 
  for (cp = grmem, memcount = 1 ; *cp != 0 ; cp++) {                  
   67568:	1010           	moveb %a0@,%d0                              
   6756a:	66f2           	bnes 6755e <scangr+0x94>                    
   6756c:	e589           	lsll #2,%d1                                 
   6756e:	0681 0000 0013 	addil #19,%d1                               
  }                                                                   
                                                                      
  /*                                                                  
   * Hack to produce (hopefully) a suitably-aligned array of pointers 
   */                                                                 
  if (bufsize < (((memcount+1)*sizeof(char *)) + 15))                 
   67574:	b2ae 0014      	cmpl %fp@(20),%d1                           
   67578:	6288           	bhis 67502 <scangr+0x38>                    
    return 0;                                                         
  grp->gr_mem = (char **)(((uintptr_t)buffer + 15) & ~15);            
   6757a:	202e 0010      	movel %fp@(16),%d0                          
   6757e:	72f0           	moveq #-16,%d1                              
   67580:	0680 0000 000f 	addil #15,%d0                               
   67586:	c081           	andl %d1,%d0                                
                                                                      
  /*                                                                  
   * Fill in pointer array                                            
   */                                                                 
  grp->gr_mem[0] = grmem;                                             
   67588:	2040           	moveal %d0,%a0                              
   6758a:	2089           	movel %a1,%a0@                              
  for (cp = grmem, memcount = 1 ; *cp != 0 ; cp++) {                  
   6758c:	206e fff8      	moveal %fp@(-8),%a0                         
  /*                                                                  
   * Hack to produce (hopefully) a suitably-aligned array of pointers 
   */                                                                 
  if (bufsize < (((memcount+1)*sizeof(char *)) + 15))                 
    return 0;                                                         
  grp->gr_mem = (char **)(((uintptr_t)buffer + 15) & ~15);            
   67590:	2540 000a      	movel %d0,%a2@(10)                          
                                                                      
  /*                                                                  
   * Fill in pointer array                                            
   */                                                                 
  grp->gr_mem[0] = grmem;                                             
  for (cp = grmem, memcount = 1 ; *cp != 0 ; cp++) {                  
   67594:	1010           	moveb %a0@,%d0                              
   67596:	6740           	beqs 675d8 <scangr+0x10e>                   
   67598:	5288           	addql #1,%a0                                
   6759a:	7201           	moveq #1,%d1                                
    if(*cp == ',') {                                                  
   6759c:	49c0           	extbl %d0                                   
   6759e:	742c           	moveq #44,%d2                               
   675a0:	b480           	cmpl %d0,%d2                                
   675a2:	671e           	beqs 675c2 <scangr+0xf8>                    
                                                                      
  /*                                                                  
   * Fill in pointer array                                            
   */                                                                 
  grp->gr_mem[0] = grmem;                                             
  for (cp = grmem, memcount = 1 ; *cp != 0 ; cp++) {                  
   675a4:	1018           	moveb %a0@+,%d0                             
   675a6:	66f4           	bnes 6759c <scangr+0xd2>                    
    if(*cp == ',') {                                                  
      *cp = '\0';                                                     
      grp->gr_mem[memcount++] = cp + 1;                               
    }                                                                 
  }                                                                   
  grp->gr_mem[memcount] = NULL;                                       
   675a8:	206a 000a      	moveal %a2@(10),%a0                         
   675ac:	7001           	moveq #1,%d0                                
                                                                      
  /*                                                                  
   * Fill in pointer array                                            
   */                                                                 
  grp->gr_mem[0] = grmem;                                             
  for (cp = grmem, memcount = 1 ; *cp != 0 ; cp++) {                  
   675ae:	e589           	lsll #2,%d1                                 
    if(*cp == ',') {                                                  
      *cp = '\0';                                                     
      grp->gr_mem[memcount++] = cp + 1;                               
    }                                                                 
  }                                                                   
  grp->gr_mem[memcount] = NULL;                                       
   675b0:	42b0 1800      	clrl %a0@(00000000,%d1:l)                   
  return 1;                                                           
}                                                                     
   675b4:	4cee 0c1c ffe4 	moveml %fp@(-28),%d2-%d4/%a2-%a3            
   675ba:	4e5e           	unlk %fp                                    
   675bc:	4e75           	rts                                         
  /*                                                                  
   * Determine number of members                                      
   */                                                                 
  for (cp = grmem, memcount = 1 ; *cp != 0 ; cp++) {                  
    if(*cp == ',')                                                    
      memcount++;                                                     
   675be:	5281           	addql #1,%d1                                <== NOT EXECUTED
   675c0:	60a6           	bras 67568 <scangr+0x9e>                    <== NOT EXECUTED
   * Fill in pointer array                                            
   */                                                                 
  grp->gr_mem[0] = grmem;                                             
  for (cp = grmem, memcount = 1 ; *cp != 0 ; cp++) {                  
    if(*cp == ',') {                                                  
      *cp = '\0';                                                     
   675c2:	4200           	clrb %d0                                    <== NOT EXECUTED
   675c4:	1140 ffff      	moveb %d0,%a0@(-1)                          <== NOT EXECUTED
      grp->gr_mem[memcount++] = cp + 1;                               
   675c8:	226a 000a      	moveal %a2@(10),%a1                         <== NOT EXECUTED
   675cc:	2388 1c00      	movel %a0,%a1@(00000000,%d1:l:4)            <== NOT EXECUTED
   675d0:	5281           	addql #1,%d1                                <== NOT EXECUTED
   675d2:	60d0           	bras 675a4 <scangr+0xda>                    <== NOT EXECUTED
  grp->gr_gid = grgid;                                                
                                                                      
  /*                                                                  
   * Determine number of members                                      
   */                                                                 
  for (cp = grmem, memcount = 1 ; *cp != 0 ; cp++) {                  
   675d4:	7217           	moveq #23,%d1                               <== NOT EXECUTED
   675d6:	609c           	bras 67574 <scangr+0xaa>                    <== NOT EXECUTED
    if(*cp == ',') {                                                  
      *cp = '\0';                                                     
      grp->gr_mem[memcount++] = cp + 1;                               
    }                                                                 
  }                                                                   
  grp->gr_mem[memcount] = NULL;                                       
   675d8:	206a 000a      	moveal %a2@(10),%a0                         <== NOT EXECUTED
                                                                      
  /*                                                                  
   * Fill in pointer array                                            
   */                                                                 
  grp->gr_mem[0] = grmem;                                             
  for (cp = grmem, memcount = 1 ; *cp != 0 ; cp++) {                  
   675dc:	7204           	moveq #4,%d1                                <== NOT EXECUTED
    if(*cp == ',') {                                                  
      *cp = '\0';                                                     
      grp->gr_mem[memcount++] = cp + 1;                               
    }                                                                 
  }                                                                   
  grp->gr_mem[memcount] = NULL;                                       
   675de:	7001           	moveq #1,%d0                                <== NOT EXECUTED
   675e0:	42b0 1800      	clrl %a0@(00000000,%d1:l)                   <== NOT EXECUTED
   675e4:	60ce           	bras 675b4 <scangr+0xea>                    <== NOT EXECUTED
                                                                      
00067624 <scanpw>:                                                    
  FILE *fp,                                                           
  struct passwd *pwd,                                                 
  char *buffer,                                                       
  size_t bufsize                                                      
)                                                                     
{                                                                     
   67624:	4e56 ffe0      	linkw %fp,#-32                              
   67628:	48d7 1c1c      	moveml %d2-%d4/%a2-%a4,%sp@                 
  int pwuid, pwgid;                                                   
                                                                      
  if (!scanString(fp, &pwd->pw_name, &buffer, &bufsize, 0)            
   6762c:	42a7           	clrl %sp@-                                  
   6762e:	280e           	movel %fp,%d4                               
   67630:	0684 0000 0014 	addil #20,%d4                               
   67636:	260e           	movel %fp,%d3                               
   67638:	0683 0000 0010 	addil #16,%d3                               
   6763e:	47fa fdea      	lea %pc@(6742a <scanString>),%a3            
   67642:	2f04           	movel %d4,%sp@-                             
   67644:	2f03           	movel %d3,%sp@-                             
  FILE *fp,                                                           
  struct passwd *pwd,                                                 
  char *buffer,                                                       
  size_t bufsize                                                      
)                                                                     
{                                                                     
   67646:	246e 000c      	moveal %fp@(12),%a2                         
  int pwuid, pwgid;                                                   
                                                                      
  if (!scanString(fp, &pwd->pw_name, &buffer, &bufsize, 0)            
   6764a:	2f0a           	movel %a2,%sp@-                             
  FILE *fp,                                                           
  struct passwd *pwd,                                                 
  char *buffer,                                                       
  size_t bufsize                                                      
)                                                                     
{                                                                     
   6764c:	242e 0008      	movel %fp@(8),%d2                           
  int pwuid, pwgid;                                                   
                                                                      
  if (!scanString(fp, &pwd->pw_name, &buffer, &bufsize, 0)            
   67650:	2f02           	movel %d2,%sp@-                             
   67652:	4e93           	jsr %a3@                                    
   67654:	4fef 0014      	lea %sp@(20),%sp                            
   67658:	4a80           	tstl %d0                                    
   6765a:	660c           	bnes 67668 <scanpw+0x44>                    
   || !scanString(fp, &pwd->pw_dir, &buffer, &bufsize, 0)             
   || !scanString(fp, &pwd->pw_shell, &buffer, &bufsize, 1))          
    return 0;                                                         
  pwd->pw_uid = pwuid;                                                
  pwd->pw_gid = pwgid;                                                
  return 1;                                                           
   6765c:	4280           	clrl %d0                                    <== NOT EXECUTED
}                                                                     
   6765e:	4cee 1c1c ffe0 	moveml %fp@(-32),%d2-%d4/%a2-%a4            <== NOT EXECUTED
   67664:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   67666:	4e75           	rts                                         <== NOT EXECUTED
)                                                                     
{                                                                     
  int pwuid, pwgid;                                                   
                                                                      
  if (!scanString(fp, &pwd->pw_name, &buffer, &bufsize, 0)            
   || !scanString(fp, &pwd->pw_passwd, &buffer, &bufsize, 0)          
   67668:	42a7           	clrl %sp@-                                  
   6766a:	2f04           	movel %d4,%sp@-                             
   6766c:	2f03           	movel %d3,%sp@-                             
   6766e:	486a 0004      	pea %a2@(4)                                 
   67672:	2f02           	movel %d2,%sp@-                             
   67674:	4e93           	jsr %a3@                                    
  size_t bufsize                                                      
)                                                                     
{                                                                     
  int pwuid, pwgid;                                                   
                                                                      
  if (!scanString(fp, &pwd->pw_name, &buffer, &bufsize, 0)            
   67676:	4fef 0014      	lea %sp@(20),%sp                            
   6767a:	4a80           	tstl %d0                                    
   6767c:	67de           	beqs 6765c <scanpw+0x38>                    
   || !scanString(fp, &pwd->pw_passwd, &buffer, &bufsize, 0)          
   || !scanInt(fp, &pwuid)                                            
   6767e:	486e fffc      	pea %fp@(-4)                                
   67682:	49fa fcd8      	lea %pc@(6735c <scanInt>),%a4               
   67686:	2f02           	movel %d2,%sp@-                             
   67688:	4e94           	jsr %a4@                                    
  size_t bufsize                                                      
)                                                                     
{                                                                     
  int pwuid, pwgid;                                                   
                                                                      
  if (!scanString(fp, &pwd->pw_name, &buffer, &bufsize, 0)            
   6768a:	508f           	addql #8,%sp                                
   6768c:	4a80           	tstl %d0                                    
   6768e:	67cc           	beqs 6765c <scanpw+0x38>                    
   || !scanString(fp, &pwd->pw_passwd, &buffer, &bufsize, 0)          
   || !scanInt(fp, &pwuid)                                            
   || !scanInt(fp, &pwgid)                                            
   67690:	486e fff8      	pea %fp@(-8)                                
   67694:	2f02           	movel %d2,%sp@-                             
   67696:	4e94           	jsr %a4@                                    
  size_t bufsize                                                      
)                                                                     
{                                                                     
  int pwuid, pwgid;                                                   
                                                                      
  if (!scanString(fp, &pwd->pw_name, &buffer, &bufsize, 0)            
   67698:	508f           	addql #8,%sp                                
   6769a:	4a80           	tstl %d0                                    
   6769c:	67be           	beqs 6765c <scanpw+0x38>                    
   || !scanString(fp, &pwd->pw_passwd, &buffer, &bufsize, 0)          
   || !scanInt(fp, &pwuid)                                            
   || !scanInt(fp, &pwgid)                                            
   || !scanString(fp, &pwd->pw_comment, &buffer, &bufsize, 0)         
   6769e:	42a7           	clrl %sp@-                                  
   676a0:	2f04           	movel %d4,%sp@-                             
   676a2:	2f03           	movel %d3,%sp@-                             
   676a4:	486a 000c      	pea %a2@(12)                                
   676a8:	2f02           	movel %d2,%sp@-                             
   676aa:	4e93           	jsr %a3@                                    
  size_t bufsize                                                      
)                                                                     
{                                                                     
  int pwuid, pwgid;                                                   
                                                                      
  if (!scanString(fp, &pwd->pw_name, &buffer, &bufsize, 0)            
   676ac:	4fef 0014      	lea %sp@(20),%sp                            
   676b0:	4a80           	tstl %d0                                    
   676b2:	67a8           	beqs 6765c <scanpw+0x38>                    
   || !scanString(fp, &pwd->pw_passwd, &buffer, &bufsize, 0)          
   || !scanInt(fp, &pwuid)                                            
   || !scanInt(fp, &pwgid)                                            
   || !scanString(fp, &pwd->pw_comment, &buffer, &bufsize, 0)         
   || !scanString(fp, &pwd->pw_gecos, &buffer, &bufsize, 0)           
   676b4:	42a7           	clrl %sp@-                                  
   676b6:	2f04           	movel %d4,%sp@-                             
   676b8:	2f03           	movel %d3,%sp@-                             
   676ba:	486a 0010      	pea %a2@(16)                                
   676be:	2f02           	movel %d2,%sp@-                             
   676c0:	4e93           	jsr %a3@                                    
  size_t bufsize                                                      
)                                                                     
{                                                                     
  int pwuid, pwgid;                                                   
                                                                      
  if (!scanString(fp, &pwd->pw_name, &buffer, &bufsize, 0)            
   676c2:	4fef 0014      	lea %sp@(20),%sp                            
   676c6:	4a80           	tstl %d0                                    
   676c8:	6792           	beqs 6765c <scanpw+0x38>                    
   || !scanString(fp, &pwd->pw_passwd, &buffer, &bufsize, 0)          
   || !scanInt(fp, &pwuid)                                            
   || !scanInt(fp, &pwgid)                                            
   || !scanString(fp, &pwd->pw_comment, &buffer, &bufsize, 0)         
   || !scanString(fp, &pwd->pw_gecos, &buffer, &bufsize, 0)           
   || !scanString(fp, &pwd->pw_dir, &buffer, &bufsize, 0)             
   676ca:	42a7           	clrl %sp@-                                  
   676cc:	2f04           	movel %d4,%sp@-                             
   676ce:	2f03           	movel %d3,%sp@-                             
   676d0:	486a 0014      	pea %a2@(20)                                
   676d4:	2f02           	movel %d2,%sp@-                             
   676d6:	4e93           	jsr %a3@                                    
  size_t bufsize                                                      
)                                                                     
{                                                                     
  int pwuid, pwgid;                                                   
                                                                      
  if (!scanString(fp, &pwd->pw_name, &buffer, &bufsize, 0)            
   676d8:	4fef 0014      	lea %sp@(20),%sp                            
   676dc:	4a80           	tstl %d0                                    
   676de:	6700 ff7c      	beqw 6765c <scanpw+0x38>                    
   || !scanInt(fp, &pwuid)                                            
   || !scanInt(fp, &pwgid)                                            
   || !scanString(fp, &pwd->pw_comment, &buffer, &bufsize, 0)         
   || !scanString(fp, &pwd->pw_gecos, &buffer, &bufsize, 0)           
   || !scanString(fp, &pwd->pw_dir, &buffer, &bufsize, 0)             
   || !scanString(fp, &pwd->pw_shell, &buffer, &bufsize, 1))          
   676e2:	4878 0001      	pea 1 <ADD>                                 
   676e6:	2f04           	movel %d4,%sp@-                             
   676e8:	2f03           	movel %d3,%sp@-                             
   676ea:	486a 0018      	pea %a2@(24)                                
   676ee:	2f02           	movel %d2,%sp@-                             
   676f0:	4e93           	jsr %a3@                                    
  size_t bufsize                                                      
)                                                                     
{                                                                     
  int pwuid, pwgid;                                                   
                                                                      
  if (!scanString(fp, &pwd->pw_name, &buffer, &bufsize, 0)            
   676f2:	4fef 0014      	lea %sp@(20),%sp                            
   676f6:	4a80           	tstl %d0                                    
   676f8:	6700 ff62      	beqw 6765c <scanpw+0x38>                    
   || !scanString(fp, &pwd->pw_gecos, &buffer, &bufsize, 0)           
   || !scanString(fp, &pwd->pw_dir, &buffer, &bufsize, 0)             
   || !scanString(fp, &pwd->pw_shell, &buffer, &bufsize, 1))          
    return 0;                                                         
  pwd->pw_uid = pwuid;                                                
  pwd->pw_gid = pwgid;                                                
   676fc:	7001           	moveq #1,%d0                                
   676fe:	356e fffa 000a 	movew %fp@(-6),%a2@(10)                     
   || !scanString(fp, &pwd->pw_comment, &buffer, &bufsize, 0)         
   || !scanString(fp, &pwd->pw_gecos, &buffer, &bufsize, 0)           
   || !scanString(fp, &pwd->pw_dir, &buffer, &bufsize, 0)             
   || !scanString(fp, &pwd->pw_shell, &buffer, &bufsize, 1))          
    return 0;                                                         
  pwd->pw_uid = pwuid;                                                
   67704:	356e fffe 0008 	movew %fp@(-2),%a2@(8)                      
  pwd->pw_gid = pwgid;                                                
  return 1;                                                           
}                                                                     
   6770a:	4cee 1c1c ffe0 	moveml %fp@(-32),%d2-%d4/%a2-%a4            
   67710:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00048b84 <sem_timedwait>:                                             
                                                                      
int sem_timedwait(                                                    
  sem_t                 *sem,                                         
  const struct timespec *abstime                                      
)                                                                     
{                                                                     
   48b84:	4e56 fffc      	linkw %fp,#-4                               
   48b88:	2f02           	movel %d2,%sp@-                             
   *                                                                  
   *  If the status is POSIX_ABSOLUTE_TIMEOUT_INVALID,                
   *  POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST, or POSIX_ABSOLUTE_TIMEOUT_IS_NOW,
   *  then we should not wait.                                        
   */                                                                 
  status = _POSIX_Absolute_timeout_to_ticks( abstime, &ticks );       
   48b8a:	486e fffc      	pea %fp@(-4)                                
   48b8e:	2f2e 000c      	movel %fp@(12),%sp@-                        
                                                                      
int sem_timedwait(                                                    
  sem_t                 *sem,                                         
  const struct timespec *abstime                                      
)                                                                     
{                                                                     
   48b92:	242e 0008      	movel %fp@(8),%d2                           
   *                                                                  
   *  If the status is POSIX_ABSOLUTE_TIMEOUT_INVALID,                
   *  POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST, or POSIX_ABSOLUTE_TIMEOUT_IS_NOW,
   *  then we should not wait.                                        
   */                                                                 
  status = _POSIX_Absolute_timeout_to_ticks( abstime, &ticks );       
   48b96:	4eb9 0004 e560 	jsr 4e560 <_POSIX_Absolute_timeout_to_ticks>
  if ( status != POSIX_ABSOLUTE_TIMEOUT_IS_IN_FUTURE )                
   48b9c:	508f           	addql #8,%sp                                
   48b9e:	7203           	moveq #3,%d1                                
   48ba0:	b280           	cmpl %d0,%d1                                
   48ba2:	671a           	beqs 48bbe <sem_timedwait+0x3a>             
    do_wait = false;                                                  
                                                                      
  lock_status = _POSIX_Semaphore_Wait_support( sem, do_wait, ticks ); 
   48ba4:	2f2e fffc      	movel %fp@(-4),%sp@-                        <== NOT EXECUTED
   48ba8:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   48baa:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   48bac:	4eb9 0004 f1c4 	jsr 4f1c4 <_POSIX_Semaphore_Wait_support>   <== NOT EXECUTED
        break;                                                        
    }                                                                 
  }                                                                   
                                                                      
  return lock_status;                                                 
}                                                                     
   48bb2:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   */                                                                 
  status = _POSIX_Absolute_timeout_to_ticks( abstime, &ticks );       
  if ( status != POSIX_ABSOLUTE_TIMEOUT_IS_IN_FUTURE )                
    do_wait = false;                                                  
                                                                      
  lock_status = _POSIX_Semaphore_Wait_support( sem, do_wait, ticks ); 
   48bb6:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
        break;                                                        
    }                                                                 
  }                                                                   
                                                                      
  return lock_status;                                                 
}                                                                     
   48bba:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   48bbc:	4e75           	rts                                         <== NOT EXECUTED
   */                                                                 
  status = _POSIX_Absolute_timeout_to_ticks( abstime, &ticks );       
  if ( status != POSIX_ABSOLUTE_TIMEOUT_IS_IN_FUTURE )                
    do_wait = false;                                                  
                                                                      
  lock_status = _POSIX_Semaphore_Wait_support( sem, do_wait, ticks ); 
   48bbe:	2f2e fffc      	movel %fp@(-4),%sp@-                        
   48bc2:	4878 0001      	pea 1 <ADD>                                 
   48bc6:	2f02           	movel %d2,%sp@-                             
   48bc8:	4eb9 0004 f1c4 	jsr 4f1c4 <_POSIX_Semaphore_Wait_support>   
        break;                                                        
    }                                                                 
  }                                                                   
                                                                      
  return lock_status;                                                 
}                                                                     
   48bce:	242e fff8      	movel %fp@(-8),%d2                          
   */                                                                 
  status = _POSIX_Absolute_timeout_to_ticks( abstime, &ticks );       
  if ( status != POSIX_ABSOLUTE_TIMEOUT_IS_IN_FUTURE )                
    do_wait = false;                                                  
                                                                      
  lock_status = _POSIX_Semaphore_Wait_support( sem, do_wait, ticks ); 
   48bd2:	4fef 000c      	lea %sp@(12),%sp                            
        break;                                                        
    }                                                                 
  }                                                                   
                                                                      
  return lock_status;                                                 
}                                                                     
   48bd6:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      
000672fe <setgid>:                                                    
  gid_t  gid                                                          
)                                                                     
{                                                                     
  _POSIX_types_Gid = gid;                                             
  return 0;                                                           
}                                                                     
   672fe:	4280           	clrl %d0                                    <== NOT EXECUTED
 */                                                                   
                                                                      
int setgid(                                                           
  gid_t  gid                                                          
)                                                                     
{                                                                     
   67300:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  _POSIX_types_Gid = gid;                                             
   67304:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   <== NOT EXECUTED
   6730a:	316e 000a 0034 	movew %fp@(10),%a0@(52)                     <== NOT EXECUTED
  return 0;                                                           
}                                                                     
   67310:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
0006785c <setgrent>:                                                  
    return NULL;                                                      
  return &grent;                                                      
}                                                                     
                                                                      
void setgrent(void)                                                   
{                                                                     
   6785c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  init_etc_passwd_group();                                            
   67860:	4eb9 0006 7752 	jsr 67752 <init_etc_passwd_group>           <== NOT EXECUTED
                                                                      
  if (group_fp != NULL)                                               
   67866:	2039 000a 60b2 	movel a60b2 <group_fp>,%d0                  <== NOT EXECUTED
   6786c:	670a           	beqs 67878 <setgrent+0x1c>                  <== NOT EXECUTED
    fclose(group_fp);                                                 
   6786e:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   67870:	4eb9 0008 0f7a 	jsr 80f7a <fclose>                          <== NOT EXECUTED
   67876:	588f           	addql #4,%sp                                <== NOT EXECUTED
  group_fp = fopen("/etc/group", "r");                                
   67878:	4879 0009 a42b 	pea 9a42b <rtems_bdpart_shell_usage+0x69f>  <== NOT EXECUTED
   6787e:	4879 0009 8d05 	pea 98d05 <_rodata_start+0x845>             <== NOT EXECUTED
   67884:	4eb9 0008 17e0 	jsr 817e0 <fopen>                           <== NOT EXECUTED
   6788a:	508f           	addql #8,%sp                                <== NOT EXECUTED
}                                                                     
   6788c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
{                                                                     
  init_etc_passwd_group();                                            
                                                                      
  if (group_fp != NULL)                                               
    fclose(group_fp);                                                 
  group_fp = fopen("/etc/group", "r");                                
   6788e:	23c0 000a 60b2 	movel %d0,a60b2 <group_fp>                  <== NOT EXECUTED
}                                                                     
                                                                      
00067a26 <setpwent>:                                                  
    return NULL;                                                      
  return &pwent;                                                      
}                                                                     
                                                                      
void setpwent(void)                                                   
{                                                                     
   67a26:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  init_etc_passwd_group();                                            
   67a2a:	4eb9 0006 7752 	jsr 67752 <init_etc_passwd_group>           <== NOT EXECUTED
                                                                      
  if (passwd_fp != NULL)                                              
   67a30:	2039 000a 5fca 	movel a5fca <passwd_fp>,%d0                 <== NOT EXECUTED
   67a36:	670a           	beqs 67a42 <setpwent+0x1c>                  <== NOT EXECUTED
    fclose(passwd_fp);                                                
   67a38:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   67a3a:	4eb9 0008 0f7a 	jsr 80f7a <fclose>                          <== NOT EXECUTED
   67a40:	588f           	addql #4,%sp                                <== NOT EXECUTED
  passwd_fp = fopen("/etc/passwd", "r");                              
   67a42:	4879 0009 a42b 	pea 9a42b <rtems_bdpart_shell_usage+0x69f>  <== NOT EXECUTED
   67a48:	4879 0009 8cc0 	pea 98cc0 <_rodata_start+0x800>             <== NOT EXECUTED
   67a4e:	4eb9 0008 17e0 	jsr 817e0 <fopen>                           <== NOT EXECUTED
   67a54:	508f           	addql #8,%sp                                <== NOT EXECUTED
}                                                                     
   67a56:	4e5e           	unlk %fp                                    <== NOT EXECUTED
{                                                                     
  init_etc_passwd_group();                                            
                                                                      
  if (passwd_fp != NULL)                                              
    fclose(passwd_fp);                                                
  passwd_fp = fopen("/etc/passwd", "r");                              
   67a58:	23c0 000a 5fca 	movel %d0,a5fca <passwd_fp>                 <== NOT EXECUTED
}                                                                     
                                                                      
000468ee <setuid>:                                                    
  uid_t  uid                                                          
)                                                                     
{                                                                     
  _POSIX_types_Uid = uid;                                             
  return 0;                                                           
}                                                                     
   468ee:	4280           	clrl %d0                                    <== NOT EXECUTED
 */                                                                   
                                                                      
int setuid(                                                           
  uid_t  uid                                                          
)                                                                     
{                                                                     
   468f0:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
  _POSIX_types_Uid = uid;                                             
   468f4:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   <== NOT EXECUTED
   468fa:	316e 000a 0032 	movew %fp@(10),%a0@(50)                     <== NOT EXECUTED
  return 0;                                                           
}                                                                     
   46900:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00048b74 <sigsuspend>:                                                
#include <rtems/seterr.h>                                             
                                                                      
int sigsuspend(                                                       
  const sigset_t  *sigmask                                            
)                                                                     
{                                                                     
   48b74:	4e56 ffec      	linkw %fp,#-20                              
   48b78:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
  int                 status;                                         
  POSIX_API_Control  *api;                                            
                                                                      
  api = _Thread_Executing->API_Extensions[ THREAD_API_POSIX ];        
                                                                      
  status = sigprocmask( SIG_BLOCK, sigmask, &saved_signals_blocked ); 
   48b7c:	240e           	movel %fp,%d2                               
   48b7e:	5982           	subql #4,%d2                                
   48b80:	45f9 0004 8b4c 	lea 48b4c <sigprocmask>,%a2                 
                                                                      
  (void) sigfillset( &all_signals );                                  
   48b86:	260e           	movel %fp,%d3                               
   48b88:	5183           	subql #8,%d3                                
  int                 status;                                         
  POSIX_API_Control  *api;                                            
                                                                      
  api = _Thread_Executing->API_Extensions[ THREAD_API_POSIX ];        
                                                                      
  status = sigprocmask( SIG_BLOCK, sigmask, &saved_signals_blocked ); 
   48b8a:	2f02           	movel %d2,%sp@-                             
   48b8c:	2f2e 0008      	movel %fp@(8),%sp@-                         
   48b90:	4878 0001      	pea 1 <ADD>                                 
   48b94:	4e92           	jsr %a2@                                    
                                                                      
  (void) sigfillset( &all_signals );                                  
   48b96:	2f03           	movel %d3,%sp@-                             
   48b98:	4eb9 0004 8aa8 	jsr 48aa8 <sigfillset>                      
                                                                      
  status = sigtimedwait( &all_signals, NULL, NULL );                  
   48b9e:	42a7           	clrl %sp@-                                  
   48ba0:	42a7           	clrl %sp@-                                  
   48ba2:	2f03           	movel %d3,%sp@-                             
   48ba4:	4eb9 0004 8c30 	jsr 48c30 <sigtimedwait>                    
   48baa:	2600           	movel %d0,%d3                               
                                                                      
  (void) sigprocmask( SIG_SETMASK, &saved_signals_blocked, NULL );    
   48bac:	42a7           	clrl %sp@-                                  
   48bae:	2f02           	movel %d2,%sp@-                             
   48bb0:	42a7           	clrl %sp@-                                  
   48bb2:	4e92           	jsr %a2@                                    
                                                                      
  /*                                                                  
   * sigtimedwait() returns the signal number while sigsuspend()      
   * is supposed to return -1 and EINTR when a signal is caught.      
   */                                                                 
  if ( status != -1 )                                                 
   48bb4:	4fef 0028      	lea %sp@(40),%sp                            
   48bb8:	70ff           	moveq #-1,%d0                               
   48bba:	b083           	cmpl %d3,%d0                                
   48bbc:	660c           	bnes 48bca <sigsuspend+0x56>                
    rtems_set_errno_and_return_minus_one( EINTR );                    
                                                                      
  return status;                                                      
}                                                                     
   48bbe:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   48bc0:	4cee 040c ffec 	moveml %fp@(-20),%d2-%d3/%a2                <== NOT EXECUTED
   48bc6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   48bc8:	4e75           	rts                                         <== NOT EXECUTED
  /*                                                                  
   * sigtimedwait() returns the signal number while sigsuspend()      
   * is supposed to return -1 and EINTR when a signal is caught.      
   */                                                                 
  if ( status != -1 )                                                 
    rtems_set_errno_and_return_minus_one( EINTR );                    
   48bca:	4eb9 0005 1eec 	jsr 51eec <__errno>                         
   48bd0:	2040           	moveal %d0,%a0                              
   48bd2:	7004           	moveq #4,%d0                                
                                                                      
  return status;                                                      
}                                                                     
   48bd4:	4cee 040c ffec 	moveml %fp@(-20),%d2-%d3/%a2                
  /*                                                                  
   * sigtimedwait() returns the signal number while sigsuspend()      
   * is supposed to return -1 and EINTR when a signal is caught.      
   */                                                                 
  if ( status != -1 )                                                 
    rtems_set_errno_and_return_minus_one( EINTR );                    
   48bda:	2080           	movel %d0,%a0@                              
                                                                      
  return status;                                                      
}                                                                     
   48bdc:	70ff           	moveq #-1,%d0                               
   48bde:	4e5e           	unlk %fp                                    
	...                                                                  
                                                                      
0004425c <siproc>:                                                    
/*                                                                    
 * Process input character, with semaphore.                           
 */                                                                   
static int                                                            
siproc (unsigned char c, struct rtems_termios_tty *tty)               
{                                                                     
   4425c:	4e56 0000      	linkw %fp,#0                                <== NOT EXECUTED
   44260:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   44262:	246e 000c      	moveal %fp@(12),%a2                         <== NOT EXECUTED
	int i;                                                               
                                                                      
	/*                                                                   
	 * Obtain output semaphore if character will be echoed               
	 */                                                                  
	if (tty->termios.c_lflag & (ECHO|ECHOE|ECHOK|ECHONL|ECHOPRT|ECHOCTL|ECHOKE)) {
   44266:	202a 003c      	movel %a2@(60),%d0                          <== NOT EXECUTED
   4426a:	0280 0000 0e78 	andil #3704,%d0                             <== NOT EXECUTED
/*                                                                    
 * Process input character, with semaphore.                           
 */                                                                   
static int                                                            
siproc (unsigned char c, struct rtems_termios_tty *tty)               
{                                                                     
   44270:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   44272:	142e 000b      	moveb %fp@(11),%d2                          <== NOT EXECUTED
	int i;                                                               
                                                                      
	/*                                                                   
	 * Obtain output semaphore if character will be echoed               
	 */                                                                  
	if (tty->termios.c_lflag & (ECHO|ECHOE|ECHOK|ECHONL|ECHOPRT|ECHOCTL|ECHOKE)) {
   44276:	4a80           	tstl %d0                                    <== NOT EXECUTED
   44278:	661c           	bnes 44296 <siproc+0x3a>                    <== NOT EXECUTED
		rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);   
		i = iproc (c, tty);                                                 
		rtems_semaphore_release (tty->osem);                                
	}                                                                    
	else {                                                               
		i = iproc (c, tty);                                                 
   4427a:	2d4a 000c      	movel %a2,%fp@(12)                          <== NOT EXECUTED
	}                                                                    
	return i;                                                            
}                                                                     
   4427e:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
		rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);   
		i = iproc (c, tty);                                                 
		rtems_semaphore_release (tty->osem);                                
	}                                                                    
	else {                                                               
		i = iproc (c, tty);                                                 
   44282:	0282 0000 00ff 	andil #255,%d2                              <== NOT EXECUTED
   44288:	2d42 0008      	movel %d2,%fp@(8)                           <== NOT EXECUTED
	}                                                                    
	return i;                                                            
}                                                                     
   4428c:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   44290:	4e5e           	unlk %fp                                    <== NOT EXECUTED
		rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);   
		i = iproc (c, tty);                                                 
		rtems_semaphore_release (tty->osem);                                
	}                                                                    
	else {                                                               
		i = iproc (c, tty);                                                 
   44292:	6000 fdd0      	braw 44064 <iproc>                          <== NOT EXECUTED
                                                                      
	/*                                                                   
	 * Obtain output semaphore if character will be echoed               
	 */                                                                  
	if (tty->termios.c_lflag & (ECHO|ECHOE|ECHOK|ECHONL|ECHOPRT|ECHOCTL|ECHOKE)) {
		rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);   
   44296:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
		i = iproc (c, tty);                                                 
   44298:	0282 0000 00ff 	andil #255,%d2                              <== NOT EXECUTED
                                                                      
	/*                                                                   
	 * Obtain output semaphore if character will be echoed               
	 */                                                                  
	if (tty->termios.c_lflag & (ECHO|ECHOE|ECHOK|ECHONL|ECHOPRT|ECHOCTL|ECHOKE)) {
		rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);   
   4429e:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   442a0:	2f2a 0018      	movel %a2@(24),%sp@-                        <== NOT EXECUTED
   442a4:	4eb9 0004 5d2c 	jsr 45d2c <rtems_semaphore_obtain>          <== NOT EXECUTED
		i = iproc (c, tty);                                                 
   442aa:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   442ac:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   442ae:	4eba fdb4      	jsr %pc@(44064 <iproc>)                     <== NOT EXECUTED
		rtems_semaphore_release (tty->osem);                                
   442b2:	2f2a 0018      	movel %a2@(24),%sp@-                        <== NOT EXECUTED
	/*                                                                   
	 * Obtain output semaphore if character will be echoed               
	 */                                                                  
	if (tty->termios.c_lflag & (ECHO|ECHOE|ECHOK|ECHONL|ECHOPRT|ECHOCTL|ECHOKE)) {
		rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);   
		i = iproc (c, tty);                                                 
   442b6:	2400           	movel %d0,%d2                               <== NOT EXECUTED
		rtems_semaphore_release (tty->osem);                                
   442b8:	4eb9 0004 5e68 	jsr 45e68 <rtems_semaphore_release>         <== NOT EXECUTED
	}                                                                    
	else {                                                               
		i = iproc (c, tty);                                                 
	}                                                                    
	return i;                                                            
}                                                                     
   442be:	246e fffc      	moveal %fp@(-4),%a2                         <== NOT EXECUTED
   442c2:	2002           	movel %d2,%d0                               <== NOT EXECUTED
	 * Obtain output semaphore if character will be echoed               
	 */                                                                  
	if (tty->termios.c_lflag & (ECHO|ECHOE|ECHOK|ECHONL|ECHOPRT|ECHOCTL|ECHOKE)) {
		rtems_semaphore_obtain (tty->osem, RTEMS_WAIT, RTEMS_NO_TIMEOUT);   
		i = iproc (c, tty);                                                 
		rtems_semaphore_release (tty->osem);                                
   442c4:	4fef 0018      	lea %sp@(24),%sp                            <== NOT EXECUTED
	}                                                                    
	else {                                                               
		i = iproc (c, tty);                                                 
	}                                                                    
	return i;                                                            
}                                                                     
   442c8:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   442cc:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00047c30 <stat>:                                                      
                                                                      
int _STAT_NAME(                                                       
  const char  *path,                                                  
  struct stat *buf                                                    
)                                                                     
{                                                                     
   47c30:	4e56 ffe0      	linkw %fp,#-32                              
   47c34:	48d7 001c      	moveml %d2-%d4,%sp@                         
   47c38:	262e 0008      	movel %fp@(8),%d3                           
   47c3c:	242e 000c      	movel %fp@(12),%d2                          
                                                                      
  /*                                                                  
   *  Check to see if we were passed a valid pointer.                 
   */                                                                 
                                                                      
  if ( !buf )                                                         
   47c40:	6700 0088      	beqw 47cca <stat+0x9a>                      
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  status = rtems_filesystem_evaluate_path( path, strlen( path ),      
   47c44:	2f03           	movel %d3,%sp@-                             
   47c46:	280e           	movel %fp,%d4                               
   47c48:	0684 ffff ffec 	addil #-20,%d4                              
   47c4e:	4eb9 0008 6ee4 	jsr 86ee4 <strlen>                          
   47c54:	7201           	moveq #1,%d1                                
   47c56:	2e81           	movel %d1,%sp@                              
   47c58:	2f04           	movel %d4,%sp@-                             
   47c5a:	42a7           	clrl %sp@-                                  
   47c5c:	2f00           	movel %d0,%sp@-                             
   47c5e:	2f03           	movel %d3,%sp@-                             
   47c60:	4eb9 0004 66cc 	jsr 466cc <rtems_filesystem_evaluate_path>  
                                           0, &loc, _STAT_FOLLOW_LINKS );
  if ( status != 0 )                                                  
   47c66:	4fef 0014      	lea %sp@(20),%sp                            
   47c6a:	4a80           	tstl %d0                                    
   47c6c:	664e           	bnes 47cbc <stat+0x8c>                      
    return -1;                                                        
                                                                      
  if ( !loc.handlers->fstat_h ){                                      
   47c6e:	206e fff4      	moveal %fp@(-12),%a0                        
   47c72:	4aa8 0018      	tstl %a0@(24)                               
   47c76:	676c           	beqs 47ce4 <stat+0xb4>                      
  /*                                                                  
   *  Zero out the stat structure so the various support              
   *  versions of stat don't have to.                                 
   */                                                                 
                                                                      
  memset( buf, 0, sizeof(struct stat) );                              
   47c78:	4878 0046      	pea 46 <DBL_MANT_DIG+0x11>                  
   47c7c:	42a7           	clrl %sp@-                                  
   47c7e:	2f02           	movel %d2,%sp@-                             
   47c80:	4eb9 0008 3fe0 	jsr 83fe0 <memset>                          
                                                                      
  status =  (*loc.handlers->fstat_h)( &loc, buf );                    
   47c86:	2f02           	movel %d2,%sp@-                             
   47c88:	2f04           	movel %d4,%sp@-                             
   47c8a:	206e fff4      	moveal %fp@(-12),%a0                        
   47c8e:	2068 0018      	moveal %a0@(24),%a0                         
   47c92:	4e90           	jsr %a0@                                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   47c94:	206e fff8      	moveal %fp@(-8),%a0                         
   *  versions of stat don't have to.                                 
   */                                                                 
                                                                      
  memset( buf, 0, sizeof(struct stat) );                              
                                                                      
  status =  (*loc.handlers->fstat_h)( &loc, buf );                    
   47c98:	2400           	movel %d0,%d2                               
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   47c9a:	4fef 0014      	lea %sp@(20),%sp                            
   47c9e:	4a88           	tstl %a0                                    
   47ca0:	670e           	beqs 47cb0 <stat+0x80>                      
   47ca2:	2068 001c      	moveal %a0@(28),%a0                         
   47ca6:	4a88           	tstl %a0                                    
   47ca8:	6706           	beqs 47cb0 <stat+0x80>                      
   47caa:	2f04           	movel %d4,%sp@-                             
   47cac:	4e90           	jsr %a0@                                    
   47cae:	588f           	addql #4,%sp                                
                                                                      
  return status;                                                      
}                                                                     
   47cb0:	2002           	movel %d2,%d0                               
   47cb2:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    
   47cb8:	4e5e           	unlk %fp                                    
   47cba:	4e75           	rts                                         
  if ( !buf )                                                         
    rtems_set_errno_and_return_minus_one( EFAULT );                   
                                                                      
  status = rtems_filesystem_evaluate_path( path, strlen( path ),      
                                           0, &loc, _STAT_FOLLOW_LINKS );
  if ( status != 0 )                                                  
   47cbc:	74ff           	moveq #-1,%d2                               
  status =  (*loc.handlers->fstat_h)( &loc, buf );                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return status;                                                      
}                                                                     
   47cbe:	2002           	movel %d2,%d0                               
   47cc0:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    
   47cc6:	4e5e           	unlk %fp                                    
   47cc8:	4e75           	rts                                         
  /*                                                                  
   *  Check to see if we were passed a valid pointer.                 
   */                                                                 
                                                                      
  if ( !buf )                                                         
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   47cca:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         
   47cd0:	74ff           	moveq #-1,%d2                               
   47cd2:	760e           	moveq #14,%d3                               
   47cd4:	2040           	moveal %d0,%a0                              
  status =  (*loc.handlers->fstat_h)( &loc, buf );                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return status;                                                      
}                                                                     
   47cd6:	2002           	movel %d2,%d0                               
  /*                                                                  
   *  Check to see if we were passed a valid pointer.                 
   */                                                                 
                                                                      
  if ( !buf )                                                         
    rtems_set_errno_and_return_minus_one( EFAULT );                   
   47cd8:	2083           	movel %d3,%a0@                              
  status =  (*loc.handlers->fstat_h)( &loc, buf );                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return status;                                                      
}                                                                     
   47cda:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    
   47ce0:	4e5e           	unlk %fp                                    
   47ce2:	4e75           	rts                                         
                                           0, &loc, _STAT_FOLLOW_LINKS );
  if ( status != 0 )                                                  
    return -1;                                                        
                                                                      
  if ( !loc.handlers->fstat_h ){                                      
    rtems_filesystem_freenode( &loc );                                
   47ce4:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
   47ce8:	4a88           	tstl %a0                                    <== NOT EXECUTED
   47cea:	670e           	beqs 47cfa <stat+0xca>                      <== NOT EXECUTED
   47cec:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   47cf0:	4a88           	tstl %a0                                    <== NOT EXECUTED
   47cf2:	6706           	beqs 47cfa <stat+0xca>                      <== NOT EXECUTED
   47cf4:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   47cf6:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   47cf8:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   47cfa:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   47d00:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
   47d02:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  status =  (*loc.handlers->fstat_h)( &loc, buf );                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return status;                                                      
}                                                                     
   47d04:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   47d06:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    <== NOT EXECUTED
  if ( status != 0 )                                                  
    return -1;                                                        
                                                                      
  if ( !loc.handlers->fstat_h ){                                      
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   47d0c:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  status =  (*loc.handlers->fstat_h)( &loc, buf );                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return status;                                                      
}                                                                     
   47d12:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
000689cc <statvfs>:                                                   
 */                                                                   
extern rtems_chain_control rtems_filesystem_mount_table_control;      
                                                                      
int                                                                   
statvfs (const char *path, struct statvfs *sb)                        
{                                                                     
   689cc:	4e56 ffe0      	linkw %fp,#-32                              <== NOT EXECUTED
   689d0:	48d7 001c      	moveml %d2-%d4,%sp@                         <== NOT EXECUTED
   689d4:	242e 0008      	movel %fp@(8),%d2                           <== NOT EXECUTED
   *    The root node of the mounted filesytem.                       
   *    The node for the directory that the fileystem is mounted on.  
   *    The mount entry that is being refered to.                     
   */                                                                 
                                                                      
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x0, &loc, true ) )
   689d8:	260e           	movel %fp,%d3                               <== NOT EXECUTED
   689da:	0683 ffff ffec 	addil #-20,%d3                              <== NOT EXECUTED
   689e0:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
 */                                                                   
extern rtems_chain_control rtems_filesystem_mount_table_control;      
                                                                      
int                                                                   
statvfs (const char *path, struct statvfs *sb)                        
{                                                                     
   689e2:	282e 000c      	movel %fp@(12),%d4                          <== NOT EXECUTED
   *    The root node of the mounted filesytem.                       
   *    The node for the directory that the fileystem is mounted on.  
   *    The mount entry that is being refered to.                     
   */                                                                 
                                                                      
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x0, &loc, true ) )
   689e6:	4eb9 0008 6ee4 	jsr 86ee4 <strlen>                          <== NOT EXECUTED
   689ec:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   689ee:	2e81           	movel %d1,%sp@                              <== NOT EXECUTED
   689f0:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   689f2:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   689f4:	2f00           	movel %d0,%sp@-                             <== NOT EXECUTED
   689f6:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   689f8:	4eb9 0004 66cc 	jsr 466cc <rtems_filesystem_evaluate_path>  <== NOT EXECUTED
   689fe:	4fef 0014      	lea %sp@(20),%sp                            <== NOT EXECUTED
   68a02:	4a80           	tstl %d0                                    <== NOT EXECUTED
   68a04:	6662           	bnes 68a68 <statvfs+0x9c>                   <== NOT EXECUTED
    return -1;                                                        
                                                                      
  mt_entry      = loc.mt_entry;                                       
   68a06:	226e fffc      	moveal %fp@(-4),%a1                         <== NOT EXECUTED
  fs_mount_root = &mt_entry->mt_fs_root;                              
   68a0a:	2069 0028      	moveal %a1@(40),%a0                         <== NOT EXECUTED
   68a0e:	4aa8 0044      	tstl %a0@(68)                               <== NOT EXECUTED
   68a12:	6762           	beqs 68a76 <statvfs+0xaa>                   <== NOT EXECUTED
                                                                      
  if ( !fs_mount_root->ops->statvfs_h )                               
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  memset (sb, 0, sizeof (struct statvfs));                            
   68a14:	2044           	moveal %d4,%a0                              <== NOT EXECUTED
   68a16:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   68a18:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   68a1a:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   68a1c:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   68a1e:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   68a20:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   68a22:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   68a24:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   68a26:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   68a28:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   68a2a:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   68a2c:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   68a2e:	4298           	clrl %a0@+                                  <== NOT EXECUTED
   68a30:	4290           	clrl %a0@                                   <== NOT EXECUTED
                                                                      
  result = ( fs_mount_root->ops->statvfs_h )( fs_mount_root, sb );    
   68a32:	2069 0028      	moveal %a1@(40),%a0                         <== NOT EXECUTED
   68a36:	2f04           	movel %d4,%sp@-                             <== NOT EXECUTED
   68a38:	4869 001c      	pea %a1@(28)                                <== NOT EXECUTED
   68a3c:	2068 0044      	moveal %a0@(68),%a0                         <== NOT EXECUTED
   68a40:	4e90           	jsr %a0@                                    <== NOT EXECUTED
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   68a42:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
  if ( !fs_mount_root->ops->statvfs_h )                               
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  memset (sb, 0, sizeof (struct statvfs));                            
                                                                      
  result = ( fs_mount_root->ops->statvfs_h )( fs_mount_root, sb );    
   68a46:	2400           	movel %d0,%d2                               <== NOT EXECUTED
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   68a48:	508f           	addql #8,%sp                                <== NOT EXECUTED
   68a4a:	4a88           	tstl %a0                                    <== NOT EXECUTED
   68a4c:	670e           	beqs 68a5c <statvfs+0x90>                   <== NOT EXECUTED
   68a4e:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   68a52:	4a88           	tstl %a0                                    <== NOT EXECUTED
   68a54:	6706           	beqs 68a5c <statvfs+0x90>                   <== NOT EXECUTED
   68a56:	2f03           	movel %d3,%sp@-                             <== NOT EXECUTED
   68a58:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   68a5a:	588f           	addql #4,%sp                                <== NOT EXECUTED
                                                                      
  return result;                                                      
}                                                                     
   68a5c:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   68a5e:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    <== NOT EXECUTED
   68a64:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   68a66:	4e75           	rts                                         <== NOT EXECUTED
   *    The root node of the mounted filesytem.                       
   *    The node for the directory that the fileystem is mounted on.  
   *    The mount entry that is being refered to.                     
   */                                                                 
                                                                      
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x0, &loc, true ) )
   68a68:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
  result = ( fs_mount_root->ops->statvfs_h )( fs_mount_root, sb );    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   68a6a:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   68a6c:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    <== NOT EXECUTED
   68a72:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   68a74:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  mt_entry      = loc.mt_entry;                                       
  fs_mount_root = &mt_entry->mt_fs_root;                              
                                                                      
  if ( !fs_mount_root->ops->statvfs_h )                               
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   68a76:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   68a7c:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
   68a7e:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  result = ( fs_mount_root->ops->statvfs_h )( fs_mount_root, sb );    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   68a80:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   68a82:	4cee 001c ffe0 	moveml %fp@(-32),%d2-%d4                    <== NOT EXECUTED
                                                                      
  mt_entry      = loc.mt_entry;                                       
  fs_mount_root = &mt_entry->mt_fs_root;                              
                                                                      
  if ( !fs_mount_root->ops->statvfs_h )                               
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   68a88:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  result = ( fs_mount_root->ops->statvfs_h )( fs_mount_root, sb );    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   68a8e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
	...                                                                  
                                                                      
00068a94 <symlink>:                                                   
                                                                      
int symlink(                                                          
  const char *actualpath,                                             
  const char *sympath                                                 
)                                                                     
{                                                                     
   68a94:	4e56 ffe8      	linkw %fp,#-24                              
   68a98:	226e 000c      	moveal %fp@(12),%a1                         
   68a9c:	2f0a           	movel %a2,%sp@-                             
   68a9e:	2f02           	movel %d2,%sp@-                             
  rtems_filesystem_location_info_t    loc;                            
  int                                 i;                              
  const char                         *name_start;                     
  int                                 result;                         
                                                                      
  rtems_filesystem_get_start_loc( sympath, &i, &loc );                
   68aa0:	742f           	moveq #47,%d2                               
   68aa2:	1211           	moveb %a1@,%d1                              
   68aa4:	1001           	moveb %d1,%d0                               
   68aa6:	49c0           	extbl %d0                                   
   68aa8:	b480           	cmpl %d0,%d2                                
   68aaa:	670e           	beqs 68aba <symlink+0x26>                   
   68aac:	143c 005c      	moveb #92,%d2                               
   68ab0:	b480           	cmpl %d0,%d2                                
   68ab2:	6706           	beqs 68aba <symlink+0x26>                   
   68ab4:	4a01           	tstb %d1                                    
   68ab6:	6600 0092      	bnew 68b4a <symlink+0xb6>                   
   68aba:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   
   68ac0:	45ee ffe8      	lea %fp@(-24),%a2                           
   68ac4:	7001           	moveq #1,%d0                                
   68ac6:	24a8 0018      	movel %a0@(24),%a2@                         
   68aca:	2d68 001c ffec 	movel %a0@(28),%fp@(-20)                    
   68ad0:	2d68 0020 fff0 	movel %a0@(32),%fp@(-16)                    
   68ad6:	2d68 0024 fff4 	movel %a0@(36),%fp@(-12)                    
   68adc:	2d68 0028 fff8 	movel %a0@(40),%fp@(-8)                     
                                                                      
  if ( !loc.ops->evalformake_h ) {                                    
   68ae2:	206e fff4      	moveal %fp@(-12),%a0                        
   68ae6:	2068 0004      	moveal %a0@(4),%a0                          
   68aea:	4a88           	tstl %a0                                    
   68aec:	6700 008a      	beqw 68b78 <symlink+0xe4>                   
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*loc.ops->evalformake_h)( &sympath[i], &loc, &name_start );
   68af0:	486e fffc      	pea %fp@(-4)                                
   68af4:	2f0a           	movel %a2,%sp@-                             
   68af6:	4871 0800      	pea %a1@(00000000,%d0:l)                    
   68afa:	4e90           	jsr %a0@                                    
  if ( result != 0 )                                                  
   68afc:	4fef 000c      	lea %sp@(12),%sp                            
   68b00:	4a80           	tstl %d0                                    
   68b02:	6600 0092      	bnew 68b96 <symlink+0x102>                  
    return -1;                                                        
                                                                      
  if ( !loc.ops->symlink_h ) {                                        
   68b06:	226e fff4      	moveal %fp@(-12),%a1                        
   68b0a:	2069 0038      	moveal %a1@(56),%a0                         
   68b0e:	4a88           	tstl %a0                                    
   68b10:	6700 0094      	beqw 68ba6 <symlink+0x112>                  
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*loc.ops->symlink_h)( &loc, actualpath, name_start);      
   68b14:	2f2e fffc      	movel %fp@(-4),%sp@-                        
   68b18:	2f2e 0008      	movel %fp@(8),%sp@-                         
   68b1c:	2f0a           	movel %a2,%sp@-                             
   68b1e:	4e90           	jsr %a0@                                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   68b20:	206e fff4      	moveal %fp@(-12),%a0                        
  if ( !loc.ops->symlink_h ) {                                        
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*loc.ops->symlink_h)( &loc, actualpath, name_start);      
   68b24:	2400           	movel %d0,%d2                               
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   68b26:	4fef 000c      	lea %sp@(12),%sp                            
   68b2a:	4a88           	tstl %a0                                    
   68b2c:	670e           	beqs 68b3c <symlink+0xa8>                   
   68b2e:	2068 001c      	moveal %a0@(28),%a0                         
   68b32:	4a88           	tstl %a0                                    
   68b34:	6706           	beqs 68b3c <symlink+0xa8>                   
   68b36:	2f0a           	movel %a2,%sp@-                             
   68b38:	4e90           	jsr %a0@                                    
   68b3a:	588f           	addql #4,%sp                                
                                                                      
  return result;                                                      
}                                                                     
   68b3c:	2002           	movel %d2,%d0                               
   68b3e:	242e ffe0      	movel %fp@(-32),%d2                         
   68b42:	246e ffe4      	moveal %fp@(-28),%a2                        
   68b46:	4e5e           	unlk %fp                                    
   68b48:	4e75           	rts                                         
  rtems_filesystem_location_info_t    loc;                            
  int                                 i;                              
  const char                         *name_start;                     
  int                                 result;                         
                                                                      
  rtems_filesystem_get_start_loc( sympath, &i, &loc );                
   68b4a:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   
   68b50:	45ee ffe8      	lea %fp@(-24),%a2                           
   68b54:	5888           	addql #4,%a0                                
   68b56:	4280           	clrl %d0                                    
   68b58:	2498           	movel %a0@+,%a2@                            
   68b5a:	2d58 ffec      	movel %a0@+,%fp@(-20)                       
   68b5e:	2d58 fff0      	movel %a0@+,%fp@(-16)                       
   68b62:	2d58 fff4      	movel %a0@+,%fp@(-12)                       
   68b66:	2d50 fff8      	movel %a0@,%fp@(-8)                         
                                                                      
  if ( !loc.ops->evalformake_h ) {                                    
   68b6a:	206e fff4      	moveal %fp@(-12),%a0                        
   68b6e:	2068 0004      	moveal %a0@(4),%a0                          
   68b72:	4a88           	tstl %a0                                    
   68b74:	6600 ff7a      	bnew 68af0 <symlink+0x5c>                   
  if ( result != 0 )                                                  
    return -1;                                                        
                                                                      
  if ( !loc.ops->symlink_h ) {                                        
    rtems_filesystem_freenode( &loc );                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   68b78:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   68b7e:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
   68b80:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   68b82:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  result = (*loc.ops->symlink_h)( &loc, actualpath, name_start);      
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   68b88:	2002           	movel %d2,%d0                               <== NOT EXECUTED
   68b8a:	242e ffe0      	movel %fp@(-32),%d2                         <== NOT EXECUTED
   68b8e:	246e ffe4      	moveal %fp@(-28),%a2                        <== NOT EXECUTED
   68b92:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   68b94:	4e75           	rts                                         <== NOT EXECUTED
  if ( !loc.ops->evalformake_h ) {                                    
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*loc.ops->evalformake_h)( &sympath[i], &loc, &name_start );
  if ( result != 0 )                                                  
   68b96:	74ff           	moveq #-1,%d2                               
  result = (*loc.ops->symlink_h)( &loc, actualpath, name_start);      
                                                                      
  rtems_filesystem_freenode( &loc );                                  
                                                                      
  return result;                                                      
}                                                                     
   68b98:	2002           	movel %d2,%d0                               
   68b9a:	242e ffe0      	movel %fp@(-32),%d2                         
   68b9e:	246e ffe4      	moveal %fp@(-28),%a2                        
   68ba2:	4e5e           	unlk %fp                                    
   68ba4:	4e75           	rts                                         
  result = (*loc.ops->evalformake_h)( &sympath[i], &loc, &name_start );
  if ( result != 0 )                                                  
    return -1;                                                        
                                                                      
  if ( !loc.ops->symlink_h ) {                                        
    rtems_filesystem_freenode( &loc );                                
   68ba6:	2069 001c      	moveal %a1@(28),%a0                         <== NOT EXECUTED
   68baa:	4a88           	tstl %a0                                    <== NOT EXECUTED
   68bac:	67ca           	beqs 68b78 <symlink+0xe4>                   <== NOT EXECUTED
   68bae:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   68bb0:	74ff           	moveq #-1,%d2                               <== NOT EXECUTED
  result = (*loc.ops->evalformake_h)( &sympath[i], &loc, &name_start );
  if ( result != 0 )                                                  
    return -1;                                                        
                                                                      
  if ( !loc.ops->symlink_h ) {                                        
    rtems_filesystem_freenode( &loc );                                
   68bb2:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   68bb4:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   68bb6:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   68bbc:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   68bbe:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
   68bc4:	60c2           	bras 68b88 <symlink+0xf4>                   <== NOT EXECUTED
	...                                                                  
                                                                      
00052e28 <tcsetattr>:                                                 
int tcsetattr(                                                        
  int             fd,                                                 
  int             opt,                                                
  struct termios *tp                                                  
)                                                                     
{                                                                     
   52e28:	4e56 0000      	linkw %fp,#0                                
   52e2c:	202e 000c      	movel %fp@(12),%d0                          
   52e30:	2f03           	movel %d3,%sp@-                             
   52e32:	262e 0010      	movel %fp@(16),%d3                          
   52e36:	2f02           	movel %d2,%sp@-                             
   52e38:	242e 0008      	movel %fp@(8),%d2                           
  switch (opt) {                                                      
   52e3c:	4a80           	tstl %d0                                    
   52e3e:	6738           	beqs 52e78 <tcsetattr+0x50>                 
   52e40:	7201           	moveq #1,%d1                                <== NOT EXECUTED
   52e42:	b280           	cmpl %d0,%d1                                <== NOT EXECUTED
   52e44:	671c           	beqs 52e62 <tcsetattr+0x3a>                 <== NOT EXECUTED
  default:                                                            
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   52e46:	4eb9 0005 81b4 	jsr 581b4 <__errno>                         <== NOT EXECUTED
   52e4c:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   52e4e:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
     * Fall through to....                                            
     */                                                               
  case TCSANOW:                                                       
    return ioctl( fd, RTEMS_IO_SET_ATTRIBUTES, tp );                  
  }                                                                   
}                                                                     
   52e54:	242e fff8      	movel %fp@(-8),%d2                          <== NOT EXECUTED
   52e58:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   52e5a:	262e fffc      	movel %fp@(-4),%d3                          <== NOT EXECUTED
   52e5e:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   52e60:	4e75           	rts                                         <== NOT EXECUTED
  switch (opt) {                                                      
  default:                                                            
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  case TCSADRAIN:                                                     
    if (ioctl( fd, RTEMS_IO_TCDRAIN, NULL ) < 0)                      
   52e62:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   52e64:	4878 0003      	pea 3 <DIVIDE>                              <== NOT EXECUTED
   52e68:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   52e6a:	4eb9 0005 69f4 	jsr 569f4 <ioctl>                           <== NOT EXECUTED
   52e70:	4fef 000c      	lea %sp@(12),%sp                            <== NOT EXECUTED
   52e74:	4a80           	tstl %d0                                    <== NOT EXECUTED
   52e76:	6ddc           	blts 52e54 <tcsetattr+0x2c>                 <== NOT EXECUTED
    	return -1;                                                       
    /*                                                                
     * Fall through to....                                            
     */                                                               
  case TCSANOW:                                                       
    return ioctl( fd, RTEMS_IO_SET_ATTRIBUTES, tp );                  
   52e78:	2d43 0010      	movel %d3,%fp@(16)                          
   52e7c:	7002           	moveq #2,%d0                                
   52e7e:	2d42 0008      	movel %d2,%fp@(8)                           
  }                                                                   
}                                                                     
   52e82:	242e fff8      	movel %fp@(-8),%d2                          
   52e86:	262e fffc      	movel %fp@(-4),%d3                          
    	return -1;                                                       
    /*                                                                
     * Fall through to....                                            
     */                                                               
  case TCSANOW:                                                       
    return ioctl( fd, RTEMS_IO_SET_ATTRIBUTES, tp );                  
   52e8a:	2d40 000c      	movel %d0,%fp@(12)                          
  }                                                                   
}                                                                     
   52e8e:	4e5e           	unlk %fp                                    
    	return -1;                                                       
    /*                                                                
     * Fall through to....                                            
     */                                                               
  case TCSANOW:                                                       
    return ioctl( fd, RTEMS_IO_SET_ATTRIBUTES, tp );                  
   52e90:	4ef9 0005 69f4 	jmp 569f4 <ioctl>                           
	...                                                                  
                                                                      
000459f4 <timer_settime>:                                             
  timer_t                  timerid,                                   
  int                      flags,                                     
  const struct itimerspec *value,                                     
  struct itimerspec       *ovalue                                     
)                                                                     
{                                                                     
   459f4:	4e56 ffc8      	linkw %fp,#-56                              
   459f8:	202e 000c      	movel %fp@(12),%d0                          
   459fc:	48d7 3c1c      	moveml %d2-%d4/%a2-%a5,%sp@                 
   45a00:	266e 0010      	moveal %fp@(16),%a3                         
   45a04:	282e 0014      	movel %fp@(20),%d4                          
  Objects_Locations    location;                                      
  bool                 activated;                                     
  uint32_t             initial_period;                                
  struct itimerspec    normalize;                                     
                                                                      
  if ( !value )                                                       
   45a08:	4a8b           	tstl %a3                                    
   45a0a:	6700 0194      	beqw 45ba0 <timer_settime+0x1ac>            
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  /* First, it verifies if the structure "value" is correct */        
  if ( ( value->it_value.tv_nsec >= TOD_NANOSECONDS_PER_SECOND ) ||   
   45a0e:	223c 3b9a c9ff 	movel #999999999,%d1                        
   45a14:	b2ab 000c      	cmpl %a3@(12),%d1                           
   45a18:	6500 0186      	bcsw 45ba0 <timer_settime+0x1ac>            
       ( value->it_value.tv_nsec < 0 ) ||                             
       ( value->it_interval.tv_nsec >= TOD_NANOSECONDS_PER_SECOND) || 
   45a1c:	b2ab 0004      	cmpl %a3@(4),%d1                            
   45a20:	6500 017e      	bcsw 45ba0 <timer_settime+0x1ac>            
       ( value->it_interval.tv_nsec < 0 )) {                          
    /* The number of nanoseconds is not correct */                    
    rtems_set_errno_and_return_minus_one( EINVAL );                   
  }                                                                   
                                                                      
  if ( flags != TIMER_ABSTIME && flags != POSIX_TIMER_RELATIVE ) {    
   45a24:	7204           	moveq #4,%d1                                
   45a26:	b280           	cmpl %d0,%d1                                
   45a28:	6700 00fa      	beqw 45b24 <timer_settime+0x130>            
   45a2c:	4a80           	tstl %d0                                    
   45a2e:	6600 0170      	bnew 45ba0 <timer_settime+0x1ac>            
    rtems_set_errno_and_return_minus_one( EINVAL );                   
  }                                                                   
                                                                      
  normalize = *value;                                                 
   45a32:	260e           	movel %fp,%d3                               
   45a34:	0683 ffff ffe4 	addil #-28,%d3                              
   45a3a:	204b           	moveal %a3,%a0                              
   45a3c:	2243           	moveal %d3,%a1                              
   45a3e:	240e           	movel %fp,%d2                               
   45a40:	0682 ffff ffe8 	addil #-24,%d2                              
   45a46:	49ee ffec      	lea %fp@(-20),%a4                           
   45a4a:	4bee fff0      	lea %fp@(-16),%a5                           
   45a4e:	2298           	movel %a0@+,%a1@                            
   45a50:	2242           	moveal %d2,%a1                              
   45a52:	2298           	movel %a0@+,%a1@                            
   45a54:	2898           	movel %a0@+,%a4@                            
   45a56:	2a90           	movel %a0@,%a5@                             
RTEMS_INLINE_ROUTINE POSIX_Timer_Control *_POSIX_Timer_Get (          
  timer_t            id,                                              
  Objects_Locations *location                                         
)                                                                     
{                                                                     
  return (POSIX_Timer_Control *)                                      
   45a58:	486e fffc      	pea %fp@(-4)                                
   45a5c:	2f2e 0008      	movel %fp@(8),%sp@-                         
   45a60:	4879 0005 ff4c 	pea 5ff4c <_POSIX_Timer_Information>        
   45a66:	4eb9 0004 7e7c 	jsr 47e7c <_Objects_Get>                    
   * something with the structure of times of the timer: to stop, start
   * or start it again                                                
   */                                                                 
                                                                      
  ptimer = _POSIX_Timer_Get( timerid, &location );                    
  switch ( location ) {                                               
   45a6c:	4fef 000c      	lea %sp@(12),%sp                            
   45a70:	2440           	moveal %d0,%a2                              
   45a72:	4aae fffc      	tstl %fp@(-4)                               
   45a76:	6600 0128      	bnew 45ba0 <timer_settime+0x1ac>            
                                                                      
    case OBJECTS_LOCAL:                                               
      /* First, it verifies if the timer must be stopped */           
      if ( normalize.it_value.tv_sec == 0 && normalize.it_value.tv_nsec == 0 ) {
   45a7a:	4aae ffec      	tstl %fp@(-20)                              
   45a7e:	6608           	bnes 45a88 <timer_settime+0x94>             
   45a80:	4aae fff0      	tstl %fp@(-16)                              
   45a84:	6700 0132      	beqw 45bb8 <timer_settime+0x1c4>            
        _Thread_Enable_dispatch();                                    
        return 0;                                                     
       }                                                              
                                                                      
       /* Convert from seconds and nanoseconds to ticks */            
       ptimer->ticks  = _Timespec_To_ticks( &value->it_interval );    
   45a88:	2f0b           	movel %a3,%sp@-                             
   45a8a:	47f9 0004 95b4 	lea 495b4 <_Timespec_To_ticks>,%a3          
   45a90:	4e93           	jsr %a3@                                    
   45a92:	2540 0062      	movel %d0,%a2@(98)                          
       initial_period = _Timespec_To_ticks( &normalize.it_value );    
   45a96:	2f0c           	movel %a4,%sp@-                             
   45a98:	4e93           	jsr %a3@                                    
                                                                      
                                                                      
       activated = _POSIX_Timer_Insert_helper(                        
   45a9a:	2f0a           	movel %a2,%sp@-                             
   45a9c:	4879 0004 5cc0 	pea 45cc0 <_POSIX_Timer_TSR>                
   45aa2:	2f2a 0008      	movel %a2@(8),%sp@-                         
   45aa6:	2f00           	movel %d0,%sp@-                             
   45aa8:	486a 0010      	pea %a2@(16)                                
   45aac:	4eb9 0004 bf48 	jsr 4bf48 <_POSIX_Timer_Insert_helper>      
         initial_period,                                              
         ptimer->Object.id,                                           
         _POSIX_Timer_TSR,                                            
         ptimer                                                       
       );                                                             
       if ( !activated ) {                                            
   45ab2:	4fef 001c      	lea %sp@(28),%sp                            
   45ab6:	4a00           	tstb %d0                                    
   45ab8:	6700 0166      	beqw 45c20 <timer_settime+0x22c>            
                                                                      
       /*                                                             
        * The timer has been started and is running.  So we return the
        * old ones in "ovalue"                                        
        */                                                            
       if ( ovalue )                                                  
   45abc:	4a84           	tstl %d4                                    
   45abe:	6700 0172      	beqw 45c32 <timer_settime+0x23e>            
         *ovalue = ptimer->timer_data;                                
   45ac2:	220a           	movel %a2,%d1                               
   45ac4:	0681 0000 0052 	addil #82,%d1                               
   45aca:	2044           	moveal %d4,%a0                              
   45acc:	2241           	moveal %d1,%a1                              
   45ace:	200a           	movel %a2,%d0                               
   45ad0:	0680 0000 0056 	addil #86,%d0                               
   45ad6:	47ea 005a      	lea %a2@(90),%a3                            
   45ada:	280a           	movel %a2,%d4                               
   45adc:	0684 0000 005e 	addil #94,%d4                               
   45ae2:	20d1           	movel %a1@,%a0@+                            
   45ae4:	2240           	moveal %d0,%a1                              
   45ae6:	20d1           	movel %a1@,%a0@+                            
   45ae8:	2244           	moveal %d4,%a1                              
   45aea:	20d3           	movel %a3@,%a0@+                            
   45aec:	2091           	movel %a1@,%a0@                             
       ptimer->timer_data = normalize;                                
   45aee:	2041           	moveal %d1,%a0                              
   45af0:	2243           	moveal %d3,%a1                              
   45af2:	2091           	movel %a1@,%a0@                             
   45af4:	2040           	moveal %d0,%a0                              
   45af6:	2242           	moveal %d2,%a1                              
   45af8:	2091           	movel %a1@,%a0@                             
   45afa:	2044           	moveal %d4,%a0                              
   45afc:	2694           	movel %a4@,%a3@                             
   45afe:	2095           	movel %a5@,%a0@                             
                                                                      
       /* Indicate that the time is running */                        
       ptimer->state = POSIX_TIMER_STATE_CREATE_RUN;                  
   45b00:	7003           	moveq #3,%d0                                
   45b02:	1540 003c      	moveb %d0,%a2@(60)                          
       _TOD_Get( &ptimer->time );                                     
   45b06:	486a 006a      	pea %a2@(106)                               
   45b0a:	4eb9 0004 7470 	jsr 47470 <_TOD_Get>                        
       _Thread_Enable_dispatch();                                     
   45b10:	4eb9 0004 868c 	jsr 4868c <_Thread_Enable_dispatch>         
       return 0;                                                      
   45b16:	588f           	addql #4,%sp                                
       ptimer->timer_data = normalize;                                
                                                                      
       /* Indicate that the time is running */                        
       ptimer->state = POSIX_TIMER_STATE_CREATE_RUN;                  
       _TOD_Get( &ptimer->time );                                     
       _Thread_Enable_dispatch();                                     
   45b18:	4280           	clrl %d0                                    
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one( EINVAL );                     
}                                                                     
   45b1a:	4cee 3c1c ffc8 	moveml %fp@(-56),%d2-%d4/%a2-%a5            
   45b20:	4e5e           	unlk %fp                                    
   45b22:	4e75           	rts                                         
                                                                      
  if ( flags != TIMER_ABSTIME && flags != POSIX_TIMER_RELATIVE ) {    
    rtems_set_errno_and_return_minus_one( EINVAL );                   
  }                                                                   
                                                                      
  normalize = *value;                                                 
   45b24:	260e           	movel %fp,%d3                               
   45b26:	0683 ffff ffe4 	addil #-28,%d3                              
   45b2c:	204b           	moveal %a3,%a0                              
   45b2e:	2243           	moveal %d3,%a1                              
   45b30:	240e           	movel %fp,%d2                               
   45b32:	0682 ffff ffe8 	addil #-24,%d2                              
   45b38:	200e           	movel %fp,%d0                               
   45b3a:	0680 ffff ffec 	addil #-20,%d0                              
  /* Convert absolute to relative time */                             
  if (flags == TIMER_ABSTIME) {                                       
    struct timespec now;                                              
    _TOD_Get( &now );                                                 
    /* Check for seconds in the past */                               
    if ( _Timespec_Greater_than( &now, &normalize.it_value ) )        
   45b40:	2840           	moveal %d0,%a4                              
                                                                      
  if ( flags != TIMER_ABSTIME && flags != POSIX_TIMER_RELATIVE ) {    
    rtems_set_errno_and_return_minus_one( EINVAL );                   
  }                                                                   
                                                                      
  normalize = *value;                                                 
   45b42:	4bee fff0      	lea %fp@(-16),%a5                           
                                                                      
  /* Convert absolute to relative time */                             
  if (flags == TIMER_ABSTIME) {                                       
    struct timespec now;                                              
    _TOD_Get( &now );                                                 
   45b46:	45ee fff4      	lea %fp@(-12),%a2                           
                                                                      
  if ( flags != TIMER_ABSTIME && flags != POSIX_TIMER_RELATIVE ) {    
    rtems_set_errno_and_return_minus_one( EINVAL );                   
  }                                                                   
                                                                      
  normalize = *value;                                                 
   45b4a:	2298           	movel %a0@+,%a1@                            
   45b4c:	2242           	moveal %d2,%a1                              
   45b4e:	2298           	movel %a0@+,%a1@                            
   45b50:	2898           	movel %a0@+,%a4@                            
   45b52:	2a90           	movel %a0@,%a5@                             
                                                                      
  /* Convert absolute to relative time */                             
  if (flags == TIMER_ABSTIME) {                                       
    struct timespec now;                                              
    _TOD_Get( &now );                                                 
   45b54:	2f0a           	movel %a2,%sp@-                             
   45b56:	4eb9 0004 7470 	jsr 47470 <_TOD_Get>                        
    /* Check for seconds in the past */                               
    if ( _Timespec_Greater_than( &now, &normalize.it_value ) )        
   45b5c:	2f0c           	movel %a4,%sp@-                             
   45b5e:	2f0a           	movel %a2,%sp@-                             
   45b60:	4eb9 0004 952c 	jsr 4952c <_Timespec_Greater_than>          
   45b66:	4fef 000c      	lea %sp@(12),%sp                            
   45b6a:	4a00           	tstb %d0                                    
   45b6c:	6632           	bnes 45ba0 <timer_settime+0x1ac>            
      rtems_set_errno_and_return_minus_one( EINVAL );                 
    _Timespec_Subtract( &now, &normalize.it_value, &normalize.it_value );
   45b6e:	2f0c           	movel %a4,%sp@-                             
   45b70:	2f0c           	movel %a4,%sp@-                             
   45b72:	2f0a           	movel %a2,%sp@-                             
   45b74:	4eb9 0004 9560 	jsr 49560 <_Timespec_Subtract>              
   45b7a:	4fef 000c      	lea %sp@(12),%sp                            
   45b7e:	486e fffc      	pea %fp@(-4)                                
   45b82:	2f2e 0008      	movel %fp@(8),%sp@-                         
   45b86:	4879 0005 ff4c 	pea 5ff4c <_POSIX_Timer_Information>        
   45b8c:	4eb9 0004 7e7c 	jsr 47e7c <_Objects_Get>                    
   * something with the structure of times of the timer: to stop, start
   * or start it again                                                
   */                                                                 
                                                                      
  ptimer = _POSIX_Timer_Get( timerid, &location );                    
  switch ( location ) {                                               
   45b92:	4fef 000c      	lea %sp@(12),%sp                            
   45b96:	2440           	moveal %d0,%a2                              
   45b98:	4aae fffc      	tstl %fp@(-4)                               
   45b9c:	6700 fedc      	beqw 45a7a <timer_settime+0x86>             
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one( EINVAL );                     
   45ba0:	4eb9 0004 f4d0 	jsr 4f4d0 <__errno>                         
   45ba6:	7216           	moveq #22,%d1                               
   45ba8:	2040           	moveal %d0,%a0                              
   45baa:	70ff           	moveq #-1,%d0                               
}                                                                     
   45bac:	4cee 3c1c ffc8 	moveml %fp@(-56),%d2-%d4/%a2-%a5            
#endif                                                                
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one( EINVAL );                     
   45bb2:	2081           	movel %d1,%a0@                              
}                                                                     
   45bb4:	4e5e           	unlk %fp                                    
   45bb6:	4e75           	rts                                         
                                                                      
    case OBJECTS_LOCAL:                                               
      /* First, it verifies if the timer must be stopped */           
      if ( normalize.it_value.tv_sec == 0 && normalize.it_value.tv_nsec == 0 ) {
         /* Stop the timer */                                         
         (void) _Watchdog_Remove( &ptimer->Timer );                   
   45bb8:	486a 0010      	pea %a2@(16)                                
   45bbc:	4eb9 0004 9a08 	jsr 49a08 <_Watchdog_Remove>                
         /* The old data of the timer are returned */                 
         if ( ovalue )                                                
   45bc2:	588f           	addql #4,%sp                                
   45bc4:	4a84           	tstl %d4                                    
   45bc6:	6700 00b6      	beqw 45c7e <timer_settime+0x28a>            
           *ovalue = ptimer->timer_data;                              
   45bca:	220a           	movel %a2,%d1                               
   45bcc:	0681 0000 0052 	addil #82,%d1                               
   45bd2:	2244           	moveal %d4,%a1                              
   45bd4:	2041           	moveal %d1,%a0                              
   45bd6:	200a           	movel %a2,%d0                               
   45bd8:	0680 0000 0056 	addil #86,%d0                               
   45bde:	47ea 005a      	lea %a2@(90),%a3                            
   45be2:	280a           	movel %a2,%d4                               
   45be4:	0684 0000 005e 	addil #94,%d4                               
   45bea:	22d0           	movel %a0@,%a1@+                            
   45bec:	2040           	moveal %d0,%a0                              
   45bee:	22d0           	movel %a0@,%a1@+                            
   45bf0:	2044           	moveal %d4,%a0                              
   45bf2:	22d3           	movel %a3@,%a1@+                            
   45bf4:	2290           	movel %a0@,%a1@                             
         /* The new data are set */                                   
         ptimer->timer_data = normalize;                              
   45bf6:	2241           	moveal %d1,%a1                              
   45bf8:	2043           	moveal %d3,%a0                              
   45bfa:	2290           	movel %a0@,%a1@                             
   45bfc:	2240           	moveal %d0,%a1                              
   45bfe:	2042           	moveal %d2,%a0                              
   45c00:	2290           	movel %a0@,%a1@                             
   45c02:	2244           	moveal %d4,%a1                              
   45c04:	2694           	movel %a4@,%a3@                             
   45c06:	2295           	movel %a5@,%a1@                             
         /* Indicates that the timer is created and stopped */        
         ptimer->state = POSIX_TIMER_STATE_CREATE_STOP;               
   45c08:	7004           	moveq #4,%d0                                
   45c0a:	1540 003c      	moveb %d0,%a2@(60)                          
         /* Returns with success */                                   
        _Thread_Enable_dispatch();                                    
   45c0e:	4eb9 0004 868c 	jsr 4868c <_Thread_Enable_dispatch>         
   45c14:	4280           	clrl %d0                                    
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one( EINVAL );                     
}                                                                     
   45c16:	4cee 3c1c ffc8 	moveml %fp@(-56),%d2-%d4/%a2-%a5            
   45c1c:	4e5e           	unlk %fp                                    
   45c1e:	4e75           	rts                                         
         ptimer->Object.id,                                           
         _POSIX_Timer_TSR,                                            
         ptimer                                                       
       );                                                             
       if ( !activated ) {                                            
         _Thread_Enable_dispatch();                                   
   45c20:	4eb9 0004 868c 	jsr 4868c <_Thread_Enable_dispatch>         
   45c26:	4280           	clrl %d0                                    
    case OBJECTS_ERROR:                                               
      break;                                                          
  }                                                                   
                                                                      
  rtems_set_errno_and_return_minus_one( EINVAL );                     
}                                                                     
   45c28:	4cee 3c1c ffc8 	moveml %fp@(-56),%d2-%d4/%a2-%a5            
   45c2e:	4e5e           	unlk %fp                                    
   45c30:	4e75           	rts                                         
   45c32:	220a           	movel %a2,%d1                               
   45c34:	0681 0000 0052 	addil #82,%d1                               
        * The timer has been started and is running.  So we return the
        * old ones in "ovalue"                                        
        */                                                            
       if ( ovalue )                                                  
         *ovalue = ptimer->timer_data;                                
       ptimer->timer_data = normalize;                                
   45c3a:	2041           	moveal %d1,%a0                              
   45c3c:	2243           	moveal %d3,%a1                              
   45c3e:	200a           	movel %a2,%d0                               
   45c40:	0680 0000 0056 	addil #86,%d0                               
   45c46:	47ea 005a      	lea %a2@(90),%a3                            
   45c4a:	280a           	movel %a2,%d4                               
   45c4c:	0684 0000 005e 	addil #94,%d4                               
   45c52:	2091           	movel %a1@,%a0@                             
   45c54:	2040           	moveal %d0,%a0                              
   45c56:	2242           	moveal %d2,%a1                              
   45c58:	2091           	movel %a1@,%a0@                             
   45c5a:	2044           	moveal %d4,%a0                              
   45c5c:	2694           	movel %a4@,%a3@                             
   45c5e:	2095           	movel %a5@,%a0@                             
                                                                      
       /* Indicate that the time is running */                        
       ptimer->state = POSIX_TIMER_STATE_CREATE_RUN;                  
   45c60:	7003           	moveq #3,%d0                                
   45c62:	1540 003c      	moveb %d0,%a2@(60)                          
       _TOD_Get( &ptimer->time );                                     
   45c66:	486a 006a      	pea %a2@(106)                               
   45c6a:	4eb9 0004 7470 	jsr 47470 <_TOD_Get>                        
       _Thread_Enable_dispatch();                                     
   45c70:	4eb9 0004 868c 	jsr 4868c <_Thread_Enable_dispatch>         
       return 0;                                                      
   45c76:	588f           	addql #4,%sp                                
       ptimer->timer_data = normalize;                                
                                                                      
       /* Indicate that the time is running */                        
       ptimer->state = POSIX_TIMER_STATE_CREATE_RUN;                  
       _TOD_Get( &ptimer->time );                                     
       _Thread_Enable_dispatch();                                     
   45c78:	4280           	clrl %d0                                    
   45c7a:	6000 fe9e      	braw 45b1a <timer_settime+0x126>            
   45c7e:	220a           	movel %a2,%d1                               
   45c80:	0681 0000 0052 	addil #82,%d1                               
         (void) _Watchdog_Remove( &ptimer->Timer );                   
         /* The old data of the timer are returned */                 
         if ( ovalue )                                                
           *ovalue = ptimer->timer_data;                              
         /* The new data are set */                                   
         ptimer->timer_data = normalize;                              
   45c86:	2241           	moveal %d1,%a1                              
   45c88:	2043           	moveal %d3,%a0                              
   45c8a:	200a           	movel %a2,%d0                               
   45c8c:	0680 0000 0056 	addil #86,%d0                               
   45c92:	47ea 005a      	lea %a2@(90),%a3                            
   45c96:	280a           	movel %a2,%d4                               
   45c98:	0684 0000 005e 	addil #94,%d4                               
   45c9e:	2290           	movel %a0@,%a1@                             
   45ca0:	2240           	moveal %d0,%a1                              
   45ca2:	2042           	moveal %d2,%a0                              
   45ca4:	2290           	movel %a0@,%a1@                             
   45ca6:	2244           	moveal %d4,%a1                              
   45ca8:	2694           	movel %a4@,%a3@                             
   45caa:	2295           	movel %a5@,%a1@                             
         /* Indicates that the timer is created and stopped */        
         ptimer->state = POSIX_TIMER_STATE_CREATE_STOP;               
   45cac:	7004           	moveq #4,%d0                                
   45cae:	1540 003c      	moveb %d0,%a2@(60)                          
         /* Returns with success */                                   
        _Thread_Enable_dispatch();                                    
   45cb2:	4eb9 0004 868c 	jsr 4868c <_Thread_Enable_dispatch>         
   45cb8:	4280           	clrl %d0                                    
   45cba:	6000 ff5a      	braw 45c16 <timer_settime+0x222>            
	...                                                                  
                                                                      
00045a7c <ualarm>:                                                    
                                                                      
useconds_t ualarm(                                                    
  useconds_t useconds,                                                
  useconds_t interval                                                 
)                                                                     
{                                                                     
   45a7c:	4e56 ffe8      	linkw %fp,#-24                              
   45a80:	48d7 041c      	moveml %d2-%d4/%a2,%sp@                     
   45a84:	242e 0008      	movel %fp@(8),%d2                           
                                                                      
  /*                                                                  
   *  Initialize the timer used to implement alarm().                 
   */                                                                 
                                                                      
  if ( !the_timer->routine ) {                                        
   45a88:	4ab9 0006 116a 	tstl 6116a <_POSIX_signals_Ualarm_timer+0x1c>
   45a8e:	6700 0086      	beqw 45b16 <ualarm+0x9a>                    
    _Watchdog_Initialize( the_timer, _POSIX_signals_Ualarm_TSR, 0, NULL );
  } else {                                                            
    Watchdog_States state;                                            
                                                                      
    state = _Watchdog_Remove( the_timer );                            
   45a92:	4879 0006 114e 	pea 6114e <_POSIX_signals_Ualarm_timer>     
   45a98:	4eb9 0004 96fc 	jsr 496fc <_Watchdog_Remove>                
    if ( (state == WATCHDOG_ACTIVE) || (state == WATCHDOG_REMOVE_IT) ) {
   45a9e:	588f           	addql #4,%sp                                
   45aa0:	7201           	moveq #1,%d1                                
   45aa2:	5580           	subql #2,%d0                                
   45aa4:	b280           	cmpl %d0,%d1                                
   45aa6:	6400 0098      	bccw 45b40 <ualarm+0xc4>                    
   45aaa:	4283           	clrl %d3                                    <== NOT EXECUTED
  /*                                                                  
   *  If useconds is non-zero, then the caller wants to schedule      
   *  the alarm repeatedly at that interval.  If the interval is      
   *  less than a single clock tick, then fudge it to a clock tick.   
   */                                                                 
  if ( useconds ) {                                                   
   45aac:	4a82           	tstl %d2                                    <== NOT EXECUTED
   45aae:	660c           	bnes 45abc <ualarm+0x40>                    <== NOT EXECUTED
                                                                      
    _Watchdog_Insert_ticks( the_timer, _Timespec_To_ticks( &tp ) );   
  }                                                                   
                                                                      
  return remaining;                                                   
}                                                                     
   45ab0:	2003           	movel %d3,%d0                               
   45ab2:	4cee 041c ffe8 	moveml %fp@(-24),%d2-%d4/%a2                
   45ab8:	4e5e           	unlk %fp                                    
   45aba:	4e75           	rts                                         
  if ( useconds ) {                                                   
    Watchdog_Interval ticks;                                          
                                                                      
    tp.tv_sec = useconds / TOD_MICROSECONDS_PER_SECOND;               
    tp.tv_nsec = (useconds % TOD_MICROSECONDS_PER_SECOND) * 1000;     
    ticks = _Timespec_To_ticks( &tp );                                
   45abc:	280e           	movel %fp,%d4                               
   *  less than a single clock tick, then fudge it to a clock tick.   
   */                                                                 
  if ( useconds ) {                                                   
    Watchdog_Interval ticks;                                          
                                                                      
    tp.tv_sec = useconds / TOD_MICROSECONDS_PER_SECOND;               
   45abe:	223c 000f 4240 	movel #1000000,%d1                          
    tp.tv_nsec = (useconds % TOD_MICROSECONDS_PER_SECOND) * 1000;     
    ticks = _Timespec_To_ticks( &tp );                                
   45ac4:	5184           	subql #8,%d4                                
   45ac6:	45f9 0004 9214 	lea 49214 <_Timespec_To_ticks>,%a2          
   *  less than a single clock tick, then fudge it to a clock tick.   
   */                                                                 
  if ( useconds ) {                                                   
    Watchdog_Interval ticks;                                          
                                                                      
    tp.tv_sec = useconds / TOD_MICROSECONDS_PER_SECOND;               
   45acc:	4c41 2000      	remul %d1,%d0,%d2                           
   45ad0:	4c41 2002      	remul %d1,%d2,%d2                           
    tp.tv_nsec = (useconds % TOD_MICROSECONDS_PER_SECOND) * 1000;     
   45ad4:	223c 0000 03e8 	movel #1000,%d1                             
   *  less than a single clock tick, then fudge it to a clock tick.   
   */                                                                 
  if ( useconds ) {                                                   
    Watchdog_Interval ticks;                                          
                                                                      
    tp.tv_sec = useconds / TOD_MICROSECONDS_PER_SECOND;               
   45ada:	2d42 fff8      	movel %d2,%fp@(-8)                          
    tp.tv_nsec = (useconds % TOD_MICROSECONDS_PER_SECOND) * 1000;     
   45ade:	4c00 1800      	mulsl %d0,%d1                               
    ticks = _Timespec_To_ticks( &tp );                                
   45ae2:	2f04           	movel %d4,%sp@-                             
   */                                                                 
  if ( useconds ) {                                                   
    Watchdog_Interval ticks;                                          
                                                                      
    tp.tv_sec = useconds / TOD_MICROSECONDS_PER_SECOND;               
    tp.tv_nsec = (useconds % TOD_MICROSECONDS_PER_SECOND) * 1000;     
   45ae4:	2d41 fffc      	movel %d1,%fp@(-4)                          
    ticks = _Timespec_To_ticks( &tp );                                
   45ae8:	4e92           	jsr %a2@                                    
    if ( ticks == 0 )                                                 
      ticks = 1;                                                      
                                                                      
    _Watchdog_Insert_ticks( the_timer, _Timespec_To_ticks( &tp ) );   
   45aea:	2f04           	movel %d4,%sp@-                             
   45aec:	4e92           	jsr %a2@                                    
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
                                                                      
  _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );           
   45aee:	4879 0006 114e 	pea 6114e <_POSIX_signals_Ualarm_timer>     
   45af4:	4879 0006 0a00 	pea 60a00 <_Watchdog_Ticks_chain>           
  Watchdog_Control      *the_watchdog,                                
  Watchdog_Interval      units                                        
)                                                                     
{                                                                     
                                                                      
  the_watchdog->initial = units;                                      
   45afa:	23c0 0006 115a 	movel %d0,6115a <_POSIX_signals_Ualarm_timer+0xc>
                                                                      
  _Watchdog_Insert( &_Watchdog_Ticks_chain, the_watchdog );           
   45b00:	4eb9 0004 95b4 	jsr 495b4 <_Watchdog_Insert>                
   45b06:	4fef 0010      	lea %sp@(16),%sp                            
  }                                                                   
                                                                      
  return remaining;                                                   
}                                                                     
   45b0a:	2003           	movel %d3,%d0                               
   45b0c:	4cee 041c ffe8 	moveml %fp@(-24),%d2-%d4/%a2                
   45b12:	4e5e           	unlk %fp                                    
   45b14:	4e75           	rts                                         
  Watchdog_Service_routine_entry  routine,                            
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
   45b16:	42b9 0006 1156 	clrl 61156 <_POSIX_signals_Ualarm_timer+0x8>
  the_watchdog->routine   = routine;                                  
  the_watchdog->id        = id;                                       
  the_watchdog->user_data = user_data;                                
   45b1c:	4283           	clrl %d3                                    
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
  the_watchdog->routine   = routine;                                  
   45b1e:	203c 0004 5b88 	movel #285576,%d0                           
  the_watchdog->id        = id;                                       
   45b24:	42b9 0006 116e 	clrl 6116e <_POSIX_signals_Ualarm_timer+0x20>
  Objects_Id                      id,                                 
  void                           *user_data                           
)                                                                     
{                                                                     
  the_watchdog->state     = WATCHDOG_INACTIVE;                        
  the_watchdog->routine   = routine;                                  
   45b2a:	23c0 0006 116a 	movel %d0,6116a <_POSIX_signals_Ualarm_timer+0x1c>
  the_watchdog->id        = id;                                       
  the_watchdog->user_data = user_data;                                
   45b30:	42b9 0006 1172 	clrl 61172 <_POSIX_signals_Ualarm_timer+0x24>
  /*                                                                  
   *  If useconds is non-zero, then the caller wants to schedule      
   *  the alarm repeatedly at that interval.  If the interval is      
   *  less than a single clock tick, then fudge it to a clock tick.   
   */                                                                 
  if ( useconds ) {                                                   
   45b36:	4a82           	tstl %d2                                    
   45b38:	6700 ff76      	beqw 45ab0 <ualarm+0x34>                    
   45b3c:	6000 ff7e      	braw 45abc <ualarm+0x40>                    
       *  boot.  Since alarm() is dealing in seconds, we must account for
       *  this.                                                       
       */                                                             
                                                                      
      ticks = the_timer->initial;                                     
      ticks -= (the_timer->stop_time - the_timer->start_time);        
   45b40:	2039 0006 1162 	movel 61162 <_POSIX_signals_Ualarm_timer+0x14>,%d0
   45b46:	d0b9 0006 115a 	addl 6115a <_POSIX_signals_Ualarm_timer+0xc>,%d0
      /* remaining is now in ticks */                                 
                                                                      
      _Timespec_From_ticks( ticks, &tp );                             
   45b4c:	486e fff8      	pea %fp@(-8)                                
   45b50:	90b9 0006 1166 	subl 61166 <_POSIX_signals_Ualarm_timer+0x18>,%d0
      remaining  = tp.tv_sec * TOD_MICROSECONDS_PER_SECOND;           
   45b56:	283c 000f 4240 	movel #1000000,%d4                          
                                                                      
      ticks = the_timer->initial;                                     
      ticks -= (the_timer->stop_time - the_timer->start_time);        
      /* remaining is now in ticks */                                 
                                                                      
      _Timespec_From_ticks( ticks, &tp );                             
   45b5c:	2f00           	movel %d0,%sp@-                             
   45b5e:	4eb9 0004 9184 	jsr 49184 <_Timespec_From_ticks>            
      remaining  = tp.tv_sec * TOD_MICROSECONDS_PER_SECOND;           
   45b64:	202e fff8      	movel %fp@(-8),%d0                          
   45b68:	4c04 0800      	mulsl %d4,%d0                               
      remaining += tp.tv_nsec / 1000;                                 
   45b6c:	283c 0000 03e8 	movel #1000,%d4                             
   45b72:	508f           	addql #8,%sp                                
   45b74:	262e fffc      	movel %fp@(-4),%d3                          
   45b78:	4c44 3803      	remsl %d4,%d3,%d3                           
   45b7c:	d680           	addl %d0,%d3                                
  /*                                                                  
   *  If useconds is non-zero, then the caller wants to schedule      
   *  the alarm repeatedly at that interval.  If the interval is      
   *  less than a single clock tick, then fudge it to a clock tick.   
   */                                                                 
  if ( useconds ) {                                                   
   45b7e:	4a82           	tstl %d2                                    
   45b80:	6700 ff2e      	beqw 45ab0 <ualarm+0x34>                    
   45b84:	6000 ff36      	braw 45abc <ualarm+0x40>                    <== NOT EXECUTED
                                                                      
0004e3c8 <unlink>:                                                    
#include <rtems/seterr.h>                                             
                                                                      
int unlink(                                                           
  const char *path                                                    
)                                                                     
{                                                                     
   4e3c8:	4e56 ffbc      	linkw %fp,#-68                              
   4e3cc:	48d7 3c1c      	moveml %d2-%d4/%a2-%a5,%sp@                 
   4e3d0:	282e 0008      	movel %fp@(8),%d4                           
                                                                      
  /*                                                                  
   * Get the node to be unlinked. Find the parent path first.         
   */                                                                 
                                                                      
  parentpathlen = rtems_filesystem_dirname ( path );                  
   4e3d4:	2f04           	movel %d4,%sp@-                             
   4e3d6:	4eb9 0004 25a4 	jsr 425a4 <rtems_filesystem_dirname>        
                                                                      
  if ( parentpathlen == 0 )                                           
   4e3dc:	588f           	addql #4,%sp                                
                                                                      
  /*                                                                  
   * Get the node to be unlinked. Find the parent path first.         
   */                                                                 
                                                                      
  parentpathlen = rtems_filesystem_dirname ( path );                  
   4e3de:	2400           	movel %d0,%d2                               
                                                                      
  if ( parentpathlen == 0 )                                           
   4e3e0:	6600 01c8      	bnew 4e5aa <unlink+0x1e2>                   
    rtems_filesystem_get_start_loc( path, &i, &parentloc );           
   4e3e4:	2044           	moveal %d4,%a0                              
   4e3e6:	762f           	moveq #47,%d3                               
   4e3e8:	1210           	moveb %a0@,%d1                              
   4e3ea:	1001           	moveb %d1,%d0                               
   4e3ec:	49c0           	extbl %d0                                   
   4e3ee:	b680           	cmpl %d0,%d3                                
   4e3f0:	670e           	beqs 4e400 <unlink+0x38>                    
   4e3f2:	163c 005c      	moveb #92,%d3                               
   4e3f6:	b680           	cmpl %d0,%d3                                
   4e3f8:	6706           	beqs 4e400 <unlink+0x38>                    
   4e3fa:	4a01           	tstb %d1                                    
   4e3fc:	6600 00fc      	bnew 4e4fa <unlink+0x132>                   
   4e400:	2079 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a0   
   4e406:	45ee ffec      	lea %fp@(-20),%a2                           
   4e40a:	49ee fff0      	lea %fp@(-16),%a4                           
   4e40e:	200e           	movel %fp,%d0                               
   4e410:	0680 ffff fff4 	addil #-12,%d0                              
   4e416:	2640           	moveal %d0,%a3                              
   4e418:	4bee fff8      	lea %fp@(-8),%a5                            
   4e41c:	224e           	moveal %fp,%a1                              
   4e41e:	24a8 0018      	movel %a0@(24),%a2@                         
   4e422:	28a8 001c      	movel %a0@(28),%a4@                         
   4e426:	26a8 0020      	movel %a0@(32),%a3@                         
   4e42a:	2aa8 0024      	movel %a0@(36),%a5@                         
   4e42e:	2328 0028      	movel %a0@(40),%a1@-                        
   4e432:	4203           	clrb %d3                                    
                                                                      
  /*                                                                  
   * Start from the parent to find the node that should be under it.  
   */                                                                 
                                                                      
  loc = parentloc;                                                    
   4e434:	2040           	moveal %d0,%a0                              
  name = path + parentpathlen;                                        
   4e436:	2644           	moveal %d4,%a3                              
   4e438:	d7c2           	addal %d2,%a3                               
  name += rtems_filesystem_prefix_separators( name, strlen( name ) ); 
                                                                      
  result = rtems_filesystem_evaluate_relative_path( name , strlen( name ),
   4e43a:	240e           	movel %fp,%d2                               
   4e43c:	0682 ffff ffd8 	addil #-40,%d2                              
                                                                      
  /*                                                                  
   * Start from the parent to find the node that should be under it.  
   */                                                                 
                                                                      
  loc = parentloc;                                                    
   4e442:	2d50 ffe0      	movel %a0@,%fp@(-32)                        
   4e446:	2d51 ffe8      	movel %a1@,%fp@(-24)                        
   4e44a:	2d54 ffdc      	movel %a4@,%fp@(-36)                        
  name = path + parentpathlen;                                        
  name += rtems_filesystem_prefix_separators( name, strlen( name ) ); 
   4e44e:	49f9 0004 ffc0 	lea 4ffc0 <strlen>,%a4                      
                                                                      
  /*                                                                  
   * Start from the parent to find the node that should be under it.  
   */                                                                 
                                                                      
  loc = parentloc;                                                    
   4e454:	2d55 ffe4      	movel %a5@,%fp@(-28)                        
   4e458:	2d52 ffd8      	movel %a2@,%fp@(-40)                        
  name = path + parentpathlen;                                        
  name += rtems_filesystem_prefix_separators( name, strlen( name ) ); 
   4e45c:	2f0b           	movel %a3,%sp@-                             
   4e45e:	4e94           	jsr %a4@                                    
   4e460:	2e80           	movel %d0,%sp@                              
   4e462:	2f0b           	movel %a3,%sp@-                             
   4e464:	4eb9 0004 255c 	jsr 4255c <rtems_filesystem_prefix_separators>
   4e46a:	d7c0           	addal %d0,%a3                               
                                                                      
  result = rtems_filesystem_evaluate_relative_path( name , strlen( name ),
   4e46c:	2f0b           	movel %a3,%sp@-                             
   4e46e:	4e94           	jsr %a4@                                    
   4e470:	4297           	clrl %sp@                                   
   4e472:	2f02           	movel %d2,%sp@-                             
   4e474:	42a7           	clrl %sp@-                                  
   4e476:	2f00           	movel %d0,%sp@-                             
   4e478:	2f0b           	movel %a3,%sp@-                             
   4e47a:	4eb9 0004 2616 	jsr 42616 <rtems_filesystem_evaluate_relative_path>
                                                    0, &loc, false ); 
  if ( result != 0 ) {                                                
   4e480:	4fef 001c      	lea %sp@(28),%sp                            
   4e484:	4a80           	tstl %d0                                    
   4e486:	6600 00a2      	bnew 4e52a <unlink+0x162>                   
    if ( free_parentloc )                                             
      rtems_filesystem_freenode( &parentloc );                        
    return -1;                                                        
  }                                                                   
                                                                      
  if ( !loc.ops->node_type_h ) {                                      
   4e48a:	226e ffe4      	moveal %fp@(-28),%a1                        
   4e48e:	2069 0010      	moveal %a1@(16),%a0                         
   4e492:	4a88           	tstl %a0                                    
   4e494:	6700 00ce      	beqw 4e564 <unlink+0x19c>                   
    if ( free_parentloc )                                             
      rtems_filesystem_freenode( &parentloc );                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if (  (*loc.ops->node_type_h)( &loc ) == RTEMS_FILESYSTEM_DIRECTORY ) {
   4e498:	2f02           	movel %d2,%sp@-                             
   4e49a:	4e90           	jsr %a0@                                    
   4e49c:	588f           	addql #4,%sp                                
   4e49e:	7201           	moveq #1,%d1                                
   4e4a0:	b280           	cmpl %d0,%d1                                
   4e4a2:	6700 0140      	beqw 4e5e4 <unlink+0x21c>                   
    if ( free_parentloc )                                             
      rtems_filesystem_freenode( &parentloc );                        
    rtems_set_errno_and_return_minus_one( EISDIR );                   
  }                                                                   
                                                                      
  if ( !loc.ops->unlink_h ) {                                         
   4e4a6:	226e ffe4      	moveal %fp@(-28),%a1                        
   4e4aa:	2069 000c      	moveal %a1@(12),%a0                         
   4e4ae:	4a88           	tstl %a0                                    
   4e4b0:	6700 00b2      	beqw 4e564 <unlink+0x19c>                   
    if ( free_parentloc )                                             
      rtems_filesystem_freenode( &parentloc );                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*loc.ops->unlink_h)( &parentloc, &loc );                  
   4e4b4:	2f02           	movel %d2,%sp@-                             
   4e4b6:	2f0a           	movel %a2,%sp@-                             
   4e4b8:	4e90           	jsr %a0@                                    
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   4e4ba:	206e ffe4      	moveal %fp@(-28),%a0                        
    if ( free_parentloc )                                             
      rtems_filesystem_freenode( &parentloc );                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*loc.ops->unlink_h)( &parentloc, &loc );                  
   4e4be:	2640           	moveal %d0,%a3                              
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   4e4c0:	508f           	addql #8,%sp                                
   4e4c2:	4a88           	tstl %a0                                    
   4e4c4:	670e           	beqs 4e4d4 <unlink+0x10c>                   
   4e4c6:	2068 001c      	moveal %a0@(28),%a0                         
   4e4ca:	4a88           	tstl %a0                                    
   4e4cc:	6706           	beqs 4e4d4 <unlink+0x10c>                   
   4e4ce:	2f02           	movel %d2,%sp@-                             
   4e4d0:	4e90           	jsr %a0@                                    
   4e4d2:	588f           	addql #4,%sp                                
  if ( free_parentloc )                                               
   4e4d4:	4a03           	tstb %d3                                    
   4e4d6:	6716           	beqs 4e4ee <unlink+0x126>                   
    rtems_filesystem_freenode( &parentloc );                          
   4e4d8:	206e fff8      	moveal %fp@(-8),%a0                         
   4e4dc:	4a88           	tstl %a0                                    
   4e4de:	670e           	beqs 4e4ee <unlink+0x126>                   
   4e4e0:	2068 001c      	moveal %a0@(28),%a0                         
   4e4e4:	4a88           	tstl %a0                                    
   4e4e6:	6706           	beqs 4e4ee <unlink+0x126>                   
   4e4e8:	2f0a           	movel %a2,%sp@-                             
   4e4ea:	4e90           	jsr %a0@                                    
   4e4ec:	588f           	addql #4,%sp                                
                                                                      
  return result;                                                      
}                                                                     
   4e4ee:	200b           	movel %a3,%d0                               
   4e4f0:	4cee 3c1c ffbc 	moveml %fp@(-68),%d2-%d4/%a2-%a5            
   4e4f6:	4e5e           	unlk %fp                                    
   4e4f8:	4e75           	rts                                         
   */                                                                 
                                                                      
  parentpathlen = rtems_filesystem_dirname ( path );                  
                                                                      
  if ( parentpathlen == 0 )                                           
    rtems_filesystem_get_start_loc( path, &i, &parentloc );           
   4e4fa:	2079 0005 d824 	moveal 5d824 <rtems_current_user_env>,%a0   
   4e500:	45ee ffec      	lea %fp@(-20),%a2                           
   4e504:	5888           	addql #4,%a0                                
   4e506:	49ee fff0      	lea %fp@(-16),%a4                           
   4e50a:	200e           	movel %fp,%d0                               
   4e50c:	0680 ffff fff4 	addil #-12,%d0                              
   4e512:	2640           	moveal %d0,%a3                              
   4e514:	4bee fff8      	lea %fp@(-8),%a5                            
   4e518:	224e           	moveal %fp,%a1                              
   4e51a:	2498           	movel %a0@+,%a2@                            
   4e51c:	2898           	movel %a0@+,%a4@                            
   4e51e:	2698           	movel %a0@+,%a3@                            
   4e520:	2a98           	movel %a0@+,%a5@                            
   4e522:	2310           	movel %a0@,%a1@-                            
   4e524:	4203           	clrb %d3                                    
   4e526:	6000 ff0c      	braw 4e434 <unlink+0x6c>                    
  name += rtems_filesystem_prefix_separators( name, strlen( name ) ); 
                                                                      
  result = rtems_filesystem_evaluate_relative_path( name , strlen( name ),
                                                    0, &loc, false ); 
  if ( result != 0 ) {                                                
    if ( free_parentloc )                                             
   4e52a:	4a03           	tstb %d3                                    
   4e52c:	6610           	bnes 4e53e <unlink+0x176>                   
                                                                      
  result = (*loc.ops->unlink_h)( &parentloc, &loc );                  
                                                                      
  rtems_filesystem_freenode( &loc );                                  
  if ( free_parentloc )                                               
    rtems_filesystem_freenode( &parentloc );                          
   4e52e:	367c ffff      	moveaw #-1,%a3                              <== NOT EXECUTED
                                                                      
  return result;                                                      
}                                                                     
   4e532:	200b           	movel %a3,%d0                               <== NOT EXECUTED
   4e534:	4cee 3c1c ffbc 	moveml %fp@(-68),%d2-%d4/%a2-%a5            <== NOT EXECUTED
   4e53a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4e53c:	4e75           	rts                                         <== NOT EXECUTED
                                                                      
  result = rtems_filesystem_evaluate_relative_path( name , strlen( name ),
                                                    0, &loc, false ); 
  if ( result != 0 ) {                                                
    if ( free_parentloc )                                             
      rtems_filesystem_freenode( &parentloc );                        
   4e53e:	206e fff8      	moveal %fp@(-8),%a0                         
   4e542:	4a88           	tstl %a0                                    
   4e544:	67e8           	beqs 4e52e <unlink+0x166>                   
   4e546:	2028 001c      	movel %a0@(28),%d0                          
   4e54a:	67e2           	beqs 4e52e <unlink+0x166>                   
   4e54c:	2f0a           	movel %a2,%sp@-                             
   4e54e:	2040           	moveal %d0,%a0                              
   4e550:	367c ffff      	moveaw #-1,%a3                              
   4e554:	4e90           	jsr %a0@                                    
   4e556:	588f           	addql #4,%sp                                
  rtems_filesystem_freenode( &loc );                                  
  if ( free_parentloc )                                               
    rtems_filesystem_freenode( &parentloc );                          
                                                                      
  return result;                                                      
}                                                                     
   4e558:	200b           	movel %a3,%d0                               
   4e55a:	4cee 3c1c ffbc 	moveml %fp@(-68),%d2-%d4/%a2-%a5            
   4e560:	4e5e           	unlk %fp                                    
   4e562:	4e75           	rts                                         
      rtems_filesystem_freenode( &parentloc );                        
    rtems_set_errno_and_return_minus_one( EISDIR );                   
  }                                                                   
                                                                      
  if ( !loc.ops->unlink_h ) {                                         
    rtems_filesystem_freenode( &loc );                                
   4e564:	2069 001c      	moveal %a1@(28),%a0                         <== NOT EXECUTED
   4e568:	4a88           	tstl %a0                                    <== NOT EXECUTED
   4e56a:	6706           	beqs 4e572 <unlink+0x1aa>                   <== NOT EXECUTED
   4e56c:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   4e56e:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4e570:	588f           	addql #4,%sp                                <== NOT EXECUTED
    if ( free_parentloc )                                             
   4e572:	4a03           	tstb %d3                                    <== NOT EXECUTED
   4e574:	6716           	beqs 4e58c <unlink+0x1c4>                   <== NOT EXECUTED
      rtems_filesystem_freenode( &parentloc );                        
   4e576:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
   4e57a:	4a88           	tstl %a0                                    <== NOT EXECUTED
   4e57c:	670e           	beqs 4e58c <unlink+0x1c4>                   <== NOT EXECUTED
   4e57e:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   4e582:	4a88           	tstl %a0                                    <== NOT EXECUTED
   4e584:	6706           	beqs 4e58c <unlink+0x1c4>                   <== NOT EXECUTED
   4e586:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4e588:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4e58a:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   4e58c:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   4e592:	367c ffff      	moveaw #-1,%a3                              <== NOT EXECUTED
   4e596:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  rtems_filesystem_freenode( &loc );                                  
  if ( free_parentloc )                                               
    rtems_filesystem_freenode( &parentloc );                          
                                                                      
  return result;                                                      
}                                                                     
   4e598:	200b           	movel %a3,%d0                               <== NOT EXECUTED
   4e59a:	4cee 3c1c ffbc 	moveml %fp@(-68),%d2-%d4/%a2-%a5            <== NOT EXECUTED
                                                                      
  if ( !loc.ops->unlink_h ) {                                         
    rtems_filesystem_freenode( &loc );                                
    if ( free_parentloc )                                             
      rtems_filesystem_freenode( &parentloc );                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   4e5a0:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  rtems_filesystem_freenode( &loc );                                  
  if ( free_parentloc )                                               
    rtems_filesystem_freenode( &parentloc );                          
                                                                      
  return result;                                                      
}                                                                     
   4e5a6:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4e5a8:	4e75           	rts                                         <== NOT EXECUTED
  parentpathlen = rtems_filesystem_dirname ( path );                  
                                                                      
  if ( parentpathlen == 0 )                                           
    rtems_filesystem_get_start_loc( path, &i, &parentloc );           
  else {                                                              
    result = rtems_filesystem_evaluate_path( path, parentpathlen,     
   4e5aa:	42a7           	clrl %sp@-                                  
   4e5ac:	45ee ffec      	lea %fp@(-20),%a2                           
   4e5b0:	2f0a           	movel %a2,%sp@-                             
   4e5b2:	4878 0002      	pea 2 <DOUBLE_FLOAT>                        
   4e5b6:	2f00           	movel %d0,%sp@-                             
   4e5b8:	2f04           	movel %d4,%sp@-                             
   4e5ba:	4eb9 0004 2720 	jsr 42720 <rtems_filesystem_evaluate_path>  
                                             RTEMS_LIBIO_PERMS_WRITE, 
                                             &parentloc,              
                                             false );                 
    if ( result != 0 )                                                
   4e5c0:	4fef 0014      	lea %sp@(20),%sp                            
   4e5c4:	4a80           	tstl %d0                                    
   4e5c6:	6600 ff66      	bnew 4e52e <unlink+0x166>                   
   4e5ca:	200e           	movel %fp,%d0                               
   4e5cc:	49ee fff0      	lea %fp@(-16),%a4                           
   4e5d0:	0680 ffff fff4 	addil #-12,%d0                              
   4e5d6:	4bee fff8      	lea %fp@(-8),%a5                            
   4e5da:	43ee fffc      	lea %fp@(-4),%a1                            
   4e5de:	7601           	moveq #1,%d3                                
   4e5e0:	6000 fe52      	braw 4e434 <unlink+0x6c>                    
      rtems_filesystem_freenode( &parentloc );                        
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  if (  (*loc.ops->node_type_h)( &loc ) == RTEMS_FILESYSTEM_DIRECTORY ) {
    rtems_filesystem_freenode( &loc );                                
   4e5e4:	206e ffe4      	moveal %fp@(-28),%a0                        
   4e5e8:	4a88           	tstl %a0                                    
   4e5ea:	670e           	beqs 4e5fa <unlink+0x232>                   
   4e5ec:	2068 001c      	moveal %a0@(28),%a0                         
   4e5f0:	4a88           	tstl %a0                                    
   4e5f2:	6706           	beqs 4e5fa <unlink+0x232>                   
   4e5f4:	2f02           	movel %d2,%sp@-                             
   4e5f6:	4e90           	jsr %a0@                                    
   4e5f8:	588f           	addql #4,%sp                                
    if ( free_parentloc )                                             
   4e5fa:	4a03           	tstb %d3                                    
   4e5fc:	6716           	beqs 4e614 <unlink+0x24c>                   
      rtems_filesystem_freenode( &parentloc );                        
   4e5fe:	206e fff8      	moveal %fp@(-8),%a0                         <== NOT EXECUTED
   4e602:	4a88           	tstl %a0                                    <== NOT EXECUTED
   4e604:	670e           	beqs 4e614 <unlink+0x24c>                   <== NOT EXECUTED
   4e606:	2068 001c      	moveal %a0@(28),%a0                         <== NOT EXECUTED
   4e60a:	4a88           	tstl %a0                                    <== NOT EXECUTED
   4e60c:	6706           	beqs 4e614 <unlink+0x24c>                   <== NOT EXECUTED
   4e60e:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   4e610:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   4e612:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( EISDIR );                   
   4e614:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         
   4e61a:	367c ffff      	moveaw #-1,%a3                              
   4e61e:	2040           	moveal %d0,%a0                              
   4e620:	7015           	moveq #21,%d0                               
   4e622:	2080           	movel %d0,%a0@                              
  rtems_filesystem_freenode( &loc );                                  
  if ( free_parentloc )                                               
    rtems_filesystem_freenode( &parentloc );                          
                                                                      
  return result;                                                      
}                                                                     
   4e624:	200b           	movel %a3,%d0                               
   4e626:	4cee 3c1c ffbc 	moveml %fp@(-68),%d2-%d4/%a2-%a5            
   4e62c:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00068cd8 <unmount>:                                                   
 */                                                                   
                                                                      
int unmount(                                                          
  const char *path                                                    
)                                                                     
{                                                                     
   68cd8:	4e56 ffec      	linkw %fp,#-20                              
   68cdc:	2f0a           	movel %a2,%sp@-                             
   68cde:	246e 0008      	moveal %fp@(8),%a2                          
   68ce2:	2f02           	movel %d2,%sp@-                             
   *    The root node of the mounted filesytem.                       
   *    The node for the directory that the fileystem is mounted on.  
   *    The mount entry that is being refered to.                     
   */                                                                 
                                                                      
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x0, &loc, true ) )
   68ce4:	240e           	movel %fp,%d2                               
   68ce6:	0682 ffff ffec 	addil #-20,%d2                              
   68cec:	2f0a           	movel %a2,%sp@-                             
   68cee:	4eb9 0008 6ee4 	jsr 86ee4 <strlen>                          
   68cf4:	7201           	moveq #1,%d1                                
   68cf6:	2e81           	movel %d1,%sp@                              
   68cf8:	2f02           	movel %d2,%sp@-                             
   68cfa:	42a7           	clrl %sp@-                                  
   68cfc:	2f00           	movel %d0,%sp@-                             
   68cfe:	2f0a           	movel %a2,%sp@-                             
   68d00:	4eb9 0004 66cc 	jsr 466cc <rtems_filesystem_evaluate_path>  
   68d06:	4fef 0014      	lea %sp@(20),%sp                            
   68d0a:	4a80           	tstl %d0                                    
   68d0c:	6600 00b0      	bnew 68dbe <unmount+0xe6>                   
    return -1;                                                        
                                                                      
  mt_entry     = loc.mt_entry;                                        
   68d10:	246e fffc      	moveal %fp@(-4),%a2                         
  fs_mount_loc = &mt_entry->mt_point_node;                            
  fs_root_loc  = &mt_entry->mt_fs_root;                               
   68d14:	202e ffec      	movel %fp@(-20),%d0                         
   68d18:	b0aa 001c      	cmpl %a2@(28),%d0                           
   68d1c:	6600 00fa      	bnew 68e18 <unmount+0x140>                  
                                                                      
  /*                                                                  
   * Free the loc node and just use the nodes from the mt_entry .     
   */                                                                 
                                                                      
  rtems_filesystem_freenode( &loc );                                  
   68d20:	206e fff8      	moveal %fp@(-8),%a0                         
   68d24:	4a88           	tstl %a0                                    
   68d26:	670e           	beqs 68d36 <unmount+0x5e>                   
   68d28:	2068 001c      	moveal %a0@(28),%a0                         
   68d2c:	4a88           	tstl %a0                                    
   68d2e:	6706           	beqs 68d36 <unmount+0x5e>                   
   68d30:	2f02           	movel %d2,%sp@-                             
   68d32:	4e90           	jsr %a0@                                    
   68d34:	588f           	addql #4,%sp                                
                                                                      
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x0, &loc, true ) )
    return -1;                                                        
                                                                      
  mt_entry     = loc.mt_entry;                                        
  fs_mount_loc = &mt_entry->mt_point_node;                            
   68d36:	206a 0014      	moveal %a2@(20),%a0                         
   68d3a:	4aa8 0028      	tstl %a0@(40)                               
   68d3e:	6700 0126      	beqw 68e66 <unmount+0x18e>                  
  fs_root_loc  = &mt_entry->mt_fs_root;                               
   68d42:	206a 0028      	moveal %a2@(40),%a0                         
   68d46:	4aa8 002c      	tstl %a0@(44)                               
   68d4a:	6700 011a      	beqw 68e66 <unmount+0x18e>                  
   *        that made the current node thread based instead           
   *        of system based?  I thought it was but it doesn't         
   *        look like it in this version.                             
   */                                                                 
                                                                      
  if ( rtems_filesystem_current.mt_entry == mt_entry )                
   68d4e:	2079 000a 1f7c 	moveal a1f7c <rtems_current_user_env>,%a0   
   68d54:	b5e8 0014      	cmpal %a0@(20),%a2                          
   68d58:	6728           	beqs 68d82 <unmount+0xaa>                   
  /*                                                                  
   * Search the mount table for any mount entries referencing this    
   * mount entry.                                                     
   */                                                                 
                                                                      
  for ( the_node = rtems_filesystem_mount_table_control.first;        
   68d5a:	2079 000a 6964 	moveal a6964 <rtems_filesystem_mount_table_control>,%a0
   68d60:	b1fc 000a 6968 	cmpal #682344,%a0                           
   68d66:	6734           	beqs 68d9c <unmount+0xc4>                   
        !rtems_chain_is_tail( &rtems_filesystem_mount_table_control, the_node );
        the_node = the_node->next ) {                                 
     the_mount_entry = ( rtems_filesystem_mount_table_entry_t * )the_node;
     if (the_mount_entry->mt_point_node.mt_entry  == fs_root_loc->mt_entry ) {
   68d68:	202a 002c      	movel %a2@(44),%d0                          
   68d6c:	b0a8 0018      	cmpl %a0@(24),%d0                           
   68d70:	6710           	beqs 68d82 <unmount+0xaa>                   
   * mount entry.                                                     
   */                                                                 
                                                                      
  for ( the_node = rtems_filesystem_mount_table_control.first;        
        !rtems_chain_is_tail( &rtems_filesystem_mount_table_control, the_node );
        the_node = the_node->next ) {                                 
   68d72:	2050           	moveal %a0@,%a0                             
  /*                                                                  
   * Search the mount table for any mount entries referencing this    
   * mount entry.                                                     
   */                                                                 
                                                                      
  for ( the_node = rtems_filesystem_mount_table_control.first;        
   68d74:	b1fc 000a 6968 	cmpal #682344,%a0                           
   68d7a:	6720           	beqs 68d9c <unmount+0xc4>                   
        !rtems_chain_is_tail( &rtems_filesystem_mount_table_control, the_node );
        the_node = the_node->next ) {                                 
     the_mount_entry = ( rtems_filesystem_mount_table_entry_t * )the_node;
     if (the_mount_entry->mt_point_node.mt_entry  == fs_root_loc->mt_entry ) {
   68d7c:	b0a8 0018      	cmpl %a0@(24),%d0                           
   68d80:	66f0           	bnes 68d72 <unmount+0x9a>                   
   *  descriptors that are currently active and reference nodes in the
   *  file system that we are trying to unmount                       
   */                                                                 
                                                                      
  if ( rtems_libio_is_open_files_in_fs( mt_entry ) == 1 )             
    rtems_set_errno_and_return_minus_one( EBUSY );                    
   68d82:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         
                                                                      
  rtems_filesystem_freenode( fs_mount_loc );                          
  free( mt_entry );                                                   
                                                                      
  return 0;                                                           
}                                                                     
   68d88:	242e ffe4      	movel %fp@(-28),%d2                         
   *  descriptors that are currently active and reference nodes in the
   *  file system that we are trying to unmount                       
   */                                                                 
                                                                      
  if ( rtems_libio_is_open_files_in_fs( mt_entry ) == 1 )             
    rtems_set_errno_and_return_minus_one( EBUSY );                    
   68d8c:	2040           	moveal %d0,%a0                              
   68d8e:	7210           	moveq #16,%d1                               
   68d90:	70ff           	moveq #-1,%d0                               
                                                                      
  rtems_filesystem_freenode( fs_mount_loc );                          
  free( mt_entry );                                                   
                                                                      
  return 0;                                                           
}                                                                     
   68d92:	246e ffe8      	moveal %fp@(-24),%a2                        
   68d96:	4e5e           	unlk %fp                                    
   *  descriptors that are currently active and reference nodes in the
   *  file system that we are trying to unmount                       
   */                                                                 
                                                                      
  if ( rtems_libio_is_open_files_in_fs( mt_entry ) == 1 )             
    rtems_set_errno_and_return_minus_one( EBUSY );                    
   68d98:	2081           	movel %d1,%a0@                              
                                                                      
  rtems_filesystem_freenode( fs_mount_loc );                          
  free( mt_entry );                                                   
                                                                      
  return 0;                                                           
}                                                                     
   68d9a:	4e75           	rts                                         
   *  Run the file descriptor table to determine if there are any file
   *  descriptors that are currently active and reference nodes in the
   *  file system that we are trying to unmount                       
   */                                                                 
                                                                      
  if ( rtems_libio_is_open_files_in_fs( mt_entry ) == 1 )             
   68d9c:	2f0a           	movel %a2,%sp@-                             
   68d9e:	4eb9 0004 6a70 	jsr 46a70 <rtems_libio_is_open_files_in_fs> 
   68da4:	588f           	addql #4,%sp                                
   68da6:	7201           	moveq #1,%d1                                
   68da8:	b280           	cmpl %d0,%d1                                
   68daa:	67d6           	beqs 68d82 <unmount+0xaa>                   
   * Allow the file system being unmounted on to do its cleanup.      
   * If it fails it will set the errno to the approprate value        
   * and the fileystem will not be modified.                          
   */                                                                 
                                                                      
  if (( fs_mount_loc->ops->unmount_h )( mt_entry ) != 0 )             
   68dac:	206a 0014      	moveal %a2@(20),%a0                         
   68db0:	2f0a           	movel %a2,%sp@-                             
   68db2:	2068 0028      	moveal %a0@(40),%a0                         
   68db6:	4e90           	jsr %a0@                                    
   68db8:	588f           	addql #4,%sp                                
   68dba:	4a80           	tstl %d0                                    
   68dbc:	670e           	beqs 68dcc <unmount+0xf4>                   
                                                                      
  rtems_filesystem_freenode( fs_mount_loc );                          
  free( mt_entry );                                                   
                                                                      
  return 0;                                                           
}                                                                     
   68dbe:	242e ffe4      	movel %fp@(-28),%d2                         
   */                                                                 
                                                                      
  rtems_filesystem_freenode( fs_mount_loc );                          
  free( mt_entry );                                                   
                                                                      
  return 0;                                                           
   68dc2:	70ff           	moveq #-1,%d0                               
}                                                                     
   68dc4:	246e ffe8      	moveal %fp@(-24),%a2                        
   68dc8:	4e5e           	unlk %fp                                    
   68dca:	4e75           	rts                                         
   *  NOTE:  Fatal error is called in a case which should never happen
   *         This was response was questionable but the best we could 
   *         come up with.                                            
   */                                                                 
                                                                      
  if ((fs_root_loc->ops->fsunmount_me_h )( mt_entry ) != 0){          
   68dcc:	206a 0028      	moveal %a2@(40),%a0                         
   68dd0:	2f0a           	movel %a2,%sp@-                             
   68dd2:	2068 002c      	moveal %a0@(44),%a0                         
   68dd6:	4e90           	jsr %a0@                                    
   68dd8:	588f           	addql #4,%sp                                
   68dda:	4a80           	tstl %d0                                    
   68ddc:	666a           	bnes 68e48 <unmount+0x170>                  
 */                                                                   
RTEMS_INLINE_ROUTINE void rtems_chain_extract(                        
  rtems_chain_node *the_node                                          
)                                                                     
{                                                                     
  _Chain_Extract( the_node );                                         
   68dde:	2f0a           	movel %a2,%sp@-                             
   68de0:	4eb9 0004 b63c 	jsr 4b63c <_Chain_Extract>                  
  /*                                                                  
   *  Free the memory node that was allocated in mount                
   *  Free the memory associated with the extracted mount table entry.
   */                                                                 
                                                                      
  rtems_filesystem_freenode( fs_mount_loc );                          
   68de6:	206a 0014      	moveal %a2@(20),%a0                         
   68dea:	588f           	addql #4,%sp                                
   68dec:	4a88           	tstl %a0                                    
   68dee:	6710           	beqs 68e00 <unmount+0x128>                  
   68df0:	2068 001c      	moveal %a0@(28),%a0                         
   68df4:	4a88           	tstl %a0                                    
   68df6:	6708           	beqs 68e00 <unmount+0x128>                  
   68df8:	486a 0008      	pea %a2@(8)                                 
   68dfc:	4e90           	jsr %a0@                                    
   68dfe:	588f           	addql #4,%sp                                
  free( mt_entry );                                                   
   68e00:	2f0a           	movel %a2,%sp@-                             
   68e02:	4eb9 0004 67c0 	jsr 467c0 <free>                            
                                                                      
  return 0;                                                           
}                                                                     
   68e08:	242e ffe4      	movel %fp@(-28),%d2                         
   */                                                                 
                                                                      
  rtems_filesystem_freenode( fs_mount_loc );                          
  free( mt_entry );                                                   
                                                                      
  return 0;                                                           
   68e0c:	588f           	addql #4,%sp                                
   *  Free the memory node that was allocated in mount                
   *  Free the memory associated with the extracted mount table entry.
   */                                                                 
                                                                      
  rtems_filesystem_freenode( fs_mount_loc );                          
  free( mt_entry );                                                   
   68e0e:	4280           	clrl %d0                                    
                                                                      
  return 0;                                                           
}                                                                     
   68e10:	246e ffe8      	moveal %fp@(-24),%a2                        
   68e14:	4e5e           	unlk %fp                                    
   68e16:	4e75           	rts                                         
  /*                                                                  
   * Verify this is the root node for the file system to be unmounted.
   */                                                                 
                                                                      
  if ( !rtems_filesystem_nodes_equal( fs_root_loc, &loc) ){           
    rtems_filesystem_freenode( &loc );                                
   68e18:	206e fff8      	moveal %fp@(-8),%a0                         
   68e1c:	4a88           	tstl %a0                                    
   68e1e:	670e           	beqs 68e2e <unmount+0x156>                  
   68e20:	2068 001c      	moveal %a0@(28),%a0                         
   68e24:	4a88           	tstl %a0                                    
   68e26:	6706           	beqs 68e2e <unmount+0x156>                  
   68e28:	2f02           	movel %d2,%sp@-                             
   68e2a:	4e90           	jsr %a0@                                    
   68e2c:	588f           	addql #4,%sp                                
    rtems_set_errno_and_return_minus_one( EACCES );                   
   68e2e:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         
   68e34:	740d           	moveq #13,%d2                               
   68e36:	2040           	moveal %d0,%a0                              
   68e38:	70ff           	moveq #-1,%d0                               
   68e3a:	2082           	movel %d2,%a0@                              
                                                                      
  rtems_filesystem_freenode( fs_mount_loc );                          
  free( mt_entry );                                                   
                                                                      
  return 0;                                                           
}                                                                     
   68e3c:	242e ffe4      	movel %fp@(-28),%d2                         
   68e40:	246e ffe8      	moveal %fp@(-24),%a2                        
   68e44:	4e5e           	unlk %fp                                    
   68e46:	4e75           	rts                                         
   *         This was response was questionable but the best we could 
   *         come up with.                                            
   */                                                                 
                                                                      
  if ((fs_root_loc->ops->fsunmount_me_h )( mt_entry ) != 0){          
    if (( fs_mount_loc->ops->mount_h )( mt_entry ) != 0 )             
   68e48:	206a 0014      	moveal %a2@(20),%a0                         <== NOT EXECUTED
   68e4c:	2f0a           	movel %a2,%sp@-                             <== NOT EXECUTED
   68e4e:	2028 0020      	movel %a0@(32),%d0                          <== NOT EXECUTED
   68e52:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   68e54:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   68e56:	588f           	addql #4,%sp                                <== NOT EXECUTED
   68e58:	4a80           	tstl %d0                                    <== NOT EXECUTED
   68e5a:	6700 ff62      	beqw 68dbe <unmount+0xe6>                   <== NOT EXECUTED
      rtems_fatal_error_occurred( 0 );                                
   68e5e:	42a7           	clrl %sp@-                                  <== NOT EXECUTED
   68e60:	4eb9 0004 b2c4 	jsr 4b2c4 <rtems_fatal_error_occurred>      <== NOT EXECUTED
                                                                      
  if ( !fs_mount_loc->ops->unmount_h )                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  if ( !fs_root_loc->ops->fsunmount_me_h )                            
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   68e66:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
                                                                      
  rtems_filesystem_freenode( fs_mount_loc );                          
  free( mt_entry );                                                   
                                                                      
  return 0;                                                           
}                                                                     
   68e6c:	242e ffe4      	movel %fp@(-28),%d2                         <== NOT EXECUTED
                                                                      
  if ( !fs_mount_loc->ops->unmount_h )                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  if ( !fs_root_loc->ops->fsunmount_me_h )                            
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   68e70:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   68e72:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  rtems_filesystem_freenode( fs_mount_loc );                          
  free( mt_entry );                                                   
                                                                      
  return 0;                                                           
}                                                                     
   68e74:	246e ffe8      	moveal %fp@(-24),%a2                        <== NOT EXECUTED
   68e78:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
  if ( !fs_mount_loc->ops->unmount_h )                                
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  if ( !fs_root_loc->ops->fsunmount_me_h )                            
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   68e7a:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
                                                                      
  rtems_filesystem_freenode( fs_mount_loc );                          
  free( mt_entry );                                                   
                                                                      
  return 0;                                                           
}                                                                     
	...                                                                  
                                                                      
00068e84 <utime>:                                                     
                                                                      
int utime(                                                            
  const char           *path,                                         
  const struct utimbuf *times                                         
)                                                                     
{                                                                     
   68e84:	4e56 ffe0      	linkw %fp,#-32                              
   68e88:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
   68e8c:	262e 0008      	movel %fp@(8),%d3                           
  rtems_filesystem_location_info_t   temp_loc;                        
  int                                result;                          
                                                                      
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x00, &temp_loc, true ) )
   68e90:	240e           	movel %fp,%d2                               
   68e92:	0682 ffff ffec 	addil #-20,%d2                              
   68e98:	2f03           	movel %d3,%sp@-                             
                                                                      
int utime(                                                            
  const char           *path,                                         
  const struct utimbuf *times                                         
)                                                                     
{                                                                     
   68e9a:	246e 000c      	moveal %fp@(12),%a2                         
  rtems_filesystem_location_info_t   temp_loc;                        
  int                                result;                          
                                                                      
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x00, &temp_loc, true ) )
   68e9e:	4eb9 0008 6ee4 	jsr 86ee4 <strlen>                          
   68ea4:	7201           	moveq #1,%d1                                
   68ea6:	2e81           	movel %d1,%sp@                              
   68ea8:	2f02           	movel %d2,%sp@-                             
   68eaa:	42a7           	clrl %sp@-                                  
   68eac:	2f00           	movel %d0,%sp@-                             
   68eae:	2f03           	movel %d3,%sp@-                             
   68eb0:	4eb9 0004 66cc 	jsr 466cc <rtems_filesystem_evaluate_path>  
   68eb6:	4fef 0014      	lea %sp@(20),%sp                            
   68eba:	4a80           	tstl %d0                                    
   68ebc:	663e           	bnes 68efc <utime+0x78>                     
    return -1;                                                        
                                                                      
  if ( !temp_loc.ops->utime_h ){                                      
   68ebe:	226e fff8      	moveal %fp@(-8),%a1                         
   68ec2:	2069 0030      	moveal %a1@(48),%a0                         
   68ec6:	4a88           	tstl %a0                                    
   68ec8:	6740           	beqs 68f0a <utime+0x86>                     
    rtems_filesystem_freenode( &temp_loc );                           
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*temp_loc.ops->utime_h)( &temp_loc, times->actime, times->modtime );
   68eca:	2f2a 0004      	movel %a2@(4),%sp@-                         
   68ece:	2f12           	movel %a2@,%sp@-                            
   68ed0:	2f02           	movel %d2,%sp@-                             
   68ed2:	4e90           	jsr %a0@                                    
                                                                      
  rtems_filesystem_freenode( &temp_loc );                             
   68ed4:	206e fff8      	moveal %fp@(-8),%a0                         
  if ( !temp_loc.ops->utime_h ){                                      
    rtems_filesystem_freenode( &temp_loc );                           
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
  }                                                                   
                                                                      
  result = (*temp_loc.ops->utime_h)( &temp_loc, times->actime, times->modtime );
   68ed8:	2600           	movel %d0,%d3                               
                                                                      
  rtems_filesystem_freenode( &temp_loc );                             
   68eda:	4fef 000c      	lea %sp@(12),%sp                            
   68ede:	4a88           	tstl %a0                                    
   68ee0:	670e           	beqs 68ef0 <utime+0x6c>                     
   68ee2:	2068 001c      	moveal %a0@(28),%a0                         
   68ee6:	4a88           	tstl %a0                                    
   68ee8:	6706           	beqs 68ef0 <utime+0x6c>                     
   68eea:	2f02           	movel %d2,%sp@-                             
   68eec:	4e90           	jsr %a0@                                    
   68eee:	588f           	addql #4,%sp                                
                                                                      
  return result;                                                      
}                                                                     
   68ef0:	2003           	movel %d3,%d0                               
   68ef2:	4cee 040c ffe0 	moveml %fp@(-32),%d2-%d3/%a2                
   68ef8:	4e5e           	unlk %fp                                    
   68efa:	4e75           	rts                                         
)                                                                     
{                                                                     
  rtems_filesystem_location_info_t   temp_loc;                        
  int                                result;                          
                                                                      
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x00, &temp_loc, true ) )
   68efc:	76ff           	moveq #-1,%d3                               
  result = (*temp_loc.ops->utime_h)( &temp_loc, times->actime, times->modtime );
                                                                      
  rtems_filesystem_freenode( &temp_loc );                             
                                                                      
  return result;                                                      
}                                                                     
   68efe:	2003           	movel %d3,%d0                               
   68f00:	4cee 040c ffe0 	moveml %fp@(-32),%d2-%d3/%a2                
   68f06:	4e5e           	unlk %fp                                    
   68f08:	4e75           	rts                                         
                                                                      
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x00, &temp_loc, true ) )
    return -1;                                                        
                                                                      
  if ( !temp_loc.ops->utime_h ){                                      
    rtems_filesystem_freenode( &temp_loc );                           
   68f0a:	2069 001c      	moveal %a1@(28),%a0                         <== NOT EXECUTED
   68f0e:	4a88           	tstl %a0                                    <== NOT EXECUTED
   68f10:	6706           	beqs 68f18 <utime+0x94>                     <== NOT EXECUTED
   68f12:	2f02           	movel %d2,%sp@-                             <== NOT EXECUTED
   68f14:	4e90           	jsr %a0@                                    <== NOT EXECUTED
   68f16:	588f           	addql #4,%sp                                <== NOT EXECUTED
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   68f18:	4eb9 0008 0e3c 	jsr 80e3c <__errno>                         <== NOT EXECUTED
   68f1e:	76ff           	moveq #-1,%d3                               <== NOT EXECUTED
   68f20:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
  result = (*temp_loc.ops->utime_h)( &temp_loc, times->actime, times->modtime );
                                                                      
  rtems_filesystem_freenode( &temp_loc );                             
                                                                      
  return result;                                                      
}                                                                     
   68f22:	2003           	movel %d3,%d0                               <== NOT EXECUTED
   68f24:	4cee 040c ffe0 	moveml %fp@(-32),%d2-%d3/%a2                <== NOT EXECUTED
  if ( rtems_filesystem_evaluate_path( path, strlen( path ), 0x00, &temp_loc, true ) )
    return -1;                                                        
                                                                      
  if ( !temp_loc.ops->utime_h ){                                      
    rtems_filesystem_freenode( &temp_loc );                           
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   68f2a:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
  result = (*temp_loc.ops->utime_h)( &temp_loc, times->actime, times->modtime );
                                                                      
  rtems_filesystem_freenode( &temp_loc );                             
                                                                      
  return result;                                                      
}                                                                     
   68f30:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00045238 <vprintk>:                                                   
 */                                                                   
void vprintk(                                                         
  const char *fmt,                                                    
  va_list     ap                                                      
)                                                                     
{                                                                     
   45238:	4e56 ffc0      	linkw %fp,#-64                              
   4523c:	48d7 3cfc      	moveml %d2-%d7/%a2-%a5,%sp@                 
   45240:	246e 0008      	moveal %fp@(8),%a2                          
  for (; *fmt != '\0'; fmt++) {                                       
   45244:	1012           	moveb %a2@,%d0                              
 */                                                                   
void vprintk(                                                         
  const char *fmt,                                                    
  va_list     ap                                                      
)                                                                     
{                                                                     
   45246:	2c2e 000c      	movel %fp@(12),%d6                          
  for (; *fmt != '\0'; fmt++) {                                       
   4524a:	4a00           	tstb %d0                                    
   4524c:	6700 0130      	beqw 4537e <vprintk+0x146>                  
  toPrint[count++] = (char) unsigned_num;                             
                                                                      
  for (n=maxwidth ; n > count; n-- )                                  
    BSP_output_char(lead);                                            
                                                                      
  for (n = 0; n < count; n++) {                                       
   45250:	49ee ffec      	lea %fp@(-20),%a4                           
   45254:	4bf9 0005 c67f 	lea 5c67f <rtems_status_assoc+0x179>,%a5    
    bool minus = false;                                               
    bool sign = false;                                                
    char lead = ' ';                                                  
    char c;                                                           
                                                                      
    if (*fmt != '%') {                                                
   4525a:	49c0           	extbl %d0                                   
   4525c:	7225           	moveq #37,%d1                               
   4525e:	b280           	cmpl %d0,%d1                                
   45260:	6724           	beqs 45286 <vprintk+0x4e>                   
      BSP_output_char(*fmt);                                          
   45262:	2f00           	movel %d0,%sp@-                             
   45264:	2079 0005 d80c 	moveal 5d80c <BSP_output_char>,%a0          
   4526a:	2d46 ffe8      	movel %d6,%fp@(-24)                         
   4526e:	4e90           	jsr %a0@                                    
      continue;                                                       
   45270:	588f           	addql #4,%sp                                
void vprintk(                                                         
  const char *fmt,                                                    
  va_list     ap                                                      
)                                                                     
{                                                                     
  for (; *fmt != '\0'; fmt++) {                                       
   45272:	528a           	addql #1,%a2                                
   45274:	1012           	moveb %a2@,%d0                              
   45276:	6700 0106      	beqw 4537e <vprintk+0x146>                  
   4527a:	2c2e ffe8      	movel %fp@(-24),%d6                         
    bool minus = false;                                               
    bool sign = false;                                                
    char lead = ' ';                                                  
    char c;                                                           
                                                                      
    if (*fmt != '%') {                                                
   4527e:	49c0           	extbl %d0                                   
   45280:	7225           	moveq #37,%d1                               
   45282:	b280           	cmpl %d0,%d1                                
   45284:	66dc           	bnes 45262 <vprintk+0x2a>                   
      BSP_output_char(*fmt);                                          
      continue;                                                       
    }                                                                 
    fmt++;                                                            
   45286:	528a           	addql #1,%a2                                
    if (*fmt == '0' ) {                                               
   45288:	7430           	moveq #48,%d2                               
   4528a:	1012           	moveb %a2@,%d0                              
   4528c:	1200           	moveb %d0,%d1                               
   4528e:	49c1           	extbl %d1                                   
   45290:	b481           	cmpl %d1,%d2                                
   45292:	6700 01f8      	beqw 4548c <vprintk+0x254>                  
      lead = '0';                                                     
      fmt++;                                                          
    }                                                                 
    if (*fmt == '-' ) {                                               
   45296:	762d           	moveq #45,%d3                               
    if (*fmt != '%') {                                                
      BSP_output_char(*fmt);                                          
      continue;                                                       
    }                                                                 
    fmt++;                                                            
    if (*fmt == '0' ) {                                               
   45298:	7e20           	moveq #32,%d7                               
      lead = '0';                                                     
      fmt++;                                                          
    }                                                                 
    if (*fmt == '-' ) {                                               
   4529a:	b681           	cmpl %d1,%d3                                
   4529c:	6700 0200      	beqw 4549e <vprintk+0x266>                  
      minus = true;                                                   
      fmt++;                                                          
    }                                                                 
    while (*fmt >= '0' && *fmt <= '9' ) {                             
   452a0:	0680 ffff ffd0 	addil #-48,%d0                              
   452a6:	7a09           	moveq #9,%d5                                
   452a8:	0280 0000 00ff 	andil #255,%d0                              
    fmt++;                                                            
    if (*fmt == '0' ) {                                               
      lead = '0';                                                     
      fmt++;                                                          
    }                                                                 
    if (*fmt == '-' ) {                                               
   452ae:	4204           	clrb %d4                                    
      minus = true;                                                   
      fmt++;                                                          
    }                                                                 
    while (*fmt >= '0' && *fmt <= '9' ) {                             
   452b0:	ba80           	cmpl %d0,%d5                                
   452b2:	6500 0208      	bcsw 454bc <vprintk+0x284>                  
   452b6:	4282           	clrl %d2                                    
      width *= 10;                                                    
      width += ((unsigned) *fmt - '0');                               
   452b8:	2602           	movel %d2,%d3                               
      fmt++;                                                          
   452ba:	528a           	addql #1,%a2                                
    }                                                                 
    if (*fmt == '-' ) {                                               
      minus = true;                                                   
      fmt++;                                                          
    }                                                                 
    while (*fmt >= '0' && *fmt <= '9' ) {                             
   452bc:	7a09           	moveq #9,%d5                                
      width *= 10;                                                    
      width += ((unsigned) *fmt - '0');                               
   452be:	e78b           	lsll #3,%d3                                 
    }                                                                 
    if (*fmt == '-' ) {                                               
      minus = true;                                                   
      fmt++;                                                          
    }                                                                 
    while (*fmt >= '0' && *fmt <= '9' ) {                             
   452c0:	1012           	moveb %a2@,%d0                              
      width *= 10;                                                    
      width += ((unsigned) *fmt - '0');                               
   452c2:	2043           	moveal %d3,%a0                              
    }                                                                 
    if (*fmt == '-' ) {                                               
      minus = true;                                                   
      fmt++;                                                          
    }                                                                 
    while (*fmt >= '0' && *fmt <= '9' ) {                             
   452c4:	2600           	movel %d0,%d3                               
   452c6:	0683 ffff ffd0 	addil #-48,%d3                              
      width *= 10;                                                    
      width += ((unsigned) *fmt - '0');                               
   452cc:	41f0 2a00      	lea %a0@(00000000,%d2:l:2),%a0              
    }                                                                 
    if (*fmt == '-' ) {                                               
      minus = true;                                                   
      fmt++;                                                          
    }                                                                 
    while (*fmt >= '0' && *fmt <= '9' ) {                             
   452d0:	0283 0000 00ff 	andil #255,%d3                              
      width *= 10;                                                    
      width += ((unsigned) *fmt - '0');                               
   452d6:	41f0 18d0      	lea %a0@(ffffffd0,%d1:l),%a0                
   452da:	1200           	moveb %d0,%d1                               
   452dc:	2408           	movel %a0,%d2                               
   452de:	49c1           	extbl %d1                                   
    }                                                                 
    if (*fmt == '-' ) {                                               
      minus = true;                                                   
      fmt++;                                                          
    }                                                                 
    while (*fmt >= '0' && *fmt <= '9' ) {                             
   452e0:	ba83           	cmpl %d3,%d5                                
   452e2:	64d4           	bccs 452b8 <vprintk+0x80>                   
   452e4:	1200           	moveb %d0,%d1                               
      width *= 10;                                                    
      width += ((unsigned) *fmt - '0');                               
      fmt++;                                                          
    }                                                                 
                                                                      
    if ((c = *fmt) == 'l') {                                          
   452e6:	706c           	moveq #108,%d0                              
   452e8:	49c1           	extbl %d1                                   
   452ea:	b081           	cmpl %d1,%d0                                
   452ec:	6700 009a      	beqw 45388 <vprintk+0x150>                  
      lflag = true;                                                   
      c = *++fmt;                                                     
    }                                                                 
    if ( c == 'c' ) {                                                 
   452f0:	7663           	moveq #99,%d3                               
   452f2:	b681           	cmpl %d1,%d3                                
   452f4:	6700 00a0      	beqw 45396 <vprintk+0x15e>                  
      /* need a cast here since va_arg() only takes fully promoted types */
      char chr = (char) va_arg(ap, int);                              
      BSP_output_char(chr);                                           
      continue;                                                       
    }                                                                 
    if ( c == 's' ) {                                                 
   452f8:	7673           	moveq #115,%d3                              
   452fa:	b681           	cmpl %d1,%d3                                
   452fc:	6700 01cc      	beqw 454ca <vprintk+0x292>                  
                                                                      
      continue;                                                       
    }                                                                 
                                                                      
    /* must be a numeric format or something unsupported */           
    if ( c == 'o' || c == 'O' ) {                                     
   45300:	766f           	moveq #111,%d3                              
   45302:	b681           	cmpl %d1,%d3                                
   45304:	6700 017a      	beqw 45480 <vprintk+0x248>                  
   45308:	7a4f           	moveq #79,%d5                               
   4530a:	ba81           	cmpl %d1,%d5                                
   4530c:	6700 0172      	beqw 45480 <vprintk+0x248>                  
      base = 8; sign = false;                                         
    } else if ( c == 'i' || c == 'I' ||                               
   45310:	163c 0069      	moveb #105,%d3                              
   45314:	b681           	cmpl %d1,%d3                                
   45316:	6700 009a      	beqw 453b2 <vprintk+0x17a>                  
   4531a:	1a3c 0049      	moveb #73,%d5                               
   4531e:	ba81           	cmpl %d1,%d5                                
   45320:	6700 0090      	beqw 453b2 <vprintk+0x17a>                  
   45324:	163c 0064      	moveb #100,%d3                              
   45328:	b681           	cmpl %d1,%d3                                
   4532a:	6700 0086      	beqw 453b2 <vprintk+0x17a>                  
   4532e:	1a3c 0044      	moveb #68,%d5                               
   45332:	ba81           	cmpl %d1,%d5                                
   45334:	677c           	beqs 453b2 <vprintk+0x17a>                  
                c == 'd' || c == 'D' ) {                              
      base = 10; sign = true;                                         
    } else if ( c == 'u' || c == 'U' ) {                              
   45336:	163c 0075      	moveb #117,%d3                              
   4533a:	b681           	cmpl %d1,%d3                                
   4533c:	6700 0270      	beqw 455ae <vprintk+0x376>                  
   45340:	1a3c 0055      	moveb #85,%d5                               
   45344:	ba81           	cmpl %d1,%d5                                
   45346:	6700 0266      	beqw 455ae <vprintk+0x376>                  
      base = 10; sign = false;                                        
    } else if ( c == 'x' || c == 'X' ) {                              
   4534a:	163c 0078      	moveb #120,%d3                              
   4534e:	b681           	cmpl %d1,%d3                                
   45350:	6700 027a      	beqw 455cc <vprintk+0x394>                  
   45354:	1a3c 0058      	moveb #88,%d5                               
   45358:	ba81           	cmpl %d1,%d5                                
   4535a:	6700 0270      	beqw 455cc <vprintk+0x394>                  
      base = 16; sign = false;                                        
    } else if ( c == 'p' ) {                                          
   4535e:	7070           	moveq #112,%d0                              
   45360:	b081           	cmpl %d1,%d0                                
   45362:	6700 0274      	beqw 455d8 <vprintk+0x3a0>                  
      base = 16; sign = false; lflag = true;                          
    } else {                                                          
      BSP_output_char(c);                                             
   45366:	2f01           	movel %d1,%sp@-                             
   45368:	2079 0005 d80c 	moveal 5d80c <BSP_output_char>,%a0          
void vprintk(                                                         
  const char *fmt,                                                    
  va_list     ap                                                      
)                                                                     
{                                                                     
  for (; *fmt != '\0'; fmt++) {                                       
   4536e:	528a           	addql #1,%a2                                
    } else if ( c == 'x' || c == 'X' ) {                              
      base = 16; sign = false;                                        
    } else if ( c == 'p' ) {                                          
      base = 16; sign = false; lflag = true;                          
    } else {                                                          
      BSP_output_char(c);                                             
   45370:	2d46 ffe8      	movel %d6,%fp@(-24)                         
   45374:	4e90           	jsr %a0@                                    
      continue;                                                       
   45376:	588f           	addql #4,%sp                                
void vprintk(                                                         
  const char *fmt,                                                    
  va_list     ap                                                      
)                                                                     
{                                                                     
  for (; *fmt != '\0'; fmt++) {                                       
   45378:	1012           	moveb %a2@,%d0                              
   4537a:	6600 fefe      	bnew 4527a <vprintk+0x42>                   
      sign,                                                           
      width,                                                          
      lead                                                            
    );                                                                
  }                                                                   
}                                                                     
   4537e:	4cee 3cfc ffc0 	moveml %fp@(-64),%d2-%d7/%a2-%a5            
   45384:	4e5e           	unlk %fp                                    
   45386:	4e75           	rts                                         
      fmt++;                                                          
    }                                                                 
                                                                      
    if ((c = *fmt) == 'l') {                                          
      lflag = true;                                                   
      c = *++fmt;                                                     
   45388:	528a           	addql #1,%a2                                
    }                                                                 
    if ( c == 'c' ) {                                                 
   4538a:	7663           	moveq #99,%d3                               
   4538c:	1212           	moveb %a2@,%d1                              
   4538e:	49c1           	extbl %d1                                   
   45390:	b681           	cmpl %d1,%d3                                
   45392:	6600 ff64      	bnew 452f8 <vprintk+0xc0>                   
      /* need a cast here since va_arg() only takes fully promoted types */
      char chr = (char) va_arg(ap, int);                              
      BSP_output_char(chr);                                           
   45396:	2046           	moveal %d6,%a0                              
      lflag = true;                                                   
      c = *++fmt;                                                     
    }                                                                 
    if ( c == 'c' ) {                                                 
      /* need a cast here since va_arg() only takes fully promoted types */
      char chr = (char) va_arg(ap, int);                              
   45398:	5886           	addql #4,%d6                                
      BSP_output_char(chr);                                           
   4539a:	2010           	movel %a0@,%d0                              
   4539c:	49c0           	extbl %d0                                   
      lflag = true;                                                   
      c = *++fmt;                                                     
    }                                                                 
    if ( c == 'c' ) {                                                 
      /* need a cast here since va_arg() only takes fully promoted types */
      char chr = (char) va_arg(ap, int);                              
   4539e:	2d46 ffe8      	movel %d6,%fp@(-24)                         
      BSP_output_char(chr);                                           
   453a2:	2079 0005 d80c 	moveal 5d80c <BSP_output_char>,%a0          
   453a8:	2f00           	movel %d0,%sp@-                             
   453aa:	4e90           	jsr %a0@                                    
      continue;                                                       
   453ac:	588f           	addql #4,%sp                                
   453ae:	6000 fec2      	braw 45272 <vprintk+0x3a>                   
    } else {                                                          
      BSP_output_char(c);                                             
      continue;                                                       
    }                                                                 
                                                                      
    printNum(                                                         
   453b2:	49c7           	extbl %d7                                   
      base = 16; sign = false;                                        
    } else if ( c == 'p' ) {                                          
      base = 16; sign = false; lflag = true;                          
    } else {                                                          
      BSP_output_char(c);                                             
      continue;                                                       
   453b4:	7a0a           	moveq #10,%d5                               
    }                                                                 
                                                                      
    printNum(                                                         
   453b6:	2647           	moveal %d7,%a3                              
      base = 16; sign = false;                                        
    } else if ( c == 'p' ) {                                          
      base = 16; sign = false; lflag = true;                          
    } else {                                                          
      BSP_output_char(c);                                             
      continue;                                                       
   453b8:	7201           	moveq #1,%d1                                
    }                                                                 
                                                                      
    printNum(                                                         
   453ba:	2046           	moveal %d6,%a0                              
      lflag ? va_arg(ap, long) : (long) va_arg(ap, int),              
   453bc:	5886           	addql #4,%d6                                
    } else {                                                          
      BSP_output_char(c);                                             
      continue;                                                       
    }                                                                 
                                                                      
    printNum(                                                         
   453be:	2810           	movel %a0@,%d4                              
      lflag ? va_arg(ap, long) : (long) va_arg(ap, int),              
   453c0:	2d46 ffe8      	movel %d6,%fp@(-24)                         
  unsigned long unsigned_num;                                         
  unsigned long n;                                                    
  unsigned count;                                                     
  char toPrint[20];                                                   
                                                                      
  if ( sign && (num <  0) ) {                                         
   453c4:	4a01           	tstb %d1                                    
   453c6:	6706           	beqs 453ce <vprintk+0x196>                  
   453c8:	4a84           	tstl %d4                                    
   453ca:	6d00 01ae      	bltw 4557a <vprintk+0x342>                  
  } else {                                                            
    unsigned_num = (unsigned long) num;                               
  }                                                                   
                                                                      
  count = 0;                                                          
  while ((n = unsigned_num / base) > 0) {                             
   453ce:	2004           	movel %d4,%d0                               
   453d0:	4c45 0000      	remul %d5,%d0,%d0                           
   453d4:	6700 01c6      	beqw 4559c <vprintk+0x364>                  
   453d8:	2600           	movel %d0,%d3                               
   453da:	4281           	clrl %d1                                    
   453dc:	3045           	moveaw %d5,%a0                              
   453de:	4c45 3003      	remul %d5,%d3,%d3                           
    toPrint[count++] = (char) (unsigned_num - (n * base));            
   453e2:	3e08           	movew %a0,%d7                               
   453e4:	cfc0           	mulsw %d0,%d7                               
   453e6:	9887           	subl %d7,%d4                                
   453e8:	2e04           	movel %d4,%d7                               
  } else {                                                            
    unsigned_num = (unsigned long) num;                               
  }                                                                   
                                                                      
  count = 0;                                                          
  while ((n = unsigned_num / base) > 0) {                             
   453ea:	2800           	movel %d0,%d4                               
    toPrint[count++] = (char) (unsigned_num - (n * base));            
   453ec:	1987 1800      	moveb %d7,%a4@(00000000,%d1:l)              
   453f0:	5281           	addql #1,%d1                                
  } else {                                                            
    unsigned_num = (unsigned long) num;                               
  }                                                                   
                                                                      
  count = 0;                                                          
  while ((n = unsigned_num / base) > 0) {                             
   453f2:	4a83           	tstl %d3                                    
   453f4:	671c           	beqs 45412 <vprintk+0x1da>                  
   453f6:	2003           	movel %d3,%d0                               
   453f8:	2600           	movel %d0,%d3                               
    toPrint[count++] = (char) (unsigned_num - (n * base));            
   453fa:	3e08           	movew %a0,%d7                               
  } else {                                                            
    unsigned_num = (unsigned long) num;                               
  }                                                                   
                                                                      
  count = 0;                                                          
  while ((n = unsigned_num / base) > 0) {                             
   453fc:	4c45 3003      	remul %d5,%d3,%d3                           
    toPrint[count++] = (char) (unsigned_num - (n * base));            
   45400:	cfc0           	mulsw %d0,%d7                               
   45402:	9887           	subl %d7,%d4                                
   45404:	2e04           	movel %d4,%d7                               
  } else {                                                            
    unsigned_num = (unsigned long) num;                               
  }                                                                   
                                                                      
  count = 0;                                                          
  while ((n = unsigned_num / base) > 0) {                             
   45406:	2800           	movel %d0,%d4                               
    toPrint[count++] = (char) (unsigned_num - (n * base));            
   45408:	1987 1800      	moveb %d7,%a4@(00000000,%d1:l)              
   4540c:	5281           	addql #1,%d1                                
  } else {                                                            
    unsigned_num = (unsigned long) num;                               
  }                                                                   
                                                                      
  count = 0;                                                          
  while ((n = unsigned_num / base) > 0) {                             
   4540e:	4a83           	tstl %d3                                    
   45410:	66e4           	bnes 453f6 <vprintk+0x1be>                  
   45412:	2800           	movel %d0,%d4                               
   45414:	2601           	movel %d1,%d3                               
   45416:	5283           	addql #1,%d3                                
    toPrint[count++] = (char) (unsigned_num - (n * base));            
    unsigned_num = n;                                                 
  }                                                                   
  toPrint[count++] = (char) unsigned_num;                             
   45418:	1d84 18ec      	moveb %d4,%fp@(ffffffec,%d1:l)              
                                                                      
  for (n=maxwidth ; n > count; n-- )                                  
   4541c:	b682           	cmpl %d2,%d3                                
   4541e:	6412           	bccs 45432 <vprintk+0x1fa>                  
    BSP_output_char(lead);                                            
   45420:	2f0b           	movel %a3,%sp@-                             
   45422:	2079 0005 d80c 	moveal 5d80c <BSP_output_char>,%a0          
    toPrint[count++] = (char) (unsigned_num - (n * base));            
    unsigned_num = n;                                                 
  }                                                                   
  toPrint[count++] = (char) unsigned_num;                             
                                                                      
  for (n=maxwidth ; n > count; n-- )                                  
   45428:	5382           	subql #1,%d2                                
    BSP_output_char(lead);                                            
   4542a:	4e90           	jsr %a0@                                    
    toPrint[count++] = (char) (unsigned_num - (n * base));            
    unsigned_num = n;                                                 
  }                                                                   
  toPrint[count++] = (char) unsigned_num;                             
                                                                      
  for (n=maxwidth ; n > count; n-- )                                  
   4542c:	588f           	addql #4,%sp                                
   4542e:	b682           	cmpl %d2,%d3                                
   45430:	65ee           	bcss 45420 <vprintk+0x1e8>                  
    BSP_output_char(lead);                                            
                                                                      
  for (n = 0; n < count; n++) {                                       
   45432:	4a83           	tstl %d3                                    
   45434:	6700 fe3c      	beqw 45272 <vprintk+0x3a>                   
   45438:	4282           	clrl %d2                                    
   4543a:	47f4 38ff      	lea %a4@(ffffffff,%d3:l),%a3                
    BSP_output_char("0123456789ABCDEF"[(int)(toPrint[count-(n+1)])]); 
   4543e:	2079 0005 d80c 	moveal 5d80c <BSP_output_char>,%a0          
  toPrint[count++] = (char) unsigned_num;                             
                                                                      
  for (n=maxwidth ; n > count; n-- )                                  
    BSP_output_char(lead);                                            
                                                                      
  for (n = 0; n < count; n++) {                                       
   45444:	5282           	addql #1,%d2                                
    BSP_output_char("0123456789ABCDEF"[(int)(toPrint[count-(n+1)])]); 
   45446:	1013           	moveb %a3@,%d0                              
  toPrint[count++] = (char) unsigned_num;                             
                                                                      
  for (n=maxwidth ; n > count; n-- )                                  
    BSP_output_char(lead);                                            
                                                                      
  for (n = 0; n < count; n++) {                                       
   45448:	538b           	subql #1,%a3                                
    BSP_output_char("0123456789ABCDEF"[(int)(toPrint[count-(n+1)])]); 
   4544a:	49c0           	extbl %d0                                   
   4544c:	1035 0800      	moveb %a5@(00000000,%d0:l),%d0              
   45450:	49c0           	extbl %d0                                   
   45452:	2f00           	movel %d0,%sp@-                             
   45454:	4e90           	jsr %a0@                                    
  toPrint[count++] = (char) unsigned_num;                             
                                                                      
  for (n=maxwidth ; n > count; n-- )                                  
    BSP_output_char(lead);                                            
                                                                      
  for (n = 0; n < count; n++) {                                       
   45456:	588f           	addql #4,%sp                                
   45458:	b682           	cmpl %d2,%d3                                
   4545a:	6300 fe16      	blsw 45272 <vprintk+0x3a>                   
    BSP_output_char("0123456789ABCDEF"[(int)(toPrint[count-(n+1)])]); 
   4545e:	2079 0005 d80c 	moveal 5d80c <BSP_output_char>,%a0          
  toPrint[count++] = (char) unsigned_num;                             
                                                                      
  for (n=maxwidth ; n > count; n-- )                                  
    BSP_output_char(lead);                                            
                                                                      
  for (n = 0; n < count; n++) {                                       
   45464:	5282           	addql #1,%d2                                
    BSP_output_char("0123456789ABCDEF"[(int)(toPrint[count-(n+1)])]); 
   45466:	1013           	moveb %a3@,%d0                              
  toPrint[count++] = (char) unsigned_num;                             
                                                                      
  for (n=maxwidth ; n > count; n-- )                                  
    BSP_output_char(lead);                                            
                                                                      
  for (n = 0; n < count; n++) {                                       
   45468:	538b           	subql #1,%a3                                
    BSP_output_char("0123456789ABCDEF"[(int)(toPrint[count-(n+1)])]); 
   4546a:	49c0           	extbl %d0                                   
   4546c:	1035 0800      	moveb %a5@(00000000,%d0:l),%d0              
   45470:	49c0           	extbl %d0                                   
   45472:	2f00           	movel %d0,%sp@-                             
   45474:	4e90           	jsr %a0@                                    
  toPrint[count++] = (char) unsigned_num;                             
                                                                      
  for (n=maxwidth ; n > count; n-- )                                  
    BSP_output_char(lead);                                            
                                                                      
  for (n = 0; n < count; n++) {                                       
   45476:	588f           	addql #4,%sp                                
   45478:	b682           	cmpl %d2,%d3                                
   4547a:	62c2           	bhis 4543e <vprintk+0x206>                  
   4547c:	6000 fdf4      	braw 45272 <vprintk+0x3a>                   
    } else {                                                          
      BSP_output_char(c);                                             
      continue;                                                       
    }                                                                 
                                                                      
    printNum(                                                         
   45480:	49c7           	extbl %d7                                   <== NOT EXECUTED
      base = 16; sign = false;                                        
    } else if ( c == 'p' ) {                                          
      base = 16; sign = false; lflag = true;                          
    } else {                                                          
      BSP_output_char(c);                                             
      continue;                                                       
   45482:	7a08           	moveq #8,%d5                                <== NOT EXECUTED
    }                                                                 
                                                                      
    printNum(                                                         
   45484:	2647           	moveal %d7,%a3                              <== NOT EXECUTED
      base = 16; sign = false;                                        
    } else if ( c == 'p' ) {                                          
      base = 16; sign = false; lflag = true;                          
    } else {                                                          
      BSP_output_char(c);                                             
      continue;                                                       
   45486:	4201           	clrb %d1                                    <== NOT EXECUTED
   45488:	6000 ff30      	braw 453ba <vprintk+0x182>                  <== NOT EXECUTED
      continue;                                                       
    }                                                                 
    fmt++;                                                            
    if (*fmt == '0' ) {                                               
      lead = '0';                                                     
      fmt++;                                                          
   4548c:	528a           	addql #1,%a2                                
    }                                                                 
    if (*fmt == '-' ) {                                               
   4548e:	762d           	moveq #45,%d3                               
      continue;                                                       
    }                                                                 
    fmt++;                                                            
    if (*fmt == '0' ) {                                               
      lead = '0';                                                     
      fmt++;                                                          
   45490:	1012           	moveb %a2@,%d0                              
   45492:	7e30           	moveq #48,%d7                               
   45494:	1200           	moveb %d0,%d1                               
   45496:	49c1           	extbl %d1                                   
    }                                                                 
    if (*fmt == '-' ) {                                               
   45498:	b681           	cmpl %d1,%d3                                
   4549a:	6600 fe04      	bnew 452a0 <vprintk+0x68>                   
      minus = true;                                                   
      fmt++;                                                          
   4549e:	528a           	addql #1,%a2                                
    }                                                                 
    while (*fmt >= '0' && *fmt <= '9' ) {                             
   454a0:	7a09           	moveq #9,%d5                                
      lead = '0';                                                     
      fmt++;                                                          
    }                                                                 
    if (*fmt == '-' ) {                                               
      minus = true;                                                   
      fmt++;                                                          
   454a2:	1012           	moveb %a2@,%d0                              
   454a4:	7801           	moveq #1,%d4                                
   454a6:	1200           	moveb %d0,%d1                               
    }                                                                 
    while (*fmt >= '0' && *fmt <= '9' ) {                             
   454a8:	0680 ffff ffd0 	addil #-48,%d0                              
   454ae:	0280 0000 00ff 	andil #255,%d0                              
   454b4:	49c1           	extbl %d1                                   
   454b6:	ba80           	cmpl %d0,%d5                                
   454b8:	6400 fdfc      	bccw 452b6 <vprintk+0x7e>                   
   454bc:	4282           	clrl %d2                                    
      width *= 10;                                                    
      width += ((unsigned) *fmt - '0');                               
      fmt++;                                                          
    }                                                                 
                                                                      
    if ((c = *fmt) == 'l') {                                          
   454be:	706c           	moveq #108,%d0                              
   454c0:	b081           	cmpl %d1,%d0                                
   454c2:	6600 fe2c      	bnew 452f0 <vprintk+0xb8>                   
   454c6:	6000 fec0      	braw 45388 <vprintk+0x150>                  
    }                                                                 
    if ( c == 's' ) {                                                 
      unsigned i, len;                                                
      char *s, *str;                                                  
                                                                      
      str = va_arg(ap, char *);                                       
   454ca:	2046           	moveal %d6,%a0                              
   454cc:	5886           	addql #4,%d6                                
   454ce:	2650           	moveal %a0@,%a3                             
   454d0:	2d46 ffe8      	movel %d6,%fp@(-24)                         
                                                                      
      if ( str == NULL ) {                                            
   454d4:	4a8b           	tstl %a3                                    
   454d6:	6700 00e2      	beqw 455ba <vprintk+0x382>                  
        str = "";                                                     
      }                                                               
                                                                      
      /* calculate length of string */                                
      for ( len=0, s=str ; *s ; len++, s++ )                          
   454da:	4a13           	tstb %a3@                                   
   454dc:	6700 00e8      	beqw 455c6 <vprintk+0x38e>                  
   454e0:	4283           	clrl %d3                                    
   454e2:	5283           	addql #1,%d3                                
   454e4:	4a33 3800      	tstb %a3@(00000000,%d3:l)                   
   454e8:	66f8           	bnes 454e2 <vprintk+0x2aa>                  
        ;                                                             
                                                                      
      /* leading spaces */                                            
      if ( !minus )                                                   
   454ea:	4a04           	tstb %d4                                    
   454ec:	661a           	bnes 45508 <vprintk+0x2d0>                  
        for ( i=len ; i<width ; i++ )                                 
   454ee:	b682           	cmpl %d2,%d3                                
   454f0:	6416           	bccs 45508 <vprintk+0x2d0>                  
   454f2:	2a03           	movel %d3,%d5                               <== NOT EXECUTED
          BSP_output_char(' ');                                       
   454f4:	4878 0020      	pea 20 <OPER2+0xc>                          <== NOT EXECUTED
      for ( len=0, s=str ; *s ; len++, s++ )                          
        ;                                                             
                                                                      
      /* leading spaces */                                            
      if ( !minus )                                                   
        for ( i=len ; i<width ; i++ )                                 
   454f8:	5285           	addql #1,%d5                                <== NOT EXECUTED
          BSP_output_char(' ');                                       
   454fa:	2079 0005 d80c 	moveal 5d80c <BSP_output_char>,%a0          <== NOT EXECUTED
   45500:	4e90           	jsr %a0@                                    <== NOT EXECUTED
      for ( len=0, s=str ; *s ; len++, s++ )                          
        ;                                                             
                                                                      
      /* leading spaces */                                            
      if ( !minus )                                                   
        for ( i=len ; i<width ; i++ )                                 
   45502:	588f           	addql #4,%sp                                <== NOT EXECUTED
   45504:	b485           	cmpl %d5,%d2                                <== NOT EXECUTED
   45506:	62ec           	bhis 454f4 <vprintk+0x2bc>                  <== NOT EXECUTED
          BSP_output_char(' ');                                       
                                                                      
      /* no width option */                                           
      if (width == 0) {                                               
   45508:	4a82           	tstl %d2                                    
   4550a:	6606           	bnes 45512 <vprintk+0x2da>                  
          width = len;                                                
      }                                                               
                                                                      
      /* output the string */                                         
      for ( i=0 ; i<width && *str ; str++ )                           
   4550c:	4a83           	tstl %d3                                    
   4550e:	6730           	beqs 45540 <vprintk+0x308>                  
   45510:	2403           	movel %d3,%d2                               
   45512:	1013           	moveb %a3@,%d0                              
   45514:	672a           	beqs 45540 <vprintk+0x308>                  
        BSP_output_char(*str);                                        
   45516:	49c0           	extbl %d0                                   
      if (width == 0) {                                               
          width = len;                                                
      }                                                               
                                                                      
      /* output the string */                                         
      for ( i=0 ; i<width && *str ; str++ )                           
   45518:	528b           	addql #1,%a3                                
        BSP_output_char(*str);                                        
   4551a:	2f00           	movel %d0,%sp@-                             
   4551c:	2079 0005 d80c 	moveal 5d80c <BSP_output_char>,%a0          
   45522:	4e90           	jsr %a0@                                    
      if (width == 0) {                                               
          width = len;                                                
      }                                                               
                                                                      
      /* output the string */                                         
      for ( i=0 ; i<width && *str ; str++ )                           
   45524:	588f           	addql #4,%sp                                
   45526:	1013           	moveb %a3@,%d0                              
   45528:	528b           	addql #1,%a3                                
   4552a:	6714           	beqs 45540 <vprintk+0x308>                  
        BSP_output_char(*str);                                        
   4552c:	49c0           	extbl %d0                                   
   4552e:	2079 0005 d80c 	moveal 5d80c <BSP_output_char>,%a0          
   45534:	2f00           	movel %d0,%sp@-                             
   45536:	4e90           	jsr %a0@                                    
      if (width == 0) {                                               
          width = len;                                                
      }                                                               
                                                                      
      /* output the string */                                         
      for ( i=0 ; i<width && *str ; str++ )                           
   45538:	588f           	addql #4,%sp                                
   4553a:	1013           	moveb %a3@,%d0                              
   4553c:	528b           	addql #1,%a3                                
   4553e:	66ec           	bnes 4552c <vprintk+0x2f4>                  
        BSP_output_char(*str);                                        
                                                                      
      /* trailing spaces */                                           
      if ( minus )                                                    
   45540:	4a04           	tstb %d4                                    
   45542:	6700 fd2e      	beqw 45272 <vprintk+0x3a>                   
        for ( i=len ; i<width ; i++ )                                 
   45546:	b483           	cmpl %d3,%d2                                
   45548:	6300 fd28      	blsw 45272 <vprintk+0x3a>                   
          BSP_output_char(' ');                                       
   4554c:	4878 0020      	pea 20 <OPER2+0xc>                          
      for ( i=0 ; i<width && *str ; str++ )                           
        BSP_output_char(*str);                                        
                                                                      
      /* trailing spaces */                                           
      if ( minus )                                                    
        for ( i=len ; i<width ; i++ )                                 
   45550:	5283           	addql #1,%d3                                
          BSP_output_char(' ');                                       
   45552:	2079 0005 d80c 	moveal 5d80c <BSP_output_char>,%a0          
   45558:	4e90           	jsr %a0@                                    
      for ( i=0 ; i<width && *str ; str++ )                           
        BSP_output_char(*str);                                        
                                                                      
      /* trailing spaces */                                           
      if ( minus )                                                    
        for ( i=len ; i<width ; i++ )                                 
   4555a:	588f           	addql #4,%sp                                
   4555c:	b483           	cmpl %d3,%d2                                
   4555e:	6300 fd12      	blsw 45272 <vprintk+0x3a>                   
          BSP_output_char(' ');                                       
   45562:	4878 0020      	pea 20 <OPER2+0xc>                          
      for ( i=0 ; i<width && *str ; str++ )                           
        BSP_output_char(*str);                                        
                                                                      
      /* trailing spaces */                                           
      if ( minus )                                                    
        for ( i=len ; i<width ; i++ )                                 
   45566:	5283           	addql #1,%d3                                
          BSP_output_char(' ');                                       
   45568:	2079 0005 d80c 	moveal 5d80c <BSP_output_char>,%a0          
   4556e:	4e90           	jsr %a0@                                    
      for ( i=0 ; i<width && *str ; str++ )                           
        BSP_output_char(*str);                                        
                                                                      
      /* trailing spaces */                                           
      if ( minus )                                                    
        for ( i=len ; i<width ; i++ )                                 
   45570:	588f           	addql #4,%sp                                
   45572:	b483           	cmpl %d3,%d2                                
   45574:	62d6           	bhis 4554c <vprintk+0x314>                  
   45576:	6000 fcfa      	braw 45272 <vprintk+0x3a>                   
  unsigned long n;                                                    
  unsigned count;                                                     
  char toPrint[20];                                                   
                                                                      
  if ( sign && (num <  0) ) {                                         
    BSP_output_char('-');                                             
   4557a:	4878 002d      	pea 2d <OPER2+0x19>                         <== NOT EXECUTED
    unsigned_num = (unsigned long) -num;                              
   4557e:	4484           	negl %d4                                    <== NOT EXECUTED
  unsigned long n;                                                    
  unsigned count;                                                     
  char toPrint[20];                                                   
                                                                      
  if ( sign && (num <  0) ) {                                         
    BSP_output_char('-');                                             
   45580:	2079 0005 d80c 	moveal 5d80c <BSP_output_char>,%a0          <== NOT EXECUTED
   45586:	4e90           	jsr %a0@                                    <== NOT EXECUTED
    unsigned_num = (unsigned long) -num;                              
    if (maxwidth) maxwidth--;                                         
   45588:	588f           	addql #4,%sp                                <== NOT EXECUTED
   4558a:	4a82           	tstl %d2                                    <== NOT EXECUTED
   4558c:	6700 fe40      	beqw 453ce <vprintk+0x196>                  <== NOT EXECUTED
  } else {                                                            
    unsigned_num = (unsigned long) num;                               
  }                                                                   
                                                                      
  count = 0;                                                          
  while ((n = unsigned_num / base) > 0) {                             
   45590:	2004           	movel %d4,%d0                               <== NOT EXECUTED
  char toPrint[20];                                                   
                                                                      
  if ( sign && (num <  0) ) {                                         
    BSP_output_char('-');                                             
    unsigned_num = (unsigned long) -num;                              
    if (maxwidth) maxwidth--;                                         
   45592:	5382           	subql #1,%d2                                <== NOT EXECUTED
  } else {                                                            
    unsigned_num = (unsigned long) num;                               
  }                                                                   
                                                                      
  count = 0;                                                          
  while ((n = unsigned_num / base) > 0) {                             
   45594:	4c45 0000      	remul %d5,%d0,%d0                           <== NOT EXECUTED
   45598:	6600 fe3e      	bnew 453d8 <vprintk+0x1a0>                  <== NOT EXECUTED
   4559c:	4281           	clrl %d1                                    
   4559e:	7601           	moveq #1,%d3                                
    toPrint[count++] = (char) (unsigned_num - (n * base));            
    unsigned_num = n;                                                 
  }                                                                   
  toPrint[count++] = (char) unsigned_num;                             
   455a0:	1d84 18ec      	moveb %d4,%fp@(ffffffec,%d1:l)              
                                                                      
  for (n=maxwidth ; n > count; n-- )                                  
   455a4:	b682           	cmpl %d2,%d3                                
   455a6:	6500 fe78      	bcsw 45420 <vprintk+0x1e8>                  
   455aa:	6000 fe86      	braw 45432 <vprintk+0x1fa>                  
    } else {                                                          
      BSP_output_char(c);                                             
      continue;                                                       
    }                                                                 
                                                                      
    printNum(                                                         
   455ae:	49c7           	extbl %d7                                   
      base = 16; sign = false;                                        
    } else if ( c == 'p' ) {                                          
      base = 16; sign = false; lflag = true;                          
    } else {                                                          
      BSP_output_char(c);                                             
      continue;                                                       
   455b0:	7a0a           	moveq #10,%d5                               
    }                                                                 
                                                                      
    printNum(                                                         
   455b2:	2647           	moveal %d7,%a3                              
      base = 16; sign = false;                                        
    } else if ( c == 'p' ) {                                          
      base = 16; sign = false; lflag = true;                          
    } else {                                                          
      BSP_output_char(c);                                             
      continue;                                                       
   455b4:	4201           	clrb %d1                                    
   455b6:	6000 fe02      	braw 453ba <vprintk+0x182>                  
      unsigned i, len;                                                
      char *s, *str;                                                  
                                                                      
      str = va_arg(ap, char *);                                       
                                                                      
      if ( str == NULL ) {                                            
   455ba:	47f9 0005 c67e 	lea 5c67e <rtems_status_assoc+0x178>,%a3    
        str = "";                                                     
      }                                                               
                                                                      
      /* calculate length of string */                                
      for ( len=0, s=str ; *s ; len++, s++ )                          
   455c0:	4a13           	tstb %a3@                                   
   455c2:	6600 ff1c      	bnew 454e0 <vprintk+0x2a8>                  
   455c6:	4283           	clrl %d3                                    
   455c8:	6000 ff20      	braw 454ea <vprintk+0x2b2>                  
    } else {                                                          
      BSP_output_char(c);                                             
      continue;                                                       
    }                                                                 
                                                                      
    printNum(                                                         
   455cc:	49c7           	extbl %d7                                   
      base = 16; sign = false;                                        
    } else if ( c == 'p' ) {                                          
      base = 16; sign = false; lflag = true;                          
    } else {                                                          
      BSP_output_char(c);                                             
      continue;                                                       
   455ce:	7a10           	moveq #16,%d5                               
    }                                                                 
                                                                      
    printNum(                                                         
   455d0:	2647           	moveal %d7,%a3                              
      base = 16; sign = false;                                        
    } else if ( c == 'p' ) {                                          
      base = 16; sign = false; lflag = true;                          
    } else {                                                          
      BSP_output_char(c);                                             
      continue;                                                       
   455d2:	4201           	clrb %d1                                    
   455d4:	6000 fde4      	braw 453ba <vprintk+0x182>                  
    }                                                                 
                                                                      
    printNum(                                                         
   455d8:	49c7           	extbl %d7                                   
   455da:	2647           	moveal %d7,%a3                              
   455dc:	7a10           	moveq #16,%d5                               
   455de:	4201           	clrb %d1                                    
   455e0:	6000 fdd8      	braw 453ba <vprintk+0x182>                  
                                                                      
0005b900 <write>:                                                     
ssize_t write(                                                        
  int         fd,                                                     
  const void *buffer,                                                 
  size_t      count                                                   
)                                                                     
{                                                                     
   5b900:	4e56 fff4      	linkw %fp,#-12                              
   5b904:	202e 0008      	movel %fp@(8),%d0                           
   5b908:	222e 000c      	movel %fp@(12),%d1                          
   5b90c:	206e 0010      	moveal %fp@(16),%a0                         
   5b910:	48d7 040c      	moveml %d2-%d3/%a2,%sp@                     
  ssize_t  rc;                                                        
  rtems_libio_t     *iop;                                             
                                                                      
  rtems_libio_check_fd( fd );                                         
   5b914:	b0b9 0005 d714 	cmpl 5d714 <rtems_libio_number_iops>,%d0    
   5b91a:	6466           	bccs 5b982 <write+0x82>                     
  iop = rtems_libio_iop( fd );                                        
   5b91c:	2479 0005 ee18 	moveal 5ee18 <rtems_libio_iops>,%a2         
   5b922:	ed88           	lsll #6,%d0                                 
   5b924:	d5c0           	addal %d0,%a2                               
  rtems_libio_check_is_open( iop );                                   
   5b926:	202a 0014      	movel %a2@(20),%d0                          
   5b92a:	0800 0008      	btst #8,%d0                                 
   5b92e:	6752           	beqs 5b982 <write+0x82>                     
  rtems_libio_check_buffer( buffer );                                 
   5b930:	4a81           	tstl %d1                                    
   5b932:	6766           	beqs 5b99a <write+0x9a>                     
  rtems_libio_check_count( count );                                   
   5b934:	4a88           	tstl %a0                                    
   5b936:	673e           	beqs 5b976 <write+0x76>                     
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   5b938:	44c0           	movew %d0,%ccr                              
   5b93a:	665e           	bnes 5b99a <write+0x9a>                     
                                                                      
  /*                                                                  
   *  Now process the write() request.                                
   */                                                                 
                                                                      
  if ( !iop->handlers->write_h )                                      
   5b93c:	226a 003c      	moveal %a2@(60),%a1                         
   5b940:	2269 000c      	moveal %a1@(12),%a1                         
   5b944:	4a89           	tstl %a1                                    
   5b946:	676a           	beqs 5b9b2 <write+0xb2>                     
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
                                                                      
  rc = (*iop->handlers->write_h)( iop, buffer, count );               
   5b948:	2f08           	movel %a0,%sp@-                             
   5b94a:	2f01           	movel %d1,%sp@-                             
   5b94c:	2f0a           	movel %a2,%sp@-                             
   5b94e:	4e91           	jsr %a1@                                    
                                                                      
  if ( rc > 0 )                                                       
   5b950:	4fef 000c      	lea %sp@(12),%sp                            
   5b954:	4a80           	tstl %d0                                    
   5b956:	6f14           	bles 5b96c <write+0x6c>                     
    iop->offset += rc;                                                
   5b958:	2400           	movel %d0,%d2                               
   5b95a:	5bc1           	smi %d1                                     
   5b95c:	49c1           	extbl %d1                                   
   5b95e:	d5aa 0010      	addl %d2,%a2@(16)                           
   5b962:	262a 000c      	movel %a2@(12),%d3                          
   5b966:	d781           	addxl %d1,%d3                               
   5b968:	2543 000c      	movel %d3,%a2@(12)                          
                                                                      
  return rc;                                                          
}                                                                     
   5b96c:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   5b972:	4e5e           	unlk %fp                                    
   5b974:	4e75           	rts                                         
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open( iop );                                   
  rtems_libio_check_buffer( buffer );                                 
  rtems_libio_check_count( count );                                   
   5b976:	4280           	clrl %d0                                    
                                                                      
  if ( rc > 0 )                                                       
    iop->offset += rc;                                                
                                                                      
  return rc;                                                          
}                                                                     
   5b978:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                
   5b97e:	4e5e           	unlk %fp                                    
   5b980:	4e75           	rts                                         
  ssize_t  rc;                                                        
  rtems_libio_t     *iop;                                             
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open( iop );                                   
   5b982:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   5b988:	7409           	moveq #9,%d2                                <== NOT EXECUTED
   5b98a:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   5b98c:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
   5b98e:	2082           	movel %d2,%a0@                              <== NOT EXECUTED
                                                                      
  if ( rc > 0 )                                                       
    iop->offset += rc;                                                
                                                                      
  return rc;                                                          
}                                                                     
   5b990:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
   5b996:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   5b998:	4e75           	rts                                         <== NOT EXECUTED
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open( iop );                                   
  rtems_libio_check_buffer( buffer );                                 
  rtems_libio_check_count( count );                                   
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   5b99a:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   5b9a0:	7216           	moveq #22,%d1                               <== NOT EXECUTED
   5b9a2:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   5b9a4:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  if ( rc > 0 )                                                       
    iop->offset += rc;                                                
                                                                      
  return rc;                                                          
}                                                                     
   5b9a6:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open( iop );                                   
  rtems_libio_check_buffer( buffer );                                 
  rtems_libio_check_count( count );                                   
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   5b9ac:	2081           	movel %d1,%a0@                              <== NOT EXECUTED
                                                                      
  if ( rc > 0 )                                                       
    iop->offset += rc;                                                
                                                                      
  return rc;                                                          
}                                                                     
   5b9ae:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   5b9b0:	4e75           	rts                                         <== NOT EXECUTED
  /*                                                                  
   *  Now process the write() request.                                
   */                                                                 
                                                                      
  if ( !iop->handlers->write_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   5b9b2:	4eb9 0004 ebf4 	jsr 4ebf4 <__errno>                         <== NOT EXECUTED
   5b9b8:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
   5b9ba:	70ff           	moveq #-1,%d0                               <== NOT EXECUTED
                                                                      
  if ( rc > 0 )                                                       
    iop->offset += rc;                                                
                                                                      
  return rc;                                                          
}                                                                     
   5b9bc:	4cee 040c fff4 	moveml %fp@(-12),%d2-%d3/%a2                <== NOT EXECUTED
  /*                                                                  
   *  Now process the write() request.                                
   */                                                                 
                                                                      
  if ( !iop->handlers->write_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   5b9c2:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
                                                                      
  if ( rc > 0 )                                                       
    iop->offset += rc;                                                
                                                                      
  return rc;                                                          
}                                                                     
   5b9c8:	4e5e           	unlk %fp                                    <== NOT EXECUTED
                                                                      
00046f3c <writev>:                                                    
ssize_t writev(                                                       
  int                 fd,                                             
  const struct iovec *iov,                                            
  int                 iovcnt                                          
)                                                                     
{                                                                     
   46f3c:	4e56 ffe4      	linkw %fp,#-28                              
   46f40:	202e 0008      	movel %fp@(8),%d0                           
   46f44:	48d7 0c7c      	moveml %d2-%d6/%a2-%a3,%sp@                 
   46f48:	246e 000c      	moveal %fp@(12),%a2                         
   46f4c:	242e 0010      	movel %fp@(16),%d2                          
  int            bytes;                                               
  rtems_libio_t *iop;                                                 
  ssize_t        old;                                                 
  bool           all_zeros;                                           
                                                                      
  rtems_libio_check_fd( fd );                                         
   46f50:	b0b9 0006 13b4 	cmpl 613b4 <rtems_libio_number_iops>,%d0    
   46f56:	6400 00f0      	bccw 47048 <writev+0x10c>                   
  iop = rtems_libio_iop( fd );                                        
   46f5a:	2679 0006 328c 	moveal 6328c <rtems_libio_iops>,%a3         
   46f60:	ed88           	lsll #6,%d0                                 
   46f62:	d7c0           	addal %d0,%a3                               
  rtems_libio_check_is_open( iop );                                   
   46f64:	202b 0014      	movel %a3@(20),%d0                          
   46f68:	0800 0008      	btst #8,%d0                                 
   46f6c:	6700 00da      	beqw 47048 <writev+0x10c>                   
  rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );            
   46f70:	44c0           	movew %d0,%ccr                              
   46f72:	666e           	bnes 46fe2 <writev+0xa6>                    
                                                                      
  /*                                                                  
   *  Argument validation on IO vector                                
   */                                                                 
  if ( !iov )                                                         
   46f74:	4a8a           	tstl %a2                                    
   46f76:	676a           	beqs 46fe2 <writev+0xa6>                    
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  if ( iovcnt <= 0 )                                                  
   46f78:	4a82           	tstl %d2                                    
   46f7a:	6f66           	bles 46fe2 <writev+0xa6>                    
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  if ( iovcnt > IOV_MAX )                                             
   46f7c:	0c82 0000 0400 	cmpil #1024,%d2                             
   46f82:	6e5e           	bgts 46fe2 <writev+0xa6>                    
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  if ( !iop->handlers->write_h )                                      
   46f84:	206b 003c      	moveal %a3@(60),%a0                         
   46f88:	4aa8 000c      	tstl %a0@(12)                               
   46f8c:	6700 00d4      	beqw 47062 <writev+0x126>                   
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   46f90:	204a           	moveal %a2,%a0                              
   46f92:	93c9           	subal %a1,%a1                               
   46f94:	4281           	clrl %d1                                    
   46f96:	7601           	moveq #1,%d3                                
   *  entering the write loop.                                        
   */                                                                 
  all_zeros = true;                                                   
  for ( old=0, total=0, v=0 ; v < iovcnt ; v++ ) {                    
                                                                      
    if ( !iov[v].iov_base )                                           
   46f98:	4a90           	tstl %a0@                                   
   46f9a:	6746           	beqs 46fe2 <writev+0xa6>                    
      rtems_set_errno_and_return_minus_one( EINVAL );                 
                                                                      
    if ( iov[v].iov_len < 0 )                                         
      rtems_set_errno_and_return_minus_one( EINVAL );                 
                                                                      
    if ( iov[v].iov_len )                                             
   46f9c:	2028 0004      	movel %a0@(4),%d0                           
   46fa0:	57c4           	seq %d4                                     
      all_zeros = false;                                              
                                                                      
    /* check for wrap */                                              
    old    = total;                                                   
    total += iov[v].iov_len;                                          
   46fa2:	d081           	addl %d1,%d0                                
   *  this loop does that check as well and sets "all-zero" appropriately.
   *  The variable "all_zero" is used as an early exit point before   
   *  entering the write loop.                                        
   */                                                                 
  all_zeros = true;                                                   
  for ( old=0, total=0, v=0 ; v < iovcnt ; v++ ) {                    
   46fa4:	5289           	addql #1,%a1                                
   46fa6:	5088           	addql #8,%a0                                
      rtems_set_errno_and_return_minus_one( EINVAL );                 
                                                                      
    if ( iov[v].iov_len < 0 )                                         
      rtems_set_errno_and_return_minus_one( EINVAL );                 
                                                                      
    if ( iov[v].iov_len )                                             
   46fa8:	c883           	andl %d3,%d4                                
   46faa:	1604           	moveb %d4,%d3                               
      all_zeros = false;                                              
                                                                      
    /* check for wrap */                                              
    old    = total;                                                   
    total += iov[v].iov_len;                                          
    if ( total < old || total > SSIZE_MAX )                           
   46fac:	b081           	cmpl %d1,%d0                                
   46fae:	6d32           	blts 46fe2 <writev+0xa6>                    
   *  this loop does that check as well and sets "all-zero" appropriately.
   *  The variable "all_zero" is used as an early exit point before   
   *  entering the write loop.                                        
   */                                                                 
  all_zeros = true;                                                   
  for ( old=0, total=0, v=0 ; v < iovcnt ; v++ ) {                    
   46fb0:	2200           	movel %d0,%d1                               
      all_zeros = false;                                              
                                                                      
    /* check for wrap */                                              
    old    = total;                                                   
    total += iov[v].iov_len;                                          
    if ( total < old || total > SSIZE_MAX )                           
   46fb2:	0c80 0000 7fff 	cmpil #32767,%d0                            
   46fb8:	6e28           	bgts 46fe2 <writev+0xa6>                    
   *  this loop does that check as well and sets "all-zero" appropriately.
   *  The variable "all_zero" is used as an early exit point before   
   *  entering the write loop.                                        
   */                                                                 
  all_zeros = true;                                                   
  for ( old=0, total=0, v=0 ; v < iovcnt ; v++ ) {                    
   46fba:	b3c2           	cmpal %d2,%a1                               
   46fbc:	6dda           	blts 46f98 <writev+0x5c>                    
  }                                                                   
                                                                      
  /*                                                                  
   * A writev with all zeros is supposed to have no effect per OpenGroup.
   */                                                                 
  if ( all_zeros == true ) {                                          
   46fbe:	4a04           	tstb %d4                                    
   46fc0:	663a           	bnes 46ffc <writev+0xc0>                    
   46fc2:	588a           	addql #4,%a2                                
   46fc4:	4283           	clrl %d3                                    
   46fc6:	4284           	clrl %d4                                    
  /*                                                                  
   *  Now process the writev().                                       
   */                                                                 
  for ( total=0, v=0 ; v < iovcnt ; v++ ) {                           
    /* all zero lengths has no effect */                              
    if ( iov[v].iov_len == 0 )                                        
   46fc8:	2012           	movel %a2@,%d0                              
  }                                                                   
                                                                      
  /*                                                                  
   *  Now process the writev().                                       
   */                                                                 
  for ( total=0, v=0 ; v < iovcnt ; v++ ) {                           
   46fca:	5283           	addql #1,%d3                                
    /* all zero lengths has no effect */                              
    if ( iov[v].iov_len == 0 )                                        
   46fcc:	4a80           	tstl %d0                                    
   46fce:	663a           	bnes 4700a <writev+0xce>                    
  }                                                                   
                                                                      
  /*                                                                  
   *  Now process the writev().                                       
   */                                                                 
  for ( total=0, v=0 ; v < iovcnt ; v++ ) {                           
   46fd0:	508a           	addql #8,%a2                                <== NOT EXECUTED
   46fd2:	b682           	cmpl %d2,%d3                                <== NOT EXECUTED
   46fd4:	6df2           	blts 46fc8 <writev+0x8c>                    <== NOT EXECUTED
    if (bytes != iov[ v ].iov_len)                                    
      break;                                                          
  }                                                                   
                                                                      
  return total;                                                       
}                                                                     
   46fd6:	2004           	movel %d4,%d0                               
   46fd8:	4cee 0c7c ffe4 	moveml %fp@(-28),%d2-%d6/%a2-%a3            
   46fde:	4e5e           	unlk %fp                                    
   46fe0:	4e75           	rts                                         
                                                                      
    /* check for wrap */                                              
    old    = total;                                                   
    total += iov[v].iov_len;                                          
    if ( total < old || total > SSIZE_MAX )                           
      rtems_set_errno_and_return_minus_one( EINVAL );                 
   46fe2:	4eb9 0005 115c 	jsr 5115c <__errno>                         
   46fe8:	78ff           	moveq #-1,%d4                               
   46fea:	2040           	moveal %d0,%a0                              
   46fec:	7016           	moveq #22,%d0                               
   46fee:	2080           	movel %d0,%a0@                              
    if (bytes != iov[ v ].iov_len)                                    
      break;                                                          
  }                                                                   
                                                                      
  return total;                                                       
}                                                                     
   46ff0:	2004           	movel %d4,%d0                               
   46ff2:	4cee 0c7c ffe4 	moveml %fp@(-28),%d2-%d6/%a2-%a3            
   46ff8:	4e5e           	unlk %fp                                    
   46ffa:	4e75           	rts                                         
  }                                                                   
                                                                      
  /*                                                                  
   * A writev with all zeros is supposed to have no effect per OpenGroup.
   */                                                                 
  if ( all_zeros == true ) {                                          
   46ffc:	4284           	clrl %d4                                    
    if (bytes != iov[ v ].iov_len)                                    
      break;                                                          
  }                                                                   
                                                                      
  return total;                                                       
}                                                                     
   46ffe:	2004           	movel %d4,%d0                               
   47000:	4cee 0c7c ffe4 	moveml %fp@(-28),%d2-%d6/%a2-%a3            
   47006:	4e5e           	unlk %fp                                    
   47008:	4e75           	rts                                         
  for ( total=0, v=0 ; v < iovcnt ; v++ ) {                           
    /* all zero lengths has no effect */                              
    if ( iov[v].iov_len == 0 )                                        
      continue;                                                       
                                                                      
    bytes = (*iop->handlers->write_h)( iop, iov[v].iov_base, iov[v].iov_len );
   4700a:	206b 003c      	moveal %a3@(60),%a0                         
   4700e:	2f00           	movel %d0,%sp@-                             
   47010:	2f2a fffc      	movel %a2@(-4),%sp@-                        
   47014:	2f0b           	movel %a3,%sp@-                             
   47016:	2068 000c      	moveal %a0@(12),%a0                         
   4701a:	4e90           	jsr %a0@                                    
                                                                      
    if ( bytes < 0 )                                                  
   4701c:	4fef 000c      	lea %sp@(12),%sp                            
   47020:	4a80           	tstl %d0                                    
   47022:	6d5a           	blts 4707e <writev+0x142>                   
      return -1;                                                      
                                                                      
    if ( bytes > 0 ) {                                                
   47024:	6716           	beqs 4703c <writev+0x100>                   
      iop->offset += bytes;                                           
      total       += bytes;                                           
   47026:	d880           	addl %d0,%d4                                
                                                                      
    if ( bytes < 0 )                                                  
      return -1;                                                      
                                                                      
    if ( bytes > 0 ) {                                                
      iop->offset += bytes;                                           
   47028:	2c00           	movel %d0,%d6                               
   4702a:	5bc5           	smi %d5                                     
   4702c:	49c5           	extbl %d5                                   
   4702e:	ddab 0010      	addl %d6,%a3@(16)                           
   47032:	222b 000c      	movel %a3@(12),%d1                          
   47036:	d385           	addxl %d5,%d1                               
   47038:	2741 000c      	movel %d1,%a3@(12)                          
      total       += bytes;                                           
    }                                                                 
                                                                      
    if (bytes != iov[ v ].iov_len)                                    
   4703c:	b092           	cmpl %a2@,%d0                               
   4703e:	6696           	bnes 46fd6 <writev+0x9a>                    
  }                                                                   
                                                                      
  /*                                                                  
   *  Now process the writev().                                       
   */                                                                 
  for ( total=0, v=0 ; v < iovcnt ; v++ ) {                           
   47040:	508a           	addql #8,%a2                                
   47042:	b682           	cmpl %d2,%d3                                
   47044:	6d82           	blts 46fc8 <writev+0x8c>                    
   47046:	608e           	bras 46fd6 <writev+0x9a>                    
  ssize_t        old;                                                 
  bool           all_zeros;                                           
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open( iop );                                   
   47048:	4eb9 0005 115c 	jsr 5115c <__errno>                         
   4704e:	78ff           	moveq #-1,%d4                               
   47050:	7209           	moveq #9,%d1                                
   47052:	2040           	moveal %d0,%a0                              
    if (bytes != iov[ v ].iov_len)                                    
      break;                                                          
  }                                                                   
                                                                      
  return total;                                                       
}                                                                     
   47054:	2004           	movel %d4,%d0                               
   47056:	4cee 0c7c ffe4 	moveml %fp@(-28),%d2-%d6/%a2-%a3            
  ssize_t        old;                                                 
  bool           all_zeros;                                           
                                                                      
  rtems_libio_check_fd( fd );                                         
  iop = rtems_libio_iop( fd );                                        
  rtems_libio_check_is_open( iop );                                   
   4705c:	2081           	movel %d1,%a0@                              
    if (bytes != iov[ v ].iov_len)                                    
      break;                                                          
  }                                                                   
                                                                      
  return total;                                                       
}                                                                     
   4705e:	4e5e           	unlk %fp                                    
   47060:	4e75           	rts                                         
                                                                      
  if ( iovcnt > IOV_MAX )                                             
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  if ( !iop->handlers->write_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   47062:	4eb9 0005 115c 	jsr 5115c <__errno>                         <== NOT EXECUTED
   47068:	78ff           	moveq #-1,%d4                               <== NOT EXECUTED
   4706a:	2040           	moveal %d0,%a0                              <== NOT EXECUTED
    if (bytes != iov[ v ].iov_len)                                    
      break;                                                          
  }                                                                   
                                                                      
  return total;                                                       
}                                                                     
   4706c:	2004           	movel %d4,%d0                               <== NOT EXECUTED
   4706e:	4cee 0c7c ffe4 	moveml %fp@(-28),%d2-%d6/%a2-%a3            <== NOT EXECUTED
                                                                      
  if ( iovcnt > IOV_MAX )                                             
    rtems_set_errno_and_return_minus_one( EINVAL );                   
                                                                      
  if ( !iop->handlers->write_h )                                      
    rtems_set_errno_and_return_minus_one( ENOTSUP );                  
   47074:	20bc 0000 0086 	movel #134,%a0@                             <== NOT EXECUTED
    if (bytes != iov[ v ].iov_len)                                    
      break;                                                          
  }                                                                   
                                                                      
  return total;                                                       
}                                                                     
   4707a:	4e5e           	unlk %fp                                    <== NOT EXECUTED
   4707c:	4e75           	rts                                         <== NOT EXECUTED
    if ( iov[v].iov_len == 0 )                                        
      continue;                                                       
                                                                      
    bytes = (*iop->handlers->write_h)( iop, iov[v].iov_base, iov[v].iov_len );
                                                                      
    if ( bytes < 0 )                                                  
   4707e:	78ff           	moveq #-1,%d4                               <== NOT EXECUTED
    if (bytes != iov[ v ].iov_len)                                    
      break;                                                          
  }                                                                   
                                                                      
  return total;                                                       
}                                                                     
   47080:	2004           	movel %d4,%d0                               <== NOT EXECUTED
   47082:	4cee 0c7c ffe4 	moveml %fp@(-28),%d2-%d6/%a2-%a3            <== NOT EXECUTED
   47088:	4e5e           	unlk %fp                                    <== NOT EXECUTED