RTEMS-6
Annotated Report
librfs
Mon Mar 1 00:15:21 2021

0000000040026a20 <rtems_rfs_bitmap_create_search>:                                        
  if (!control->buffer)                                                                   
    40026a20:   f9400001    ldr x1, [x0]                                                  
    40026a24:   b4000901    cbz x1, 40026b44 <rtems_rfs_bitmap_create_search+0x124>       
                                                                                          
int                                                                                       
rtems_rfs_bitmap_create_search (rtems_rfs_bitmap_control* control)                        
{                                                                                         
    40026a28:   a9be7bfd    stp x29, x30, [sp, #-32]!                                     
  rc = rtems_rfs_buffer_handle_request (control->fs,                                      
    40026a2c:   52800023    mov w3, #0x1                    // #1                         
{                                                                                         
    40026a30:   910003fd    mov x29, sp                                                   
  rc = rtems_rfs_buffer_handle_request (control->fs,                                      
    40026a34:   b9401002    ldr w2, [x0, #16]                                             
{                                                                                         
    40026a38:   f9000bf3    str x19, [sp, #16]                                            
    40026a3c:   aa0003f3    mov x19, x0                                                   
  rc = rtems_rfs_buffer_handle_request (control->fs,                                      
    40026a40:   f9400400    ldr x0, [x0, #8]                                              
    40026a44:   94000163    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
  if (rc)                                                                                 
    40026a48:   7100001f    cmp w0, #0x0                                                  
    40026a4c:   35000760    cbnz    w0, 40026b38 <rtems_rfs_bitmap_create_search+0x118>   <== NEVER TAKEN
  *map = rtems_rfs_buffer_data (control->buffer);                                         
    40026a50:   f9400260    ldr x0, [x19]                                                 
    40026a54:   f9400400    ldr x0, [x0, #8]                                              
    40026a58:   f9401c05    ldr x5, [x0, #56]                                             
                                                                                          
  rc = rtems_rfs_bitmap_load_map (control, &map);                                         
  if (rc > 0)                                                                             
    return rc;                                                                            
                                                                                          
  control->free = 0;                                                                      
    40026a5c:   f900127f    str xzr, [x19, #32]                                           
  search_map = control->search_bits;                                                      
    40026a60:   f940166a    ldr x10, [x19, #40]                                           
  size = control->size;                                                                   
  bit = 0;                                                                                
                                                                                          
  rtems_rfs_bitmap_check(control, search_map);                                            
  *search_map = RTEMS_RFS_BITMAP_ELEMENT_CLEAR;                                           
    40026a64:   12800009    mov w9, #0xffffffff             // #-1                        
  size = control->size;                                                                   
    40026a68:   f9400e63    ldr x3, [x19, #24]                                            
  *search_map = RTEMS_RFS_BITMAP_ELEMENT_CLEAR;                                           
    40026a6c:   b9000149    str w9, [x10]                                                 
  while (size)                                                                            
    40026a70:   b40005c3    cbz x3, 40026b28 <rtems_rfs_bitmap_create_search+0x108>       <== NEVER TAKEN
    40026a74:   910010a5    add x5, x5, #0x4                                              
  {                                                                                       
    rtems_rfs_bitmap_element bits;                                                        
    int                      available;                                                   
    if (size < rtems_rfs_bitmap_element_bits ())                                          
    40026a78:   f1007c7f    cmp x3, #0x1f                                                 
  bit = 0;                                                                                
    40026a7c:   52800006    mov w6, #0x0                    // #0                         
  mask >>= (rtems_rfs_bitmap_element_bits () - size);                                     
    40026a80:   5280040b    mov w11, #0x20                      // #32                    
  return RTEMS_RFS_BITMAP_TEST_BIT (target, bit);                                         
    40026a84:   52800028    mov w8, #0x1                    // #1                         
    {                                                                                     
      bits = rtems_rfs_bitmap_merge (*map,                                                
    40026a88:   b85fc0a4    ldur    w4, [x5, #-4]                                         
    if (size < rtems_rfs_bitmap_element_bits ())                                          
    40026a8c:   54000208    b.hi    40026acc <rtems_rfs_bitmap_create_search+0xac>  // b.pmore
  mask >>= (rtems_rfs_bitmap_element_bits () - size);                                     
    40026a90:   4b030161    sub w1, w11, w3                                               
                                     RTEMS_RFS_BITMAP_ELEMENT_SET,                        
                                     rtems_rfs_bitmap_mask_section (0, size));            
      available = size;                                                                   
    40026a94:   2a0303e0    mov w0, w3                                                    
    40026a98:   aa0303e7    mov x7, x3                                                    
  mask >>= (rtems_rfs_bitmap_element_bits () - size);                                     
    40026a9c:   1ac12521    lsr w1, w9, w1                                                
    40026aa0:   0a010084    and w4, w4, w1                                                
    {                                                                                     
      bits      = *map;                                                                   
      available = rtems_rfs_bitmap_element_bits ();                                       
    }                                                                                     
                                                                                          
    if (rtems_rfs_bitmap_match (bits, RTEMS_RFS_BITMAP_ELEMENT_SET))                      
    40026aa4:   350001a4    cbnz    w4, 40026ad8 <rtems_rfs_bitmap_create_search+0xb8>    
      for (b = 0; b < available; b++)                                                     
        if (!rtems_rfs_bitmap_test (bits, b))                                             
          control->free++;                                                                
    }                                                                                     
                                                                                          
    size -= available;                                                                    
    40026aa8:   cb070063    sub x3, x3, x7                                                
                                                                                          
    /* Iterate from 0 to 1 less than the number of bits in an element */                  
    if (bit == (rtems_rfs_bitmap_element_bits () - 1))                                    
    40026aac:   71007cdf    cmp w6, #0x1f                                                 
    40026ab0:   54000300    b.eq    40026b10 <rtems_rfs_bitmap_create_search+0xf0>  // b.none
        rtems_rfs_bitmap_check(control, search_map);                                      
        *search_map = RTEMS_RFS_BITMAP_ELEMENT_CLEAR;                                     
      }                                                                                   
    }                                                                                     
    else                                                                                  
      bit++;                                                                              
    40026ab4:   110004c6    add w6, w6, #0x1                                              
  while (size)                                                                            
    40026ab8:   b4000383    cbz x3, 40026b28 <rtems_rfs_bitmap_create_search+0x108>       
    40026abc:   910010a5    add x5, x5, #0x4                                              
      bits = rtems_rfs_bitmap_merge (*map,                                                
    40026ac0:   b85fc0a4    ldur    w4, [x5, #-4]                                         
    if (size < rtems_rfs_bitmap_element_bits ())                                          
    40026ac4:   f1007c7f    cmp x3, #0x1f                                                 
    40026ac8:   54fffe49    b.ls    40026a90 <rtems_rfs_bitmap_create_search+0x70>  // b.plast
    40026acc:   d2800407    mov x7, #0x20                   // #32                        
      available = rtems_rfs_bitmap_element_bits ();                                       
    40026ad0:   2a0703e0    mov w0, w7                                                    
    if (rtems_rfs_bitmap_match (bits, RTEMS_RFS_BITMAP_ELEMENT_SET))                      
    40026ad4:   34fffea4    cbz w4, 40026aa8 <rtems_rfs_bitmap_create_search+0x88>        
      for (b = 0; b < available; b++)                                                     
    40026ad8:   52800001    mov w1, #0x0                    // #0                         
    40026adc:   d503201f    nop                                                           
  return RTEMS_RFS_BITMAP_TEST_BIT (target, bit);                                         
    40026ae0:   1ac12102    lsl w2, w8, w1                                                
        if (!rtems_rfs_bitmap_test (bits, b))                                             
    40026ae4:   11000421    add w1, w1, #0x1                                              
    40026ae8:   6a04005f    tst w2, w4                                                    
    40026aec:   54000080    b.eq    40026afc <rtems_rfs_bitmap_create_search+0xdc>  // b.none
          control->free++;                                                                
    40026af0:   f9401262    ldr x2, [x19, #32]                                            
    40026af4:   91000442    add x2, x2, #0x1                                              
    40026af8:   f9001262    str x2, [x19, #32]                                            
      for (b = 0; b < available; b++)                                                     
    40026afc:   6b01001f    cmp w0, w1                                                    
    40026b00:   54ffff01    b.ne    40026ae0 <rtems_rfs_bitmap_create_search+0xc0>  // b.any
    size -= available;                                                                    
    40026b04:   cb070063    sub x3, x3, x7                                                
    if (bit == (rtems_rfs_bitmap_element_bits () - 1))                                    
    40026b08:   71007cdf    cmp w6, #0x1f                                                 
    40026b0c:   54fffd41    b.ne    40026ab4 <rtems_rfs_bitmap_create_search+0x94>  // b.any
      if (size > 0)                                                                       
    40026b10:   b40000c3    cbz x3, 40026b28 <rtems_rfs_bitmap_create_search+0x108>       
        search_map++;                                                                     
    40026b14:   9100114a    add x10, x10, #0x4                                            
    40026b18:   910010a5    add x5, x5, #0x4                                              
      bit = 0;                                                                            
    40026b1c:   52800006    mov w6, #0x0                    // #0                         
        *search_map = RTEMS_RFS_BITMAP_ELEMENT_CLEAR;                                     
    40026b20:   b9000149    str w9, [x10]                                                 
  while (size)                                                                            
    40026b24:   17ffffe7    b   40026ac0 <rtems_rfs_bitmap_create_search+0xa0>            
    map++;                                                                                
  }                                                                                       
                                                                                          
  return 0;                                                                               
    40026b28:   52800000    mov w0, #0x0                    // #0                         
}                                                                                         
    40026b2c:   f9400bf3    ldr x19, [sp, #16]                                            
    40026b30:   a8c27bfd    ldp x29, x30, [sp], #32                                       
    40026b34:   d65f03c0    ret                                                           
  if (rc > 0)                                                                             
    40026b38:   54ffffac    b.gt    40026b2c <rtems_rfs_bitmap_create_search+0x10c>       <== NOT EXECUTED
  *map = NULL;                                                                            
    40026b3c:   d2800005    mov x5, #0x0                    // #0                         <== NOT EXECUTED
    40026b40:   17ffffc7    b   40026a5c <rtems_rfs_bitmap_create_search+0x3c>            <== NOT EXECUTED
    return ENXIO;                                                                         
    40026b44:   528000c0    mov w0, #0x6                    // #6                         
}                                                                                         
    40026b48:   d65f03c0    ret                                                           
    40026b4c:   00000000    udf #0                                                        
                                                                                          

0000000040026920 <rtems_rfs_bitmap_map_alloc>: int rtems_rfs_bitmap_map_alloc (rtems_rfs_bitmap_control* control, rtems_rfs_bitmap_bit seed, bool* allocated, rtems_rfs_bitmap_bit* bit) {
    40026920:   a9bc7bfd    stp x29, x30, [sp, #-64]!                                     
    40026924:   910003fd    mov x29, sp                                                   
    40026928:   a90153f3    stp x19, x20, [sp, #16]                                       
    4002692c:   2a0103f3    mov w19, w1                                                   
    40026930:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40026934:   aa0003f6    mov x22, x0                                                   
   * seed up then from the seed down a window number of bits, then repeat the             
   * process from the window distance from the seed, again above then                     
   * below. Keep moving out until all bits have been searched.                            
   */                                                                                     
  upper_seed = seed;                                                                      
  lower_seed = seed;                                                                      
    40026938:   2a0103f5    mov w21, w1                                                   
{                                                                                         
    4002693c:   a90363f7    stp x23, x24, [sp, #48]                                       
    40026940:   aa0203f7    mov x23, x2                                                   
    40026944:   aa0303f8    mov x24, x3                                                   
  *allocated = false;                                                                     
    40026948:   3900005f    strb    wzr, [x2]                                             
   * we have searched all of the map. The seed may not be aligned to a window             
   * boundary so we may need to search a partial window and this may also not             
   * be balanced for the upper or lower seeds. We move to the limits, search              
   * then return false if no clear bits are found.                                        
   */                                                                                     
  while (((upper_seed >= 0) && (upper_seed < control->size))                              
    4002694c:   d503201f    nop                                                           
    40026950:   37f802d3    tbnz    w19, #31, 400269a8 <rtems_rfs_bitmap_map_alloc+0x88>  
    40026954:   f9400ec0    ldr x0, [x22, #24]                                            
    40026958:   93407e74    sxtw    x20, w19                                              
    4002695c:   eb00029f    cmp x20, x0                                                   
    40026960:   54000242    b.cs    400269a8 <rtems_rfs_bitmap_map_alloc+0x88>  // b.hs, b.nlast
    /*                                                                                    
     * Search up first so bits allocated in succession are grouped together.              
     */                                                                                   
    if (upper_seed < control->size)                                                       
    {                                                                                     
      *bit = upper_seed;                                                                  
    40026964:   b9000313    str w19, [x24]                                                
      rc = rtems_rfs_search_map_for_clear_bit (control, bit, allocated,                   
    40026968:   aa1703e2    mov x2, x23                                                   
    4002696c:   aa1803e1    mov x1, x24                                                   
    40026970:   aa1603e0    mov x0, x22                                                   
    40026974:   52800023    mov w3, #0x1                    // #1                         
    40026978:   97fffe4e    bl  400262b0 <rtems_rfs_search_map_for_clear_bit.constprop.0> 
                                               window, 1);                                
      if ((rc > 0) || *allocated)                                                         
    4002697c:   7100001f    cmp w0, #0x0                                                  
    40026980:   5400042c    b.gt    40026a04 <rtems_rfs_bitmap_map_alloc+0xe4>            <== NEVER TAKEN
    40026984:   394002e0    ldrb    w0, [x23]                                             
    40026988:   350003e0    cbnz    w0, 40026a04 <rtems_rfs_bitmap_map_alloc+0xe4>        
        break;                                                                            
    }                                                                                     
                                                                                          
    if (lower_seed >= 0)                                                                  
    4002698c:   36f801d5    tbz w21, #31, 400269c4 <rtems_rfs_bitmap_map_alloc+0xa4>      
                                                                                          
    /*                                                                                    
     * Do not bound the limits at the edges of the map. Do not update if an               
     * edge has been passed.                                                              
     */                                                                                   
    if (upper_seed < control->size)                                                       
    40026990:   f9400ec0    ldr x0, [x22, #24]                                            
    40026994:   eb00029f    cmp x20, x0                                                   
    40026998:   54fffdc2    b.cs    40026950 <rtems_rfs_bitmap_map_alloc+0x30>  // b.hs, b.nlast<== NEVER TAKEN
      upper_seed += window;                                                               
    4002699c:   11200273    add w19, w19, #0x800                                          
  while (((upper_seed >= 0) && (upper_seed < control->size))                              
    400269a0:   36fffdb3    tbz w19, #31, 40026954 <rtems_rfs_bitmap_map_alloc+0x34>      <== ALWAYS TAKEN
    400269a4:   d503201f    nop                                                           
         || ((lower_seed >= 0) && (lower_seed < control->size)))                          
    400269a8:   37f802f5    tbnz    w21, #31, 40026a04 <rtems_rfs_bitmap_map_alloc+0xe4>  
    400269ac:   f9400ec0    ldr x0, [x22, #24]                                            
    400269b0:   eb35c01f    cmp x0, w21, sxtw                                             
    400269b4:   54000289    b.ls    40026a04 <rtems_rfs_bitmap_map_alloc+0xe4>  // b.plast
    if (upper_seed < control->size)                                                       
    400269b8:   93407e74    sxtw    x20, w19                                              
    400269bc:   eb00029f    cmp x20, x0                                                   
    400269c0:   54fffd23    b.cc    40026964 <rtems_rfs_bitmap_map_alloc+0x44>  // b.lo, b.ul, b.last<== NEVER TAKEN
      *bit = lower_seed;                                                                  
    400269c4:   b9000315    str w21, [x24]                                                
      rc = rtems_rfs_search_map_for_clear_bit (control, bit, allocated,                   
    400269c8:   aa1703e2    mov x2, x23                                                   
    400269cc:   aa1803e1    mov x1, x24                                                   
    400269d0:   aa1603e0    mov x0, x22                                                   
    400269d4:   12800003    mov w3, #0xffffffff             // #-1                        
    400269d8:   97fffe36    bl  400262b0 <rtems_rfs_search_map_for_clear_bit.constprop.0> 
      if ((rc > 0) || *allocated)                                                         
    400269dc:   7100001f    cmp w0, #0x0                                                  
    400269e0:   5400012c    b.gt    40026a04 <rtems_rfs_bitmap_map_alloc+0xe4>            <== NEVER TAKEN
    400269e4:   394002e0    ldrb    w0, [x23]                                             
    400269e8:   350000e0    cbnz    w0, 40026a04 <rtems_rfs_bitmap_map_alloc+0xe4>        
    if (upper_seed < control->size)                                                       
    400269ec:   f9400ec1    ldr x1, [x22, #24]                                            
      upper_seed += window;                                                               
    400269f0:   11200260    add w0, w19, #0x800                                           
    if (lower_seed >= 0)                                                                  
      lower_seed -= window;                                                               
    400269f4:   512002b5    sub w21, w21, #0x800                                          
      upper_seed += window;                                                               
    400269f8:   eb01029f    cmp x20, x1                                                   
    400269fc:   1a933013    csel    w19, w0, w19, cc  // cc = lo, ul, last                
      lower_seed -= window;                                                               
    40026a00:   17ffffd4    b   40026950 <rtems_rfs_bitmap_map_alloc+0x30>                
  }                                                                                       
                                                                                          
  return 0;                                                                               
}                                                                                         
    40026a04:   52800000    mov w0, #0x0                    // #0                         
    40026a08:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40026a0c:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40026a10:   a94363f7    ldp x23, x24, [sp, #48]                                       
    40026a14:   a8c47bfd    ldp x29, x30, [sp], #64                                       
    40026a18:   d65f03c0    ret                                                           
    40026a1c:   00000000    udf #0                                                        
                                                                                          

0000000040026600 <rtems_rfs_bitmap_map_clear>: {
    40026600:   a9be7bfd    stp x29, x30, [sp, #-32]!                                     
    40026604:   910003fd    mov x29, sp                                                   
    40026608:   a90153f3    stp x19, x20, [sp, #16]                                       
    4002660c:   2a0103f4    mov w20, w1                                                   
  if (!control->buffer)                                                                   
    40026610:   f9400001    ldr x1, [x0]                                                  
    40026614:   b4000561    cbz x1, 400266c0 <rtems_rfs_bitmap_map_clear+0xc0>            
  rc = rtems_rfs_buffer_handle_request (control->fs,                                      
    40026618:   b9401002    ldr w2, [x0, #16]                                             
    4002661c:   aa0003f3    mov x19, x0                                                   
    40026620:   f9400400    ldr x0, [x0, #8]                                              
    40026624:   52800023    mov w3, #0x1                    // #1                         
    40026628:   9400026a    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
  if (rc)                                                                                 
    4002662c:   7100001f    cmp w0, #0x0                                                  
    40026630:   35000420    cbnz    w0, 400266b4 <rtems_rfs_bitmap_map_clear+0xb4>        <== NEVER TAKEN
  *map = rtems_rfs_buffer_data (control->buffer);                                         
    40026634:   f9400260    ldr x0, [x19]                                                 
    40026638:   f9400400    ldr x0, [x0, #8]                                              
    4002663c:   f9401c04    ldr x4, [x0, #56]                                             
    return EINVAL;                                                                        
    40026640:   528002c0    mov w0, #0x16                   // #22                        
  if (bit >= control->size)                                                               
    40026644:   f9400e61    ldr x1, [x19, #24]                                            
    40026648:   eb34c03f    cmp x1, w20, sxtw                                             
    4002664c:   540002e9    b.ls    400266a8 <rtems_rfs_bitmap_map_clear+0xa8>  // b.plast
  index      = rtems_rfs_bitmap_map_index (bit);                                          
    40026650:   13057e82    asr w2, w20, #5                                               
  map[index] = rtems_rfs_bitmap_clear (element, 1 << offset);                             
    40026654:   52800023    mov w3, #0x1                    // #1                         
    40026658:   1ad42061    lsl w1, w3, w20                                               
      return 0;                                                                           
    4002665c:   52800000    mov w0, #0x0                    // #0                         
  element    = map[index];                                                                
    40026660:   93407c46    sxtw    x6, w2                                                
  search_map = control->search_bits;                                                      
    40026664:   f9401667    ldr x7, [x19, #40]                                            
  element    = map[index];                                                                
    40026668:   b8667885    ldr w5, [x4, x6, lsl #2]                                      
  return RTEMS_RFS_BITMAP_CLEAR_BITS (target, bits);                                      
    4002666c:   2a050021    orr w1, w1, w5                                                
  map[index] = rtems_rfs_bitmap_clear (element, 1 << offset);                             
    40026670:   b8267881    str w1, [x4, x6, lsl #2]                                      
  if (rtems_rfs_bitmap_match(element, map[index]))                                        
    40026674:   6b0100bf    cmp w5, w1                                                    
    40026678:   54000180    b.eq    400266a8 <rtems_rfs_bitmap_map_clear+0xa8>  // b.none <== NEVER TAKEN
  index             = rtems_rfs_bitmap_map_index (bit);                                   
    4002667c:   130a7e94    asr w20, w20, #10                                             
  search_map[index] = rtems_rfs_bitmap_clear (search_map[index], 1 << offset);            
    40026680:   1ac22062    lsl w2, w3, w2                                                
  rtems_rfs_buffer_mark_dirty (control->buffer);                                          
    40026684:   f9400265    ldr x5, [x19]                                                 
  search_map[index] = rtems_rfs_bitmap_clear (search_map[index], 1 << offset);            
    40026688:   93407e94    sxtw    x20, w20                                              
  control->free++;                                                                        
    4002668c:   f9401261    ldr x1, [x19, #32]                                            
  return RTEMS_RFS_BITMAP_CLEAR_BITS (target, bits);                                      
    40026690:   b87478e4    ldr w4, [x7, x20, lsl #2]                                     
  control->free++;                                                                        
    40026694:   91000421    add x1, x1, #0x1                                              
  return RTEMS_RFS_BITMAP_CLEAR_BITS (target, bits);                                      
    40026698:   2a020082    orr w2, w4, w2                                                
  search_map[index] = rtems_rfs_bitmap_clear (search_map[index], 1 << offset);            
    4002669c:   b83478e2    str w2, [x7, x20, lsl #2]                                     
  rtems_rfs_buffer_mark_dirty (control->buffer);                                          
    400266a0:   390000a3    strb    w3, [x5]                                              
  control->free++;                                                                        
    400266a4:   f9001261    str x1, [x19, #32]                                            
}                                                                                         
    400266a8:   a94153f3    ldp x19, x20, [sp, #16]                                       
    400266ac:   a8c27bfd    ldp x29, x30, [sp], #32                                       
    400266b0:   d65f03c0    ret                                                           
  if (rc > 0)                                                                             
    400266b4:   54ffffac    b.gt    400266a8 <rtems_rfs_bitmap_map_clear+0xa8>            <== NOT EXECUTED
  *map = NULL;                                                                            
    400266b8:   d2800004    mov x4, #0x0                    // #0                         <== NOT EXECUTED
    400266bc:   17ffffe1    b   40026640 <rtems_rfs_bitmap_map_clear+0x40>                <== NOT EXECUTED
    return ENXIO;                                                                         
    400266c0:   528000c0    mov w0, #0x6                    // #6                         
}                                                                                         
    400266c4:   a94153f3    ldp x19, x20, [sp, #16]                                       
    400266c8:   a8c27bfd    ldp x29, x30, [sp], #32                                       
    400266cc:   d65f03c0    ret                                                           
                                                                                          

0000000040026840 <rtems_rfs_bitmap_map_clear_all>: if (!control->buffer)
    40026840:   f9400001    ldr x1, [x0]                                                  
    40026844:   b4000641    cbz x1, 4002690c <rtems_rfs_bitmap_map_clear_all+0xcc>        
{                                                                                         
    40026848:   a9bd7bfd    stp x29, x30, [sp, #-48]!                                     
  rc = rtems_rfs_buffer_handle_request (control->fs,                                      
    4002684c:   52800023    mov w3, #0x1                    // #1                         
{                                                                                         
    40026850:   910003fd    mov x29, sp                                                   
  rc = rtems_rfs_buffer_handle_request (control->fs,                                      
    40026854:   b9401002    ldr w2, [x0, #16]                                             
{                                                                                         
    40026858:   a90153f3    stp x19, x20, [sp, #16]                                       
    4002685c:   aa0003f3    mov x19, x0                                                   
  rc = rtems_rfs_buffer_handle_request (control->fs,                                      
    40026860:   f9400400    ldr x0, [x0, #8]                                              
{                                                                                         
    40026864:   a9025bf5    stp x21, x22, [sp, #32]                                       
  rc = rtems_rfs_buffer_handle_request (control->fs,                                      
    40026868:   940001da    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
  if (rc)                                                                                 
    4002686c:   7100001f    cmp w0, #0x0                                                  
    40026870:   35000460    cbnz    w0, 400268fc <rtems_rfs_bitmap_map_clear_all+0xbc>    <== NEVER TAKEN
  *map = rtems_rfs_buffer_data (control->buffer);                                         
    40026874:   f9400276    ldr x22, [x19]                                                
    40026878:   f94006c0    ldr x0, [x22, #8]                                             
    4002687c:   f9401c00    ldr x0, [x0, #56]                                             
    map[e] = RTEMS_RFS_BITMAP_ELEMENT_CLEAR;                                              
    40026880:   52801fe1    mov w1, #0xff                   // #255                       
  elements = rtems_rfs_bitmap_elements (control->size);                                   
    40026884:   f9400e62    ldr x2, [x19, #24]                                            
  control->free = control->size;                                                          
    40026888:   f9001262    str x2, [x19, #32]                                            
  elements = rtems_rfs_bitmap_elements (control->size);                                   
    4002688c:   d1000454    sub x20, x2, #0x1                                             
    40026890:   d345fe95    lsr x21, x20, #5                                              
    40026894:   910006b5    add x21, x21, #0x1                                            
    map[e] = RTEMS_RFS_BITMAP_ELEMENT_CLEAR;                                              
    40026898:   d37ef6a2    lsl x2, x21, #2                                               
    4002689c:   94005dc4    bl  4003dfac <memset>                                         
  last_search_bit = rtems_rfs_bitmap_map_offset (elements);                               
    400268a0:   720012b5    ands    w21, w21, #0x1f                                       
  elements = rtems_rfs_bitmap_elements (elements);                                        
    400268a4:   d34afe82    lsr x2, x20, #10                                              
  mask >>= (rtems_rfs_bitmap_element_bits () - size);                                     
    400268a8:   4b1503f4    neg w20, w21                                                  
    400268ac:   12800000    mov w0, #0xffffffff             // #-1                        
  elements = rtems_rfs_bitmap_elements (elements);                                        
    400268b0:   91000455    add x21, x2, #0x1                                             
  mask >>= (rtems_rfs_bitmap_element_bits () - size);                                     
    400268b4:   1ad42414    lsr w20, w0, w20                                              
    400268b8:   1a801294    csel    w20, w20, w0, ne  // ne = any                         
  control->search_bits[elements - 1] =                                                    
    400268bc:   f9401663    ldr x3, [x19, #40]                                            
  for (e = 0; e < (elements - 1); e++)                                                    
    400268c0:   b40000c2    cbz x2, 400268d8 <rtems_rfs_bitmap_map_clear_all+0x98>        
    control->search_bits[e] = RTEMS_RFS_BITMAP_ELEMENT_CLEAR;                             
    400268c4:   aa0303e0    mov x0, x3                                                    
    400268c8:   d37ef442    lsl x2, x2, #2                                                
    400268cc:   52801fe1    mov w1, #0xff                   // #255                       
    400268d0:   94005db7    bl  4003dfac <memset>                                         
    400268d4:   aa0003e3    mov x3, x0                                                    
  control->search_bits[elements - 1] =                                                    
    400268d8:   8b150875    add x21, x3, x21, lsl #2                                      
  rtems_rfs_buffer_mark_dirty (control->buffer);                                          
    400268dc:   52800021    mov w1, #0x1                    // #1                         
  return 0;                                                                               
    400268e0:   52800000    mov w0, #0x0                    // #0                         
  control->search_bits[elements - 1] =                                                    
    400268e4:   b81fc2b4    stur    w20, [x21, #-4]                                       
  rtems_rfs_buffer_mark_dirty (control->buffer);                                          
    400268e8:   390002c1    strb    w1, [x22]                                             
}                                                                                         
    400268ec:   a94153f3    ldp x19, x20, [sp, #16]                                       
    400268f0:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    400268f4:   a8c37bfd    ldp x29, x30, [sp], #48                                       
    400268f8:   d65f03c0    ret                                                           
  if (rc > 0)                                                                             
    400268fc:   54ffff8c    b.gt    400268ec <rtems_rfs_bitmap_map_clear_all+0xac>        <== NOT EXECUTED
  *map = NULL;                                                                            
    40026900:   d2800000    mov x0, #0x0                    // #0                         <== NOT EXECUTED
  *map = rtems_rfs_buffer_data (control->buffer);                                         
    40026904:   f9400276    ldr x22, [x19]                                                <== NOT EXECUTED
    40026908:   17ffffde    b   40026880 <rtems_rfs_bitmap_map_clear_all+0x40>            <== NOT EXECUTED
    return ENXIO;                                                                         
    4002690c:   528000c0    mov w0, #0x6                    // #6                         
}                                                                                         
    40026910:   d65f03c0    ret                                                           
    ...                                                                                   
                                                                                          

0000000040026520 <rtems_rfs_bitmap_map_set>: {
    40026520:   a9be7bfd    stp x29, x30, [sp, #-32]!                                     
    40026524:   910003fd    mov x29, sp                                                   
    40026528:   a90153f3    stp x19, x20, [sp, #16]                                       
    4002652c:   2a0103f4    mov w20, w1                                                   
  if (!control->buffer)                                                                   
    40026530:   f9400001    ldr x1, [x0]                                                  
    40026534:   b40005e1    cbz x1, 400265f0 <rtems_rfs_bitmap_map_set+0xd0>              
  rc = rtems_rfs_buffer_handle_request (control->fs,                                      
    40026538:   b9401002    ldr w2, [x0, #16]                                             
    4002653c:   aa0003f3    mov x19, x0                                                   
    40026540:   f9400400    ldr x0, [x0, #8]                                              
    40026544:   52800023    mov w3, #0x1                    // #1                         
    40026548:   940002a2    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
  if (rc)                                                                                 
    4002654c:   7100001f    cmp w0, #0x0                                                  
    40026550:   350004a0    cbnz    w0, 400265e4 <rtems_rfs_bitmap_map_set+0xc4>          <== NEVER TAKEN
  *map = rtems_rfs_buffer_data (control->buffer);                                         
    40026554:   f9400260    ldr x0, [x19]                                                 
    40026558:   f9400400    ldr x0, [x0, #8]                                              
    4002655c:   f9401c02    ldr x2, [x0, #56]                                             
    return EINVAL;                                                                        
    40026560:   528002c0    mov w0, #0x16                   // #22                        
  if (bit >= control->size)                                                               
    40026564:   f9400e61    ldr x1, [x19, #24]                                            
    40026568:   eb34c03f    cmp x1, w20, sxtw                                             
    4002656c:   540002e9    b.ls    400265c8 <rtems_rfs_bitmap_map_set+0xa8>  // b.plast  
  index      = rtems_rfs_bitmap_map_index (bit);                                          
    40026570:   13057e85    asr w5, w20, #5                                               
  map[index] = rtems_rfs_bitmap_set (element, 1 << offset);                               
    40026574:   52800021    mov w1, #0x1                    // #1                         
    40026578:   1ad42020    lsl w0, w1, w20                                               
  element    = map[index];                                                                
    4002657c:   93407ca4    sxtw    x4, w5                                                
  search_map = control->search_bits;                                                      
    40026580:   f9401666    ldr x6, [x19, #40]                                            
  element    = map[index];                                                                
    40026584:   b8647843    ldr w3, [x2, x4, lsl #2]                                      
  return RTEMS_RFS_BITMAP_SET_BITS (target, bits);                                        
    40026588:   0a200060    bic w0, w3, w0                                                
  map[index] = rtems_rfs_bitmap_set (element, 1 << offset);                               
    4002658c:   b8247840    str w0, [x2, x4, lsl #2]                                      
  if (rtems_rfs_bitmap_match(element, map[index]))                                        
    40026590:   6b00007f    cmp w3, w0                                                    
    40026594:   54000200    b.eq    400265d4 <rtems_rfs_bitmap_map_set+0xb4>  // b.none   
  rtems_rfs_buffer_mark_dirty (control->buffer);                                          
    40026598:   f9400263    ldr x3, [x19]                                                 
  control->free--;                                                                        
    4002659c:   f9401262    ldr x2, [x19, #32]                                            
    400265a0:   d1000442    sub x2, x2, #0x1                                              
    400265a4:   f9001262    str x2, [x19, #32]                                            
  rtems_rfs_buffer_mark_dirty (control->buffer);                                          
    400265a8:   39000061    strb    w1, [x3]                                              
  if (rtems_rfs_bitmap_match(map[index], RTEMS_RFS_BITMAP_ELEMENT_SET))                   
    400265ac:   35000140    cbnz    w0, 400265d4 <rtems_rfs_bitmap_map_set+0xb4>          
    index  = rtems_rfs_bitmap_map_index (bit);                                            
    400265b0:   130a7e94    asr w20, w20, #10                                             
    search_map[index] = rtems_rfs_bitmap_set (search_map[index], 1 << offset);            
    400265b4:   1ac52021    lsl w1, w1, w5                                                
    400265b8:   93407e94    sxtw    x20, w20                                              
  return RTEMS_RFS_BITMAP_SET_BITS (target, bits);                                        
    400265bc:   b87478c2    ldr w2, [x6, x20, lsl #2]                                     
    400265c0:   0a210041    bic w1, w2, w1                                                
    search_map[index] = rtems_rfs_bitmap_set (search_map[index], 1 << offset);            
    400265c4:   b83478c1    str w1, [x6, x20, lsl #2]                                     
}                                                                                         
    400265c8:   a94153f3    ldp x19, x20, [sp, #16]                                       
    400265cc:   a8c27bfd    ldp x29, x30, [sp], #32                                       
    400265d0:   d65f03c0    ret                                                           
      return 0;                                                                           
    400265d4:   52800000    mov w0, #0x0                    // #0                         
}                                                                                         
    400265d8:   a94153f3    ldp x19, x20, [sp, #16]                                       
    400265dc:   a8c27bfd    ldp x29, x30, [sp], #32                                       
    400265e0:   d65f03c0    ret                                                           
  if (rc > 0)                                                                             
    400265e4:   54ffff2c    b.gt    400265c8 <rtems_rfs_bitmap_map_set+0xa8>              <== NOT EXECUTED
  *map = NULL;                                                                            
    400265e8:   d2800002    mov x2, #0x0                    // #0                         <== NOT EXECUTED
    400265ec:   17ffffdd    b   40026560 <rtems_rfs_bitmap_map_set+0x40>                  <== NOT EXECUTED
    return ENXIO;                                                                         
    400265f0:   528000c0    mov w0, #0x6                    // #6                         
}                                                                                         
    400265f4:   a94153f3    ldp x19, x20, [sp, #16]                                       
    400265f8:   a8c27bfd    ldp x29, x30, [sp], #32                                       
    400265fc:   d65f03c0    ret                                                           
                                                                                          

0000000040026790 <rtems_rfs_bitmap_map_set_all>: if (!control->buffer)
    40026790:   f9400001    ldr x1, [x0]                                                  
    40026794:   b4000501    cbz x1, 40026834 <rtems_rfs_bitmap_map_set_all+0xa4>          
{                                                                                         
    40026798:   a9bd7bfd    stp x29, x30, [sp, #-48]!                                     
  rc = rtems_rfs_buffer_handle_request (control->fs,                                      
    4002679c:   52800023    mov w3, #0x1                    // #1                         
{                                                                                         
    400267a0:   910003fd    mov x29, sp                                                   
  rc = rtems_rfs_buffer_handle_request (control->fs,                                      
    400267a4:   b9401002    ldr w2, [x0, #16]                                             
{                                                                                         
    400267a8:   a90153f3    stp x19, x20, [sp, #16]                                       
    400267ac:   aa0003f3    mov x19, x0                                                   
  rc = rtems_rfs_buffer_handle_request (control->fs,                                      
    400267b0:   f9400400    ldr x0, [x0, #8]                                              
{                                                                                         
    400267b4:   f90013f5    str x21, [sp, #32]                                            
  rc = rtems_rfs_buffer_handle_request (control->fs,                                      
    400267b8:   94000206    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
  if (rc)                                                                                 
    400267bc:   7100001f    cmp w0, #0x0                                                  
    400267c0:   35000320    cbnz    w0, 40026824 <rtems_rfs_bitmap_map_set_all+0x94>      <== NEVER TAKEN
  *map = rtems_rfs_buffer_data (control->buffer);                                         
    400267c4:   f9400275    ldr x21, [x19]                                                
    400267c8:   f94006a0    ldr x0, [x21, #8]                                             
    400267cc:   f9401c00    ldr x0, [x0, #56]                                             
  control->free = 0;                                                                      
    400267d0:   f900127f    str xzr, [x19, #32]                                           
  elements = rtems_rfs_bitmap_elements (control->size);                                   
    400267d4:   f9400e74    ldr x20, [x19, #24]                                           
    map[e] = RTEMS_RFS_BITMAP_ELEMENT_SET;                                                
    400267d8:   52800001    mov w1, #0x0                    // #0                         
  elements = rtems_rfs_bitmap_elements (control->size);                                   
    400267dc:   d1000694    sub x20, x20, #0x1                                            
    400267e0:   d345fe82    lsr x2, x20, #5                                               
    400267e4:   91000442    add x2, x2, #0x1                                              
    map[e] = RTEMS_RFS_BITMAP_ELEMENT_SET;                                                
    400267e8:   d37ef442    lsl x2, x2, #2                                                
    400267ec:   94005df0    bl  4003dfac <memset>                                         
    control->search_bits[e] = RTEMS_RFS_BITMAP_ELEMENT_SET;                               
    400267f0:   f9401660    ldr x0, [x19, #40]                                            
  elements = rtems_rfs_bitmap_elements (elements);                                        
    400267f4:   d34afe82    lsr x2, x20, #10                                              
    400267f8:   91000442    add x2, x2, #0x1                                              
    control->search_bits[e] = RTEMS_RFS_BITMAP_ELEMENT_SET;                               
    400267fc:   52800001    mov w1, #0x0                    // #0                         
    40026800:   d37ef442    lsl x2, x2, #2                                                
    40026804:   94005dea    bl  4003dfac <memset>                                         
  rtems_rfs_buffer_mark_dirty (control->buffer);                                          
    40026808:   52800021    mov w1, #0x1                    // #1                         
  return 0;                                                                               
    4002680c:   52800000    mov w0, #0x0                    // #0                         
  rtems_rfs_buffer_mark_dirty (control->buffer);                                          
    40026810:   390002a1    strb    w1, [x21]                                             
}                                                                                         
    40026814:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40026818:   f94013f5    ldr x21, [sp, #32]                                            
    4002681c:   a8c37bfd    ldp x29, x30, [sp], #48                                       
    40026820:   d65f03c0    ret                                                           
  if (rc > 0)                                                                             
    40026824:   54ffff8c    b.gt    40026814 <rtems_rfs_bitmap_map_set_all+0x84>          <== NOT EXECUTED
  *map = NULL;                                                                            
    40026828:   d2800000    mov x0, #0x0                    // #0                         <== NOT EXECUTED
  *map = rtems_rfs_buffer_data (control->buffer);                                         
    4002682c:   f9400275    ldr x21, [x19]                                                <== NOT EXECUTED
    40026830:   17ffffe8    b   400267d0 <rtems_rfs_bitmap_map_set_all+0x40>              <== NOT EXECUTED
    return ENXIO;                                                                         
    40026834:   528000c0    mov w0, #0x6                    // #6                         
}                                                                                         
    40026838:   d65f03c0    ret                                                           
    4002683c:   00000000    udf #0                                                        
                                                                                          

00000000400266d0 <rtems_rfs_bitmap_map_test>: {
    400266d0:   a9bd7bfd    stp x29, x30, [sp, #-48]!                                     
    400266d4:   910003fd    mov x29, sp                                                   
    400266d8:   a90153f3    stp x19, x20, [sp, #16]                                       
    400266dc:   2a0103f4    mov w20, w1                                                   
  if (!control->buffer)                                                                   
    400266e0:   f9400001    ldr x1, [x0]                                                  
    400266e4:   b4000481    cbz x1, 40026774 <rtems_rfs_bitmap_map_test+0xa4>             
  rc = rtems_rfs_buffer_handle_request (control->fs,                                      
    400266e8:   aa0003f3    mov x19, x0                                                   
    400266ec:   52800023    mov w3, #0x1                    // #1                         
    400266f0:   f9400400    ldr x0, [x0, #8]                                              
    400266f4:   f90013f5    str x21, [sp, #32]                                            
    400266f8:   aa0203f5    mov x21, x2                                                   
    400266fc:   b9401262    ldr w2, [x19, #16]                                            
    40026700:   94000234    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
  if (rc)                                                                                 
    40026704:   7100001f    cmp w0, #0x0                                                  
    40026708:   35000280    cbnz    w0, 40026758 <rtems_rfs_bitmap_map_test+0x88>         <== NEVER TAKEN
  *map = rtems_rfs_buffer_data (control->buffer);                                         
    4002670c:   f9400260    ldr x0, [x19]                                                 
    40026710:   f9400400    ldr x0, [x0, #8]                                              
    40026714:   f9401c02    ldr x2, [x0, #56]                                             
    return EINVAL;                                                                        
    40026718:   528002c0    mov w0, #0x16                   // #22                        
  if (bit >= control->size)                                                               
    4002671c:   f9400e61    ldr x1, [x19, #24]                                            
    40026720:   eb34c03f    cmp x1, w20, sxtw                                             
    40026724:   540001c9    b.ls    4002675c <rtems_rfs_bitmap_map_test+0x8c>  // b.plast 
  index = rtems_rfs_bitmap_map_index (bit);                                               
    40026728:   13057e83    asr w3, w20, #5                                               
  return RTEMS_RFS_BITMAP_TEST_BIT (target, bit);                                         
    4002672c:   52800021    mov w1, #0x1                    // #1                         
    40026730:   1ad42034    lsl w20, w1, w20                                              
  return 0;                                                                               
    40026734:   52800000    mov w0, #0x0                    // #0                         
  return RTEMS_RFS_BITMAP_TEST_BIT (target, bit);                                         
    40026738:   b863d841    ldr w1, [x2, w3, sxtw #2]                                     
    4002673c:   6a01029f    tst w20, w1                                                   
    40026740:   1a9f17e1    cset    w1, eq  // eq = none                                  
    40026744:   390002a1    strb    w1, [x21]                                             
}                                                                                         
    40026748:   a94153f3    ldp x19, x20, [sp, #16]                                       
  return 0;                                                                               
    4002674c:   f94013f5    ldr x21, [sp, #32]                                            
}                                                                                         
    40026750:   a8c37bfd    ldp x29, x30, [sp], #48                                       
    40026754:   d65f03c0    ret                                                           
  if (rc > 0)                                                                             
    40026758:   540000ad    b.le    4002676c <rtems_rfs_bitmap_map_test+0x9c>             <== NOT EXECUTED
}                                                                                         
    4002675c:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40026760:   f94013f5    ldr x21, [sp, #32]                                            
    40026764:   a8c37bfd    ldp x29, x30, [sp], #48                                       
    40026768:   d65f03c0    ret                                                           
  *map = NULL;                                                                            
    4002676c:   d2800002    mov x2, #0x0                    // #0                         <== NOT EXECUTED
    40026770:   17ffffea    b   40026718 <rtems_rfs_bitmap_map_test+0x48>                 <== NOT EXECUTED
    return ENXIO;                                                                         
    40026774:   528000c0    mov w0, #0x6                    // #6                         
}                                                                                         
    40026778:   a94153f3    ldp x19, x20, [sp, #16]                                       
    4002677c:   a8c37bfd    ldp x29, x30, [sp], #48                                       
    40026780:   d65f03c0    ret                                                           
    ...                                                                                   
                                                                                          

0000000040033e90 <rtems_rfs_block_map_close>: {
    40033e90:   a9bc7bfd    stp x29, x30, [sp, #-64]!                                     
    40033e94:   910003fd    mov x29, sp                                                   
    40033e98:   a90153f3    stp x19, x20, [sp, #16]                                       
    40033e9c:   aa0103f3    mov x19, x1                                                   
  if (map->dirty && map->inode)                                                           
    40033ea0:   39400021    ldrb    w1, [x1]                                              
{                                                                                         
    40033ea4:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40033ea8:   aa0003f4    mov x20, x0                                                   
    40033eac:   f9001bf7    str x23, [sp, #48]                                            
  int rc = 0;                                                                             
    40033eb0:   52800017    mov w23, #0x0                       // #0                     
  if (map->dirty && map->inode)                                                           
    40033eb4:   34000101    cbz w1, 40033ed4 <rtems_rfs_block_map_close+0x44>             
    40033eb8:   f9400661    ldr x1, [x19, #8]                                             
  int rc = 0;                                                                             
    40033ebc:   52800017    mov w23, #0x0                       // #0                     
  if (map->dirty && map->inode)                                                           
    40033ec0:   b40000a1    cbz x1, 40033ed4 <rtems_rfs_block_map_close+0x44>             <== NEVER TAKEN
    brc = rtems_rfs_inode_load (fs, map->inode);                                          
    40033ec4:   97ffd36f    bl  40028c80 <rtems_rfs_inode_load>                           
    40033ec8:   2a0003f7    mov w23, w0                                                   
    if (brc > 0)                                                                          
    40033ecc:   7100001f    cmp w0, #0x0                                                  
    40033ed0:   540002cd    b.le    40033f28 <rtems_rfs_block_map_close+0x98>             <== ALWAYS TAKEN
  map->inode = NULL;                                                                      
    40033ed4:   f900067f    str xzr, [x19, #8]                                            
  brc = rtems_rfs_buffer_handle_close (fs, &map->singly_buffer);                          
    40033ed8:   91010276    add x22, x19, #0x40                                           
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40033edc:   aa1603e1    mov x1, x22                                                   
    40033ee0:   aa1403e0    mov x0, x20                                                   
    40033ee4:   97ffcceb    bl  40027290 <rtems_rfs_buffer_handle_release>                
  handle->dirty = false;                                                                  
    40033ee8:   3901027f    strb    wzr, [x19, #64]                                       
  handle->bnum  = 0;                                                                      
    40033eec:   b900467f    str wzr, [x19, #68]                                           
  brc = rtems_rfs_buffer_handle_close (fs, &map->doubly_buffer);                          
    40033ef0:   91014275    add x21, x19, #0x50                                           
  handle->buffer = NULL;                                                                  
    40033ef4:   f900267f    str xzr, [x19, #72]                                           
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40033ef8:   aa1503e1    mov x1, x21                                                   
    40033efc:   aa1403e0    mov x0, x20                                                   
    40033f00:   97ffcce4    bl  40027290 <rtems_rfs_buffer_handle_release>                
  handle->dirty = false;                                                                  
    40033f04:   3901427f    strb    wzr, [x19, #80]                                       
}                                                                                         
    40033f08:   2a1703e0    mov w0, w23                                                   
    40033f0c:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40033f10:   f9401bf7    ldr x23, [sp, #48]                                            
  handle->bnum  = 0;                                                                      
    40033f14:   b900567f    str wzr, [x19, #84]                                           
  handle->buffer = NULL;                                                                  
    40033f18:   f9002e7f    str xzr, [x19, #88]                                           
    40033f1c:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40033f20:   a8c47bfd    ldp x29, x30, [sp], #64                                       
    40033f24:   d65f03c0    ret                                                           
    40033f28:   91004268    add x8, x19, #0x10                                            
    40033f2c:   d2800380    mov x0, #0x1c                   // #28                        
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40033f30:   52800027    mov w7, #0x1                    // #1                         
        rtems_rfs_inode_set_block (map->inode, b, map->blocks[b]);                        
    40033f34:   f9400661    ldr x1, [x19, #8]                                             
    40033f38:   b8606902    ldr w2, [x8, x0]                                              
  rtems_rfs_write_u32 (&handle->node->data.blocks[block], bno);                           
    40033f3c:   f9400c23    ldr x3, [x1, #24]                                             
    40033f40:   53187c46    lsr w6, w2, #24                                               
    40033f44:   53107c45    lsr w5, w2, #16                                               
    40033f48:   53087c44    lsr w4, w2, #8                                                
    40033f4c:   38206866    strb    w6, [x3, x0]                                          
    40033f50:   f9400c23    ldr x3, [x1, #24]                                             
    40033f54:   8b000063    add x3, x3, x0                                                
    40033f58:   39000465    strb    w5, [x3, #1]                                          
    40033f5c:   f9400c23    ldr x3, [x1, #24]                                             
    40033f60:   8b000063    add x3, x3, x0                                                
    40033f64:   39000864    strb    w4, [x3, #2]                                          
    40033f68:   f9400c23    ldr x3, [x1, #24]                                             
    40033f6c:   8b000063    add x3, x3, x0                                                
      for (b = 0; b < RTEMS_RFS_INODE_BLOCKS; b++)                                        
    40033f70:   91001000    add x0, x0, #0x4                                              
    40033f74:   f100c01f    cmp x0, #0x30                                                 
    40033f78:   39000c62    strb    w2, [x3, #3]                                          
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40033f7c:   39008027    strb    w7, [x1, #32]                                         
    40033f80:   54fffda1    b.ne    40033f34 <rtems_rfs_block_map_close+0xa4>  // b.any   
      rtems_rfs_inode_set_block_count (map->inode, map->size.count);                      
    40033f84:   f9400661    ldr x1, [x19, #8]                                             
      brc = rtems_rfs_inode_unload (fs, map->inode, true);                                
    40033f88:   aa1403e0    mov x0, x20                                                   
      rtems_rfs_inode_set_block_count (map->inode, map->size.count);                      
    40033f8c:   b9401263    ldr w3, [x19, #16]                                            
      brc = rtems_rfs_inode_unload (fs, map->inode, true);                                
    40033f90:   52800022    mov w2, #0x1                    // #1                         
  rtems_rfs_write_u32 (&handle->node->block_count, block_count);                          
    40033f94:   f9400c24    ldr x4, [x1, #24]                                             
    40033f98:   53187c68    lsr w8, w3, #24                                               
    40033f9c:   53107c66    lsr w6, w3, #16                                               
    40033fa0:   53087c65    lsr w5, w3, #8                                                
    40033fa4:   39003088    strb    w8, [x4, #12]                                         
    40033fa8:   f9400c24    ldr x4, [x1, #24]                                             
    40033fac:   39003486    strb    w6, [x4, #13]                                         
    40033fb0:   f9400c24    ldr x4, [x1, #24]                                             
    40033fb4:   39003885    strb    w5, [x4, #14]                                         
    40033fb8:   f9400c24    ldr x4, [x1, #24]                                             
    40033fbc:   39003c83    strb    w3, [x4, #15]                                         
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40033fc0:   39008027    strb    w7, [x1, #32]                                         
      rtems_rfs_inode_set_block_offset (map->inode, map->size.offset);                    
    40033fc4:   f9400661    ldr x1, [x19, #8]                                             
    40033fc8:   b9401663    ldr w3, [x19, #20]                                            
  rtems_rfs_write_u16 (&handle->node->block_offset, block_offset);                        
    40033fcc:   f9400c24    ldr x4, [x1, #24]                                             
    40033fd0:   d3483c65    ubfx    x5, x3, #8, #8                                        
    40033fd4:   39002885    strb    w5, [x4, #10]                                         
    40033fd8:   f9400c24    ldr x4, [x1, #24]                                             
    40033fdc:   39002c83    strb    w3, [x4, #11]                                         
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40033fe0:   39008027    strb    w7, [x1, #32]                                         
      rtems_rfs_inode_set_last_map_block (map->inode, map->last_map_block);               
    40033fe4:   f9400661    ldr x1, [x19, #8]                                             
    40033fe8:   b9402663    ldr w3, [x19, #36]                                            
  rtems_rfs_write_u32 (&handle->node->last_map_block, last_map_block);                    
    40033fec:   f9400c24    ldr x4, [x1, #24]                                             
    40033ff0:   53187c68    lsr w8, w3, #24                                               
    40033ff4:   53107c66    lsr w6, w3, #16                                               
    40033ff8:   53087c65    lsr w5, w3, #8                                                
    40033ffc:   3900c088    strb    w8, [x4, #48]                                         
    40034000:   f9400c24    ldr x4, [x1, #24]                                             
    40034004:   3900c486    strb    w6, [x4, #49]                                         
    40034008:   f9400c24    ldr x4, [x1, #24]                                             
    4003400c:   3900c885    strb    w5, [x4, #50]                                         
    40034010:   f9400c24    ldr x4, [x1, #24]                                             
    40034014:   3900cc83    strb    w3, [x4, #51]                                         
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40034018:   39008027    strb    w7, [x1, #32]                                         
      rtems_rfs_inode_set_last_data_block (map->inode, map->last_data_block);             
    4003401c:   f9400661    ldr x1, [x19, #8]                                             
    40034020:   b9402a63    ldr w3, [x19, #40]                                            
  rtems_rfs_write_u32 (&handle->node->last_data_block, last_data_block);                  
    40034024:   f9400c24    ldr x4, [x1, #24]                                             
    40034028:   53187c68    lsr w8, w3, #24                                               
    4003402c:   53107c66    lsr w6, w3, #16                                               
    40034030:   53087c65    lsr w5, w3, #8                                                
    40034034:   3900d088    strb    w8, [x4, #52]                                         
    40034038:   f9400c24    ldr x4, [x1, #24]                                             
    4003403c:   3900d486    strb    w6, [x4, #53]                                         
    40034040:   f9400c24    ldr x4, [x1, #24]                                             
    40034044:   3900d885    strb    w5, [x4, #54]                                         
    40034048:   f9400c24    ldr x4, [x1, #24]                                             
    4003404c:   3900dc83    strb    w3, [x4, #55]                                         
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40034050:   39008027    strb    w7, [x1, #32]                                         
      brc = rtems_rfs_inode_unload (fs, map->inode, true);                                
    40034054:   f9400661    ldr x1, [x19, #8]                                             
    40034058:   97ffd372    bl  40028e20 <rtems_rfs_inode_unload>                         
      if (brc > 0)                                                                        
    4003405c:   7100001f    cmp w0, #0x0                                                  
    40034060:   1a9fa017    csel    w23, w0, wzr, ge  // ge = tcont                       
      map->dirty = false;                                                                 
    40034064:   3900027f    strb    wzr, [x19]                                            
    40034068:   17ffff9b    b   40033ed4 <rtems_rfs_block_map_close+0x44>                 
    4003406c:   00000000    udf #0                                                        
                                                                                          

0000000040034070 <rtems_rfs_block_map_find>: {
    40034070:   a9bb7bfd    stp x29, x30, [sp, #-80]!                                     
    40034074:   910003fd    mov x29, sp                                                   
    40034078:   a90153f3    stp x19, x20, [sp, #16]                                       
    4003407c:   aa0103f3    mov x19, x1                                                   
    40034080:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40034084:   aa0203f6    mov x22, x2                                                   
    40034088:   aa0003f5    mov x21, x0                                                   
    4003408c:   f9001bf7    str x23, [sp, #48]                                            
    40034090:   aa0303f7    mov x23, x3                                                   
  *block = 0;                                                                             
    40034094:   b900007f    str wzr, [x3]                                                 
  if (rtems_rfs_block_pos_block_past_end (bpos, &map->size))                              
    40034098:   b9400041    ldr w1, [x2]                                                  
    4003409c:   b9401265    ldr w5, [x19, #16]                                            
    400340a0:   34000061    cbz w1, 400340ac <rtems_rfs_block_map_find+0x3c>              
    return ENXIO;                                                                         
    400340a4:   528000c0    mov w0, #0x6                    // #6                         
  if (rtems_rfs_block_pos_block_past_end (bpos, &map->size))                              
    400340a8:   34000265    cbz w5, 400340f4 <rtems_rfs_block_map_find+0x84>              <== NEVER TAKEN
    400340ac:   6b05003f    cmp w1, w5                                                    
    return ENXIO;                                                                         
    400340b0:   528000c0    mov w0, #0x6                    // #6                         
  if (rtems_rfs_block_pos_block_past_end (bpos, &map->size))                              
    400340b4:   54000202    b.cs    400340f4 <rtems_rfs_block_map_find+0x84>  // b.hs, b.nlast
  if ((bpos->bno == map->bpos.bno) && (map->bpos.block != 0))                             
    400340b8:   b9401a60    ldr w0, [x19, #24]                                            
    400340bc:   6b00003f    cmp w1, w0                                                    
    400340c0:   54000600    b.eq    40034180 <rtems_rfs_block_map_find+0x110>  // b.none  
    if (map->size.count <= RTEMS_RFS_INODE_BLOCKS)                                        
    400340c4:   710014bf    cmp w5, #0x5                                                  
    400340c8:   54000208    b.hi    40034108 <rtems_rfs_block_map_find+0x98>  // b.pmore  <== ALWAYS TAKEN
      *block = map->blocks[bpos->bno];                                                    
    400340cc:   8b214a61    add x1, x19, w1, uxtw #2                                      
    400340d0:   b9402c20    ldr w0, [x1, #44]                                             
    400340d4:   b90002e0    str w0, [x23]                                                 
    rtems_rfs_block_copy_bpos (&map->bpos, bpos);                                         
    400340d8:   b9400ac1    ldr w1, [x22, #8]                                             
    map->bpos.block = *block;                                                             
    400340dc:   52800000    mov w0, #0x0                    // #0                         
    rtems_rfs_block_copy_bpos (&map->bpos, bpos);                                         
    400340e0:   29400ac3    ldp w3, w2, [x22]                                             
    400340e4:   29030a63    stp w3, w2, [x19, #24]                                        
    400340e8:   b9002261    str w1, [x19, #32]                                            
    map->bpos.block = *block;                                                             
    400340ec:   b94002e1    ldr w1, [x23]                                                 
    400340f0:   b9002261    str w1, [x19, #32]                                            
}                                                                                         
    400340f4:   a94153f3    ldp x19, x20, [sp, #16]                                       
    400340f8:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    400340fc:   f9401bf7    ldr x23, [sp, #48]                                            
    40034100:   a8c57bfd    ldp x29, x30, [sp], #80                                       
    40034104:   d65f03c0    ret                                                           
      if (map->size.count <= fs->block_map_singly_blocks)                                 
    40034108:   a9460aa3    ldp x3, x2, [x21, #96]                                        
      direct = bpos->bno % fs->blocks_per_block;                                          
    4003410c:   2a0103e1    mov w1, w1                                                    
      if (map->size.count <= fs->block_map_singly_blocks)                                 
    40034110:   2a0503e5    mov w5, w5                                                    
      direct = bpos->bno % fs->blocks_per_block;                                          
    40034114:   9ac30820    udiv    x0, x1, x3                                            
      if (map->size.count <= fs->block_map_singly_blocks)                                 
    40034118:   eb0200bf    cmp x5, x2                                                    
      singly = bpos->bno / fs->blocks_per_block;                                          
    4003411c:   b9004fe0    str w0, [sp, #76]                                             
      direct = bpos->bno % fs->blocks_per_block;                                          
    40034120:   9b038414    msub    x20, x0, x3, x1                                       
      if (map->size.count <= fs->block_map_singly_blocks)                                 
    40034124:   54000389    b.ls    40034194 <rtems_rfs_block_map_find+0x124>  // b.plast <== ALWAYS TAKEN
        singly %= fs->blocks_per_block;                                                   
    40034128:   9ac30801    udiv    x1, x0, x3                                            <== NOT EXECUTED
        if (map->size.count < fs->block_map_doubly_blocks)                                
    4003412c:   f9403aa2    ldr x2, [x21, #112]                                           <== NOT EXECUTED
        singly %= fs->blocks_per_block;                                                   
    40034130:   9b038023    msub    x3, x1, x3, x0                                        <== NOT EXECUTED
        if (map->size.count < fs->block_map_doubly_blocks)                                
    40034134:   eb0200bf    cmp x5, x2                                                    <== NOT EXECUTED
        singly %= fs->blocks_per_block;                                                   
    40034138:   b9004fe3    str w3, [sp, #76]                                             <== NOT EXECUTED
          rc = ENXIO;                                                                     
    4003413c:   528000c0    mov w0, #0x6                    // #6                         <== NOT EXECUTED
        if (map->size.count < fs->block_map_doubly_blocks)                                
    40034140:   54fffda2    b.cs    400340f4 <rtems_rfs_block_map_find+0x84>  // b.hs, b.nlast<== NOT EXECUTED
          rc = rtems_rfs_block_find_indirect (fs,                                         
    40034144:   8b010a62    add x2, x19, x1, lsl #2                                       <== NOT EXECUTED
    40034148:   910133e4    add x4, sp, #0x4c                                             <== NOT EXECUTED
    4003414c:   91014261    add x1, x19, #0x50                                            <== NOT EXECUTED
    40034150:   aa1503e0    mov x0, x21                                                   <== NOT EXECUTED
    40034154:   b9402c42    ldr w2, [x2, #44]                                             <== NOT EXECUTED
    40034158:   97fffe92    bl  40033ba0 <rtems_rfs_block_find_indirect>                  <== NOT EXECUTED
          if (rc == 0)                                                                    
    4003415c:   35fffcc0    cbnz    w0, 400340f4 <rtems_rfs_block_map_find+0x84>          <== NOT EXECUTED
            rc = rtems_rfs_block_find_indirect (fs,                                       
    40034160:   b9404fe2    ldr w2, [sp, #76]                                             <== NOT EXECUTED
    40034164:   2a1403e3    mov w3, w20                                                   <== NOT EXECUTED
    40034168:   aa1503e0    mov x0, x21                                                   <== NOT EXECUTED
    4003416c:   aa1703e4    mov x4, x23                                                   <== NOT EXECUTED
    40034170:   91010261    add x1, x19, #0x40                                            <== NOT EXECUTED
    40034174:   97fffe8b    bl  40033ba0 <rtems_rfs_block_find_indirect>                  <== NOT EXECUTED
  if (rc == 0)                                                                            
    40034178:   34fffb00    cbz w0, 400340d8 <rtems_rfs_block_map_find+0x68>              <== NOT EXECUTED
    4003417c:   17ffffde    b   400340f4 <rtems_rfs_block_map_find+0x84>                  <== NOT EXECUTED
  if ((bpos->bno == map->bpos.bno) && (map->bpos.block != 0))                             
    40034180:   b9402260    ldr w0, [x19, #32]                                            
    40034184:   35fffa80    cbnz    w0, 400340d4 <rtems_rfs_block_map_find+0x64>          <== NEVER TAKEN
    if (map->size.count <= RTEMS_RFS_INODE_BLOCKS)                                        
    40034188:   710014bf    cmp w5, #0x5                                                  
    4003418c:   54fffbe8    b.hi    40034108 <rtems_rfs_block_map_find+0x98>  // b.pmore  <== NEVER TAKEN
    40034190:   17ffffcf    b   400340cc <rtems_rfs_block_map_find+0x5c>                  
        rc = rtems_rfs_block_find_indirect (fs,                                           
    40034194:   8b000a62    add x2, x19, x0, lsl #2                                       
    40034198:   2a1403e3    mov w3, w20                                                   
    4003419c:   aa1503e0    mov x0, x21                                                   
    400341a0:   aa1703e4    mov x4, x23                                                   
    400341a4:   91010261    add x1, x19, #0x40                                            
    400341a8:   b9402c42    ldr w2, [x2, #44]                                             
    400341ac:   97fffe7d    bl  40033ba0 <rtems_rfs_block_find_indirect>                  
  if (rc == 0)                                                                            
    400341b0:   34fff940    cbz w0, 400340d8 <rtems_rfs_block_map_find+0x68>              <== ALWAYS TAKEN
    400341b4:   17ffffd0    b   400340f4 <rtems_rfs_block_map_find+0x84>                  <== NOT EXECUTED
    ...                                                                                   
                                                                                          

0000000040034230 <rtems_rfs_block_map_grow>: {
    40034230:   a9b87bfd    stp x29, x30, [sp, #-128]!                                    
    40034234:   910003fd    mov x29, sp                                                   
    40034238:   a90153f3    stp x19, x20, [sp, #16]                                       
    4003423c:   aa0103f3    mov x19, x1                                                   
    40034240:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40034244:   aa0203f6    mov x22, x2                                                   
    40034248:   a90573fb    stp x27, x28, [sp, #80]                                       
    4003424c:   aa0003fc    mov x28, x0                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_BLOCK_MAP_GROW))                                   
    40034250:   d2840000    mov x0, #0x2000                 // #8192                      
{                                                                                         
    40034254:   f90033e3    str x3, [sp, #96]                                             
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_BLOCK_MAP_GROW))                                   
    40034258:   97ffd9fe    bl  4002aa50 <rtems_rfs_trace>                                
    4003425c:   72001c1f    tst w0, #0xff                                                 
    40034260:   54001941    b.ne    40034588 <rtems_rfs_block_map_grow+0x358>  // b.any   <== NEVER TAKEN
  if ((map->size.count + blocks) >= rtems_rfs_fs_max_block_map_blocks (fs))               
    40034264:   b9401260    ldr w0, [x19, #16]                                            
    return EFBIG;                                                                         
    40034268:   52800374    mov w20, #0x1b                      // #27                    
  if ((map->size.count + blocks) >= rtems_rfs_fs_max_block_map_blocks (fs))               
    4003426c:   f9403b81    ldr x1, [x28, #112]                                           
    40034270:   8b160000    add x0, x0, x22                                               
    40034274:   eb01001f    cmp x0, x1                                                    
    40034278:   54001502    b.cs    40034518 <rtems_rfs_block_map_grow+0x2e8>  // b.hs, b.nlast<== NEVER TAKEN
  for (b = 0; b < blocks; b++)                                                            
    4003427c:   b4001976    cbz x22, 400345a8 <rtems_rfs_block_map_grow+0x378>            <== NEVER TAKEN
    rc = rtems_rfs_group_bitmap_alloc (fs, map->last_data_block,                          
    40034280:   b9402a61    ldr w1, [x19, #40]                                            
    40034284:   d280001b    mov x27, #0x0                       // #0                     
      rtems_rfs_block_set_number (&map->singly_buffer, direct, block);                    
    40034288:   52800035    mov w21, #0x1                       // #1                     
    4003428c:   a90363f7    stp x23, x24, [sp, #48]                                       
          rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,                  
    40034290:   91010278    add x24, x19, #0x40                                           
    40034294:   a9046bf9    stp x25, x26, [sp, #64]                                       
          rc = rtems_rfs_buffer_handle_request (fs,                                       
    40034298:   91014279    add x25, x19, #0x50                                           
    4003429c:   1400000e    b   400342d4 <rtems_rfs_block_map_grow+0xa4>                  
      map->blocks[map->size.count] = block;                                               
    400342a0:   8b224a60    add x0, x19, w2, uxtw #2                                      
    400342a4:   b9407be1    ldr w1, [sp, #120]                                            
    400342a8:   b9002c01    str w1, [x0, #44]                                             
    map->size.count++;                                                                    
    400342ac:   11000442    add w2, w2, #0x1                                              
    map->size.offset = 0;                                                                 
    400342b0:   29027e62    stp w2, wzr, [x19, #16]                                       
    if (b == 0)                                                                           
    400342b4:   b500007b    cbnz    x27, 400342c0 <rtems_rfs_block_map_grow+0x90>         <== NEVER TAKEN
      *new_block = block;                                                                 
    400342b8:   f94033e0    ldr x0, [sp, #96]                                             
    400342bc:   b9000001    str w1, [x0]                                                  
    map->dirty = true;                                                                    
    400342c0:   39000275    strb    w21, [x19]                                            
  for (b = 0; b < blocks; b++)                                                            
    400342c4:   9100077b    add x27, x27, #0x1                                            
    map->last_data_block = block;                                                         
    400342c8:   b9002a61    str w1, [x19, #40]                                            
  for (b = 0; b < blocks; b++)                                                            
    400342cc:   eb1b02df    cmp x22, x27                                                  
    400342d0:   54001680    b.eq    400345a0 <rtems_rfs_block_map_grow+0x370>  // b.none  <== ALWAYS TAKEN
    rc = rtems_rfs_group_bitmap_alloc (fs, map->last_data_block,                          
    400342d4:   9101e3e3    add x3, sp, #0x78                                             
    400342d8:   aa1c03e0    mov x0, x28                                                   
    400342dc:   52800002    mov w2, #0x0                    // #0                         
    400342e0:   97ffd168    bl  40028880 <rtems_rfs_group_bitmap_alloc>                   
    400342e4:   2a0003f4    mov w20, w0                                                   
    if (rc > 0)                                                                           
    400342e8:   7100001f    cmp w0, #0x0                                                  
    400342ec:   540016cc    b.gt    400345c4 <rtems_rfs_block_map_grow+0x394>             
    if (map->size.count < RTEMS_RFS_INODE_BLOCKS)                                         
    400342f0:   b9401262    ldr w2, [x19, #16]                                            
    400342f4:   7100105f    cmp w2, #0x4                                                  
    400342f8:   54fffd49    b.ls    400342a0 <rtems_rfs_block_map_grow+0x70>  // b.plast  
      if (map->size.count < fs->block_map_singly_blocks)                                  
    400342fc:   a946039a    ldp x26, x0, [x28, #96]                                       
      direct = map->size.count % fs->blocks_per_block;                                    
    40034300:   2a0203e1    mov w1, w2                                                    
    40034304:   9ada0823    udiv    x3, x1, x26                                           
      if (map->size.count < fs->block_map_singly_blocks)                                  
    40034308:   eb00003f    cmp x1, x0                                                    
      direct = map->size.count % fs->blocks_per_block;                                    
    4003430c:   9b1a8477    msub    x23, x3, x26, x1                                      
      if (map->size.count < fs->block_map_singly_blocks)                                  
    40034310:   54000522    b.cs    400343b4 <rtems_rfs_block_map_grow+0x184>  // b.hs, b.nlast<== NEVER TAKEN
        if ((direct == 0) ||                                                              
    40034314:   b4000097    cbz x23, 40034324 <rtems_rfs_block_map_grow+0xf4>             <== NEVER TAKEN
            ((singly == 0) && (direct == RTEMS_RFS_INODE_BLOCKS)))                        
    40034318:   7100007f    cmp w3, #0x0                                                  
        if ((direct == 0) ||                                                              
    4003431c:   7a450ae0    ccmp    w23, #0x5, #0x0, eq  // eq = none                     
    40034320:   54001081    b.ne    40034530 <rtems_rfs_block_map_grow+0x300>  // b.any   
          upping = map->size.count == RTEMS_RFS_INODE_BLOCKS;                             
    40034324:   7100145f    cmp w2, #0x5                                                  
                                                   &map->blocks[singly],                  
    40034328:   91002c63    add x3, x3, #0xb                                              
          rc = rtems_rfs_block_map_indirect_alloc (fs, map,                               
    4003432c:   1a9f17e4    cset    w4, eq  // eq = none                                  
    40034330:   aa1803e2    mov x2, x24                                                   
    40034334:   8b030a63    add x3, x19, x3, lsl #2                                       
    40034338:   aa1303e1    mov x1, x19                                                   
    4003433c:   aa1c03e0    mov x0, x28                                                   
    40034340:   97fffdb4    bl  40033a10 <rtems_rfs_block_map_indirect_alloc>             
    40034344:   2a0003f4    mov w20, w0                                                   
          if (rc > 0)                                                                     
    40034348:   7100029f    cmp w20, #0x0                                                 
    4003434c:   54000dac    b.gt    40034500 <rtems_rfs_block_map_grow+0x2d0>             <== NEVER TAKEN
      rtems_rfs_block_set_number (&map->singly_buffer, direct, block);                    
    40034350:   f9402660    ldr x0, [x19, #72]                                            
    40034354:   d37ef6e1    lsl x1, x23, #2                                               
    40034358:   3941efe2    ldrb    w2, [sp, #123]                                        
    4003435c:   f9401c00    ldr x0, [x0, #56]                                             
    40034360:   38216802    strb    w2, [x0, x1]                                          
    40034364:   f9402660    ldr x0, [x19, #72]                                            
    40034368:   7940f7e2    ldrh    w2, [sp, #122]                                        
    4003436c:   f9401c00    ldr x0, [x0, #56]                                             
    40034370:   8b010000    add x0, x0, x1                                                
    40034374:   39000402    strb    w2, [x0, #1]                                          
    40034378:   f9402660    ldr x0, [x19, #72]                                            
    4003437c:   b9407be2    ldr w2, [sp, #120]                                            
    40034380:   f9401c00    ldr x0, [x0, #56]                                             
    40034384:   53087c42    lsr w2, w2, #8                                                
    40034388:   8b010000    add x0, x0, x1                                                
    4003438c:   39000802    strb    w2, [x0, #2]                                          
    40034390:   f9402660    ldr x0, [x19, #72]                                            
    40034394:   b9407be2    ldr w2, [sp, #120]                                            
    40034398:   f9401c00    ldr x0, [x0, #56]                                             
    4003439c:   8b010001    add x1, x0, x1                                                
    400343a0:   39000c22    strb    w2, [x1, #3]                                          
    400343a4:   39010275    strb    w21, [x19, #64]                                       
    map->size.count++;                                                                    
    400343a8:   b9401262    ldr w2, [x19, #16]                                            
      *new_block = block;                                                                 
    400343ac:   b9407be1    ldr w1, [sp, #120]                                            
    400343b0:   17ffffbf    b   400342ac <rtems_rfs_block_map_grow+0x7c>                  
        doubly  = singly / fs->blocks_per_block;                                          
    400343b4:   9ada0866    udiv    x6, x3, x26                                           <== NOT EXECUTED
        singly %= fs->blocks_per_block;                                                   
    400343b8:   9b1a8cda    msub    x26, x6, x26, x3                                      <== NOT EXECUTED
        if (direct == 0)                                                                  
    400343bc:   b5000697    cbnz    x23, 4003448c <rtems_rfs_block_map_grow+0x25c>        <== NOT EXECUTED
          rc = rtems_rfs_block_map_indirect_alloc (fs, map,                               
    400343c0:   9101f3e3    add x3, sp, #0x7c                                             <== NOT EXECUTED
    400343c4:   aa1803e2    mov x2, x24                                                   <== NOT EXECUTED
    400343c8:   aa1303e1    mov x1, x19                                                   <== NOT EXECUTED
    400343cc:   aa1c03e0    mov x0, x28                                                   <== NOT EXECUTED
    400343d0:   52800004    mov w4, #0x0                    // #0                         <== NOT EXECUTED
    400343d4:   f90037e6    str x6, [sp, #104]                                            <== NOT EXECUTED
    400343d8:   97fffd8e    bl  40033a10 <rtems_rfs_block_map_indirect_alloc>             <== NOT EXECUTED
    400343dc:   2a0003f4    mov w20, w0                                                   <== NOT EXECUTED
          if (rc > 0)                                                                     
    400343e0:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    400343e4:   f94037e6    ldr x6, [sp, #104]                                            <== NOT EXECUTED
    400343e8:   540008cc    b.gt    40034500 <rtems_rfs_block_map_grow+0x2d0>             <== NOT EXECUTED
          if ((singly == 0) ||                                                            
    400343ec:   b400009a    cbz x26, 400343fc <rtems_rfs_block_map_grow+0x1cc>            <== NOT EXECUTED
              ((doubly == 0) && (singly == RTEMS_RFS_INODE_BLOCKS)))                      
    400343f0:   710000df    cmp w6, #0x0                                                  <== NOT EXECUTED
          if ((singly == 0) ||                                                            
    400343f4:   7a450b40    ccmp    w26, #0x5, #0x0, eq  // eq = none                     <== NOT EXECUTED
    400343f8:   54000ac1    b.ne    40034550 <rtems_rfs_block_map_grow+0x320>  // b.any   <== NOT EXECUTED
            upping = map->size.count == fs->block_map_singly_blocks;                      
    400343fc:   f9403780    ldr x0, [x28, #104]                                           <== NOT EXECUTED
                                                     &map->blocks[doubly],                
    40034400:   91002cc3    add x3, x6, #0xb                                              <== NOT EXECUTED
            upping = map->size.count == fs->block_map_singly_blocks;                      
    40034404:   b9401264    ldr w4, [x19, #16]                                            <== NOT EXECUTED
            rc = rtems_rfs_block_map_indirect_alloc (fs, map,                             
    40034408:   aa1903e2    mov x2, x25                                                   <== NOT EXECUTED
    4003440c:   8b030a63    add x3, x19, x3, lsl #2                                       <== NOT EXECUTED
    40034410:   aa1303e1    mov x1, x19                                                   <== NOT EXECUTED
            upping = map->size.count == fs->block_map_singly_blocks;                      
    40034414:   eb00009f    cmp x4, x0                                                    <== NOT EXECUTED
            rc = rtems_rfs_block_map_indirect_alloc (fs, map,                             
    40034418:   aa1c03e0    mov x0, x28                                                   <== NOT EXECUTED
    4003441c:   1a9f17e4    cset    w4, eq  // eq = none                                  <== NOT EXECUTED
    40034420:   97fffd7c    bl  40033a10 <rtems_rfs_block_map_indirect_alloc>             <== NOT EXECUTED
    40034424:   2a0003f4    mov w20, w0                                                   <== NOT EXECUTED
            if (rc > 0)                                                                   
    40034428:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    4003442c:   54000a4c    b.gt    40034574 <rtems_rfs_block_map_grow+0x344>             <== NOT EXECUTED
          rtems_rfs_block_set_number (&map->doubly_buffer,                                
    40034430:   f9402e60    ldr x0, [x19, #88]                                            <== NOT EXECUTED
    40034434:   d37ef75a    lsl x26, x26, #2                                              <== NOT EXECUTED
    40034438:   3941ffe1    ldrb    w1, [sp, #127]                                        <== NOT EXECUTED
    4003443c:   f9401c00    ldr x0, [x0, #56]                                             <== NOT EXECUTED
    40034440:   383a6801    strb    w1, [x0, x26]                                         <== NOT EXECUTED
    40034444:   f9402e60    ldr x0, [x19, #88]                                            <== NOT EXECUTED
    40034448:   7940ffe1    ldrh    w1, [sp, #126]                                        <== NOT EXECUTED
    4003444c:   f9401c00    ldr x0, [x0, #56]                                             <== NOT EXECUTED
    40034450:   8b1a0000    add x0, x0, x26                                               <== NOT EXECUTED
    40034454:   39000401    strb    w1, [x0, #1]                                          <== NOT EXECUTED
    40034458:   f9402e60    ldr x0, [x19, #88]                                            <== NOT EXECUTED
    4003445c:   b9407fe1    ldr w1, [sp, #124]                                            <== NOT EXECUTED
    40034460:   f9401c00    ldr x0, [x0, #56]                                             <== NOT EXECUTED
    40034464:   53087c21    lsr w1, w1, #8                                                <== NOT EXECUTED
    40034468:   8b1a0000    add x0, x0, x26                                               <== NOT EXECUTED
    4003446c:   39000801    strb    w1, [x0, #2]                                          <== NOT EXECUTED
    40034470:   f9402e60    ldr x0, [x19, #88]                                            <== NOT EXECUTED
    40034474:   b9407fe1    ldr w1, [sp, #124]                                            <== NOT EXECUTED
    40034478:   f9401c00    ldr x0, [x0, #56]                                             <== NOT EXECUTED
    4003447c:   8b1a001a    add x26, x0, x26                                              <== NOT EXECUTED
    40034480:   39000f41    strb    w1, [x26, #3]                                         <== NOT EXECUTED
    40034484:   39014275    strb    w21, [x19, #80]                                       <== NOT EXECUTED
    40034488:   17ffffb2    b   40034350 <rtems_rfs_block_map_grow+0x120>                 <== NOT EXECUTED
          rc = rtems_rfs_buffer_handle_request (fs,                                       
    4003448c:   8b060a66    add x6, x19, x6, lsl #2                                       <== NOT EXECUTED
    40034490:   aa1903e1    mov x1, x25                                                   <== NOT EXECUTED
    40034494:   aa1c03e0    mov x0, x28                                                   <== NOT EXECUTED
    40034498:   52800023    mov w3, #0x1                    // #1                         <== NOT EXECUTED
    4003449c:   b9402cc2    ldr w2, [x6, #44]                                             <== NOT EXECUTED
    400344a0:   97ffcacc    bl  40026fd0 <rtems_rfs_buffer_handle_request>                <== NOT EXECUTED
    400344a4:   2a0003f4    mov w20, w0                                                   <== NOT EXECUTED
          if (rc > 0)                                                                     
    400344a8:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    400344ac:   540002ac    b.gt    40034500 <rtems_rfs_block_map_grow+0x2d0>             <== NOT EXECUTED
          singly_block = rtems_rfs_block_get_number (&map->doubly_buffer,                 
    400344b0:   f9402e62    ldr x2, [x19, #88]                                            <== NOT EXECUTED
    400344b4:   d37ef75a    lsl x26, x26, #2                                              <== NOT EXECUTED
          rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,                  
    400344b8:   aa1803e1    mov x1, x24                                                   <== NOT EXECUTED
    400344bc:   aa1c03e0    mov x0, x28                                                   <== NOT EXECUTED
    400344c0:   52800023    mov w3, #0x1                    // #1                         <== NOT EXECUTED
          singly_block = rtems_rfs_block_get_number (&map->doubly_buffer,                 
    400344c4:   f9401c42    ldr x2, [x2, #56]                                             <== NOT EXECUTED
    400344c8:   8b1a0047    add x7, x2, x26                                               <== NOT EXECUTED
    400344cc:   387a6844    ldrb    w4, [x2, x26]                                         <== NOT EXECUTED
    400344d0:   394008e6    ldrb    w6, [x7, #2]                                          <== NOT EXECUTED
    400344d4:   39400ce8    ldrb    w8, [x7, #3]                                          <== NOT EXECUTED
    400344d8:   394004e2    ldrb    w2, [x7, #1]                                          <== NOT EXECUTED
    400344dc:   53185cc6    lsl w6, w6, #8                                                <== NOT EXECUTED
    400344e0:   2a046104    orr w4, w8, w4, lsl #24                                       <== NOT EXECUTED
    400344e4:   2a0240c2    orr w2, w6, w2, lsl #16                                       <== NOT EXECUTED
    400344e8:   2a040042    orr w2, w2, w4                                                <== NOT EXECUTED
    400344ec:   b9007fe2    str w2, [sp, #124]                                            <== NOT EXECUTED
          rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,                  
    400344f0:   97ffcab8    bl  40026fd0 <rtems_rfs_buffer_handle_request>                <== NOT EXECUTED
    400344f4:   2a0003f4    mov w20, w0                                                   <== NOT EXECUTED
          if (rc > 0)                                                                     
    400344f8:   7100029f    cmp w20, #0x0                                                 <== NOT EXECUTED
    400344fc:   54fff2ad    b.le    40034350 <rtems_rfs_block_map_grow+0x120>             <== NOT EXECUTED
            rtems_rfs_group_bitmap_free (fs, false, block);                               
    40034500:   b9407be2    ldr w2, [sp, #120]                                            <== NOT EXECUTED
    40034504:   aa1c03e0    mov x0, x28                                                   <== NOT EXECUTED
    40034508:   52800001    mov w1, #0x0                    // #0                         <== NOT EXECUTED
    4003450c:   97ffd175    bl  40028ae0 <rtems_rfs_group_bitmap_free>                    <== NOT EXECUTED
            return rc;                                                                    
    40034510:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40034514:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
}                                                                                         
    40034518:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    4003451c:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40034520:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40034524:   a94573fb    ldp x27, x28, [sp, #80]                                       <== NOT EXECUTED
    40034528:   a8c87bfd    ldp x29, x30, [sp], #128                                      <== NOT EXECUTED
    4003452c:   d65f03c0    ret                                                           <== NOT EXECUTED
          rc = rtems_rfs_buffer_handle_request (fs,  &map->singly_buffer,                 
    40034530:   8b030a7a    add x26, x19, x3, lsl #2                                      
    40034534:   aa1803e1    mov x1, x24                                                   
    40034538:   aa1c03e0    mov x0, x28                                                   
    4003453c:   52800023    mov w3, #0x1                    // #1                         
    40034540:   b9402f42    ldr w2, [x26, #44]                                            
    40034544:   97ffcaa3    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
    40034548:   2a0003f4    mov w20, w0                                                   
        if (rc > 0)                                                                       
    4003454c:   17ffff7f    b   40034348 <rtems_rfs_block_map_grow+0x118>                 
            rc = rtems_rfs_buffer_handle_request (fs, &map->doubly_buffer,                
    40034550:   8b060a66    add x6, x19, x6, lsl #2                                       <== NOT EXECUTED
    40034554:   aa1903e1    mov x1, x25                                                   <== NOT EXECUTED
    40034558:   aa1c03e0    mov x0, x28                                                   <== NOT EXECUTED
    4003455c:   52800023    mov w3, #0x1                    // #1                         <== NOT EXECUTED
    40034560:   b9402cc2    ldr w2, [x6, #44]                                             <== NOT EXECUTED
    40034564:   97ffca9b    bl  40026fd0 <rtems_rfs_buffer_handle_request>                <== NOT EXECUTED
    40034568:   2a0003f4    mov w20, w0                                                   <== NOT EXECUTED
            if (rc > 0)                                                                   
    4003456c:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40034570:   54fff60d    b.le    40034430 <rtems_rfs_block_map_grow+0x200>             <== NOT EXECUTED
              rtems_rfs_group_bitmap_free (fs, false, singly_block);                      
    40034574:   b9407fe2    ldr w2, [sp, #124]                                            <== NOT EXECUTED
    40034578:   aa1c03e0    mov x0, x28                                                   <== NOT EXECUTED
    4003457c:   52800001    mov w1, #0x0                    // #0                         <== NOT EXECUTED
    40034580:   97ffd158    bl  40028ae0 <rtems_rfs_group_bitmap_free>                    <== NOT EXECUTED
              rtems_rfs_group_bitmap_free (fs, false, block);                             
    40034584:   17ffffdf    b   40034500 <rtems_rfs_block_map_grow+0x2d0>                 <== NOT EXECUTED
    printf ("rtems-rfs: block-map-grow: entry: blocks=%zd count=%" PRIu32 "\n",           
    40034588:   b9401262    ldr w2, [x19, #16]                                            <== NOT EXECUTED
    4003458c:   aa1603e1    mov x1, x22                                                   <== NOT EXECUTED
    40034590:   d00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40034594:   91140000    add x0, x0, #0x500                                            <== NOT EXECUTED
    40034598:   97ffb79e    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    4003459c:   17ffff32    b   40034264 <rtems_rfs_block_map_grow+0x34>                  <== NOT EXECUTED
    400345a0:   a94363f7    ldp x23, x24, [sp, #48]                                       
    400345a4:   a9446bf9    ldp x25, x26, [sp, #64]                                       
  return 0;                                                                               
    400345a8:   52800014    mov w20, #0x0                       // #0                     
}                                                                                         
    400345ac:   2a1403e0    mov w0, w20                                                   
    400345b0:   a94153f3    ldp x19, x20, [sp, #16]                                       
    400345b4:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    400345b8:   a94573fb    ldp x27, x28, [sp, #80]                                       
    400345bc:   a8c87bfd    ldp x29, x30, [sp], #128                                      
    400345c0:   d65f03c0    ret                                                           
    400345c4:   2a1403e0    mov w0, w20                                                   
    400345c8:   a94153f3    ldp x19, x20, [sp, #16]                                       
    400345cc:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    400345d0:   a94363f7    ldp x23, x24, [sp, #48]                                       
    400345d4:   a9446bf9    ldp x25, x26, [sp, #64]                                       
    400345d8:   a94573fb    ldp x27, x28, [sp, #80]                                       
    400345dc:   a8c87bfd    ldp x29, x30, [sp], #128                                      
    400345e0:   d65f03c0    ret                                                           
    ...                                                                                   
                                                                                          

0000000040033d00 <rtems_rfs_block_map_open>: {
    40033d00:   a9bc7bfd    stp x29, x30, [sp, #-64]!                                     
    40033d04:   910003fd    mov x29, sp                                                   
    40033d08:   a90153f3    stp x19, x20, [sp, #16]                                       
    40033d0c:   aa0203f3    mov x19, x2                                                   
    40033d10:   aa0103f4    mov x20, x1                                                   
    40033d14:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40033d18:   aa0003f6    mov x22, x0                                                   
    40033d1c:   a90363f7    stp x23, x24, [sp, #48]                                       
  handle->dirty = false;                                                                  
    40033d20:   91010058    add x24, x2, #0x40                                            
    40033d24:   91014057    add x23, x2, #0x50                                            
  map->dirty = false;                                                                     
    40033d28:   3900005f    strb    wzr, [x2]                                             
 * @param[in] size is a pointer to the block size.                                        
 */                                                                                       
static inline void                                                                        
rtems_rfs_block_set_size_zero (rtems_rfs_block_size* size)                                
{                                                                                         
  size->count = 0;                                                                        
    40033d2c:   a900fc5f    stp xzr, xzr, [x2, #8]                                        
  bpos->bno = 0;                                                                          
    40033d30:   f8018c5f    str xzr, [x2, #24]!                                           
  bpos->block = 0;                                                                        
    40033d34:   b900085f    str wzr, [x2, #8]                                             
    40033d38:   3901027f    strb    wzr, [x19, #64]                                       
  handle->bnum  = 0;                                                                      
    40033d3c:   b900071f    str wzr, [x24, #4]                                            
  handle->buffer = NULL;                                                                  
    40033d40:   f900071f    str xzr, [x24, #8]                                            
  handle->dirty = false;                                                                  
    40033d44:   3901427f    strb    wzr, [x19, #80]                                       
  handle->bnum  = 0;                                                                      
    40033d48:   b90006ff    str wzr, [x23, #4]                                            
  handle->buffer = NULL;                                                                  
    40033d4c:   f90006ff    str xzr, [x23, #8]                                            
  rc = rtems_rfs_inode_load (fs, inode);                                                  
    40033d50:   97ffd3cc    bl  40028c80 <rtems_rfs_inode_load>                           
  if (rc > 0)                                                                             
    40033d54:   7100001f    cmp w0, #0x0                                                  
    40033d58:   5400076c    b.gt    40033e44 <rtems_rfs_block_map_open+0x144>             <== NEVER TAKEN
  map->inode = inode;                                                                     
    40033d5c:   9100b261    add x1, x19, #0x2c                                            
    40033d60:   d2800004    mov x4, #0x0                    // #0                         
    40033d64:   f9400e87    ldr x7, [x20, #24]                                            
    40033d68:   f9000674    str x20, [x19, #8]                                            
  return rtems_rfs_read_u32 (&handle->node->data.blocks[block]);                          
    40033d6c:   8b0400e5    add x5, x7, x4                                                
    40033d70:   394070a8    ldrb    w8, [x5, #28]                                         
    40033d74:   394074a6    ldrb    w6, [x5, #29]                                         
    40033d78:   394078a2    ldrb    w2, [x5, #30]                                         
    40033d7c:   39407ca3    ldrb    w3, [x5, #31]                                         
    40033d80:   aa062105    orr x5, x8, x6, lsl #8                                        
    40033d84:   aa0240a2    orr x2, x5, x2, lsl #16                                       
    40033d88:   aa036043    orr x3, x2, x3, lsl #24                                       
    40033d8c:   5ac00863    rev w3, w3                                                    
    map->blocks[b] = rtems_rfs_inode_get_block (inode, b);                                
    40033d90:   b8246823    str w3, [x1, x4]                                              
  for (b = 0; b < RTEMS_RFS_INODE_BLOCKS; b++)                                            
    40033d94:   91001084    add x4, x4, #0x4                                              
    40033d98:   f100509f    cmp x4, #0x14                                                 
    40033d9c:   54fffe81    b.ne    40033d6c <rtems_rfs_block_map_open+0x6c>  // b.any    
  return rtems_rfs_read_u32 (&handle->node->block_count);                                 
    40033da0:   394030e6    ldrb    w6, [x7, #12]                                         
  rc = rtems_rfs_inode_unload (fs, inode, false);                                         
    40033da4:   aa1603e0    mov x0, x22                                                   
    40033da8:   394034e5    ldrb    w5, [x7, #13]                                         
    40033dac:   aa1403e1    mov x1, x20                                                   
    40033db0:   394038e4    ldrb    w4, [x7, #14]                                         
    40033db4:   52800002    mov w2, #0x0                    // #0                         
    40033db8:   39403ce3    ldrb    w3, [x7, #15]                                         
    40033dbc:   aa0520c5    orr x5, x6, x5, lsl #8                                        
    40033dc0:   aa0440a4    orr x4, x5, x4, lsl #16                                       
    40033dc4:   aa036083    orr x3, x4, x3, lsl #24                                       
    40033dc8:   5ac00863    rev w3, w3                                                    
}                                                                                         
    40033dcc:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40033dd0:   a94363f7    ldp x23, x24, [sp, #48]                                       
  map->size.count = rtems_rfs_inode_get_block_count (inode);                              
    40033dd4:   b9001263    str w3, [x19, #16]                                            
  map->size.offset = rtems_rfs_inode_get_block_offset (inode);                            
    40033dd8:   394028e4    ldrb    w4, [x7, #10]                                         
    40033ddc:   39402ce3    ldrb    w3, [x7, #11]                                         
    40033de0:   aa032083    orr x3, x4, x3, lsl #8                                        
    40033de4:   5ac00463    rev16   w3, w3                                                
    40033de8:   12003c63    and w3, w3, #0xffff                                           
    40033dec:   b9001663    str w3, [x19, #20]                                            
  return rtems_rfs_read_u32 (&handle->node->last_map_block);                              
    40033df0:   3940c0e6    ldrb    w6, [x7, #48]                                         
    40033df4:   3940c4e5    ldrb    w5, [x7, #49]                                         
    40033df8:   3940c8e4    ldrb    w4, [x7, #50]                                         
    40033dfc:   3940cce3    ldrb    w3, [x7, #51]                                         
    40033e00:   aa0520c5    orr x5, x6, x5, lsl #8                                        
    40033e04:   aa0440a4    orr x4, x5, x4, lsl #16                                       
    40033e08:   aa036083    orr x3, x4, x3, lsl #24                                       
    40033e0c:   5ac00863    rev w3, w3                                                    
  map->last_map_block = rtems_rfs_inode_get_last_map_block (inode);                       
    40033e10:   b9002663    str w3, [x19, #36]                                            
  return rtems_rfs_read_u32 (&handle->node->last_data_block);                             
    40033e14:   3940d0e6    ldrb    w6, [x7, #52]                                         
    40033e18:   3940d4e5    ldrb    w5, [x7, #53]                                         
    40033e1c:   3940d8e4    ldrb    w4, [x7, #54]                                         
    40033e20:   3940dce3    ldrb    w3, [x7, #55]                                         
    40033e24:   aa0520c5    orr x5, x6, x5, lsl #8                                        
    40033e28:   aa0440a4    orr x4, x5, x4, lsl #16                                       
    40033e2c:   aa036083    orr x3, x4, x3, lsl #24                                       
    40033e30:   5ac00863    rev w3, w3                                                    
  map->last_data_block = rtems_rfs_inode_get_last_data_block (inode);                     
    40033e34:   b9002a63    str w3, [x19, #40]                                            
}                                                                                         
    40033e38:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40033e3c:   a8c47bfd    ldp x29, x30, [sp], #64                                       
  rc = rtems_rfs_inode_unload (fs, inode, false);                                         
    40033e40:   17ffd3f8    b   40028e20 <rtems_rfs_inode_unload>                         
    40033e44:   2a0003f5    mov w21, w0                                                   <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40033e48:   aa1803e1    mov x1, x24                                                   <== NOT EXECUTED
    40033e4c:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    40033e50:   97ffcd10    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40033e54:   3901027f    strb    wzr, [x19, #64]                                       <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40033e58:   aa1703e1    mov x1, x23                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    40033e5c:   b900071f    str wzr, [x24, #4]                                            <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40033e60:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40033e64:   f900071f    str xzr, [x24, #8]                                            <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40033e68:   97ffcd0a    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40033e6c:   3901427f    strb    wzr, [x19, #80]                                       <== NOT EXECUTED
}                                                                                         
    40033e70:   2a1503e0    mov w0, w21                                                   <== NOT EXECUTED
    40033e74:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40033e78:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    40033e7c:   b90006ff    str wzr, [x23, #4]                                            <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40033e80:   f90006ff    str xzr, [x23, #8]                                            <== NOT EXECUTED
    40033e84:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40033e88:   a8c47bfd    ldp x29, x30, [sp], #64                                       <== NOT EXECUTED
    40033e8c:   d65f03c0    ret                                                           <== NOT EXECUTED
                                                                                          

00000000400345f0 <rtems_rfs_block_map_shrink>: int rtems_rfs_block_map_shrink (rtems_rfs_file_system* fs, rtems_rfs_block_map* map, size_t blocks) {
    400345f0:   a9b97bfd    stp x29, x30, [sp, #-112]!                                    
    400345f4:   910003fd    mov x29, sp                                                   
    400345f8:   a90153f3    stp x19, x20, [sp, #16]                                       
    400345fc:   aa0203f3    mov x19, x2                                                   
    40034600:   a9046bf9    stp x25, x26, [sp, #64]                                       
    40034604:   aa0103fa    mov x26, x1                                                   
    40034608:   a90573fb    stp x27, x28, [sp, #80]                                       
    4003460c:   aa0003fb    mov x27, x0                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_BLOCK_MAP_SHRINK))                                 
    40034610:   d2880000    mov x0, #0x4000                 // #16384                     
    40034614:   97ffd90f    bl  4002aa50 <rtems_rfs_trace>                                
    40034618:   72001c1f    tst w0, #0xff                                                 
    4003461c:   540012a1    b.ne    40034870 <rtems_rfs_block_map_shrink+0x280>  // b.any <== NEVER TAKEN
    printf ("rtems-rfs: block-map-shrink: entry: blocks=%zd count=%" PRIu32 "\n",         
            blocks, map->size.count);                                                     
                                                                                          
  if (map->size.count == 0)                                                               
    40034620:   b9401343    ldr w3, [x26, #16]                                            
    40034624:   340011a3    cbz w3, 40034858 <rtems_rfs_block_map_shrink+0x268>           
    return 0;                                                                             
                                                                                          
  if (blocks > map->size.count)                                                           
    40034628:   2a0303e1    mov w1, w3                                                    
    4003462c:   eb13003f    cmp x1, x19                                                   
    40034630:   9a939033    csel    x19, x1, x19, ls  // ls = plast                       
    blocks = map->size.count;                                                             
                                                                                          
  while (blocks)                                                                          
    40034634:   b40014f3    cbz x19, 400348d0 <rtems_rfs_block_map_shrink+0x2e0>          <== NEVER TAKEN
        rtems_rfs_block_no doubly_singly;                                                 
                                                                                          
        doubly        = singly / fs->blocks_per_block;                                    
        doubly_singly = singly % fs->blocks_per_block;                                    
                                                                                          
        rc = rtems_rfs_buffer_handle_request (fs, &map->doubly_buffer,                    
    40034638:   52800034    mov w20, #0x1                       // #1                     
    4003463c:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40034640:   91014356    add x22, x26, #0x50                                           
                                             doubly_singly);                              
                                                                                          
        /*                                                                                
         * Read the singly indirect table and get the block number.                       
         */                                                                               
        rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,                    
    40034644:   91010355    add x21, x26, #0x40                                           
    40034648:   a90363f7    stp x23, x24, [sp, #48]                                       
    4003464c:   14000011    b   40034690 <rtems_rfs_block_map_shrink+0xa0>                
      block_to_free = map->blocks[block];                                                 
    40034650:   8b214b41    add x1, x26, w1, uxtw #2                                      
    40034654:   b9402c3c    ldr w28, [x1, #44]                                            
      map->blocks[block] = 0;                                                             
    40034658:   b9002c3f    str wzr, [x1, #44]                                            
      {                                                                                   
        rc = EIO;                                                                         
        break;                                                                            
      }                                                                                   
    }                                                                                     
    rc = rtems_rfs_group_bitmap_free (fs, false, block_to_free);                          
    4003465c:   2a1c03e2    mov w2, w28                                                   
    40034660:   aa1b03e0    mov x0, x27                                                   
    40034664:   52800001    mov w1, #0x0                    // #0                         
    40034668:   97ffd11e    bl  40028ae0 <rtems_rfs_group_bitmap_free>                    
    if (rc > 0)                                                                           
    4003466c:   7100001f    cmp w0, #0x0                                                  
    40034670:   540009ac    b.gt    400347a4 <rtems_rfs_block_map_shrink+0x1b4>           <== NEVER TAKEN
      return rc;                                                                          
    map->size.count--;                                                                    
    40034674:   b9401343    ldr w3, [x26, #16]                                            
  while (blocks)                                                                          
    40034678:   f1000673    subs    x19, x19, #0x1                                        
    map->size.offset = 0;                                                                 
    map->last_data_block = block_to_free;                                                 
    map->dirty = true;                                                                    
    4003467c:   39000354    strb    w20, [x26]                                            
    map->size.count--;                                                                    
    40034680:   51000463    sub w3, w3, #0x1                                              
    map->size.offset = 0;                                                                 
    40034684:   29027f43    stp w3, wzr, [x26, #16]                                       
    map->last_data_block = block_to_free;                                                 
    40034688:   b9002b5c    str w28, [x26, #40]                                           
  while (blocks)                                                                          
    4003468c:   54000d20    b.eq    40034830 <rtems_rfs_block_map_shrink+0x240>  // b.none
    block = map->size.count - 1;                                                          
    40034690:   51000461    sub w1, w3, #0x1                                              
    if (block < RTEMS_RFS_INODE_BLOCKS)                                                   
    40034694:   7100103f    cmp w1, #0x4                                                  
    40034698:   54fffdc9    b.ls    40034650 <rtems_rfs_block_map_shrink+0x60>  // b.plast
      if (block < fs->block_map_singly_blocks)                                            
    4003469c:   a9460377    ldp x23, x0, [x27, #96]                                       
      direct = block % fs->blocks_per_block;                                              
    400346a0:   9ad7083c    udiv    x28, x1, x23                                          
      if (block < fs->block_map_singly_blocks)                                            
    400346a4:   eb00003f    cmp x1, x0                                                    
      direct = block % fs->blocks_per_block;                                              
    400346a8:   9b178798    msub    x24, x28, x23, x1                                     
      if (block < fs->block_map_singly_blocks)                                            
    400346ac:   540008a3    b.cc    400347c0 <rtems_rfs_block_map_shrink+0x1d0>  // b.lo, b.ul, b.last<== ALWAYS TAKEN
      else if (block < fs->block_map_doubly_blocks)                                       
    400346b0:   f9403b60    ldr x0, [x27, #112]                                           <== NOT EXECUTED
    400346b4:   eb00003f    cmp x1, x0                                                    <== NOT EXECUTED
    400346b8:   54000bc2    b.cs    40034830 <rtems_rfs_block_map_shrink+0x240>  // b.hs, b.nlast<== NOT EXECUTED
        doubly        = singly / fs->blocks_per_block;                                    
    400346bc:   9ad70b99    udiv    x25, x28, x23                                         <== NOT EXECUTED
        rc = rtems_rfs_buffer_handle_request (fs, &map->doubly_buffer,                    
    400346c0:   aa1603e1    mov x1, x22                                                   <== NOT EXECUTED
    400346c4:   aa1b03e0    mov x0, x27                                                   <== NOT EXECUTED
    400346c8:   52800023    mov w3, #0x1                    // #1                         <== NOT EXECUTED
    400346cc:   8b190b42    add x2, x26, x25, lsl #2                                      <== NOT EXECUTED
        doubly_singly = singly % fs->blocks_per_block;                                    
    400346d0:   9b17f337    msub    x23, x25, x23, x28                                    <== NOT EXECUTED
        rc = rtems_rfs_buffer_handle_request (fs, &map->doubly_buffer,                    
    400346d4:   b9402c42    ldr w2, [x2, #44]                                             <== NOT EXECUTED
    400346d8:   97ffca3e    bl  40026fd0 <rtems_rfs_buffer_handle_request>                <== NOT EXECUTED
        if (rc > 0)                                                                       
    400346dc:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    400346e0:   5400062c    b.gt    400347a4 <rtems_rfs_block_map_shrink+0x1b4>           <== NOT EXECUTED
        singly = rtems_rfs_block_get_number (&map->doubly_buffer,                         
    400346e4:   f9402f44    ldr x4, [x26, #88]                                            <== NOT EXECUTED
    400346e8:   d37ef6e2    lsl x2, x23, #2                                               <== NOT EXECUTED
        rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,                    
    400346ec:   aa1503e1    mov x1, x21                                                   <== NOT EXECUTED
    400346f0:   aa1b03e0    mov x0, x27                                                   <== NOT EXECUTED
    400346f4:   52800023    mov w3, #0x1                    // #1                         <== NOT EXECUTED
        singly = rtems_rfs_block_get_number (&map->doubly_buffer,                         
    400346f8:   f9401c84    ldr x4, [x4, #56]                                             <== NOT EXECUTED
    400346fc:   8b020085    add x5, x4, x2                                                <== NOT EXECUTED
    40034700:   38626882    ldrb    w2, [x4, x2]                                          <== NOT EXECUTED
    40034704:   394008a6    ldrb    w6, [x5, #2]                                          <== NOT EXECUTED
    40034708:   39400ca4    ldrb    w4, [x5, #3]                                          <== NOT EXECUTED
    4003470c:   394004a5    ldrb    w5, [x5, #1]                                          <== NOT EXECUTED
    40034710:   53185cc6    lsl w6, w6, #8                                                <== NOT EXECUTED
    40034714:   2a026084    orr w4, w4, w2, lsl #24                                       <== NOT EXECUTED
    40034718:   2a0540c2    orr w2, w6, w5, lsl #16                                       <== NOT EXECUTED
    4003471c:   2a040042    orr w2, w2, w4                                                <== NOT EXECUTED
        rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,                    
    40034720:   b9006fe2    str w2, [sp, #108]                                            <== NOT EXECUTED
    40034724:   97ffca2b    bl  40026fd0 <rtems_rfs_buffer_handle_request>                <== NOT EXECUTED
        if (rc > 0)                                                                       
    40034728:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    4003472c:   540003cc    b.gt    400347a4 <rtems_rfs_block_map_shrink+0x1b4>           <== NOT EXECUTED
        block_to_free = rtems_rfs_block_get_number (&map->singly_buffer,                  
    40034730:   f9402741    ldr x1, [x26, #72]                                            <== NOT EXECUTED
    40034734:   d37ef700    lsl x0, x24, #2                                               <== NOT EXECUTED
        if (direct == 0)                                                                  
    40034738:   b9406fe2    ldr w2, [sp, #108]                                            <== NOT EXECUTED
        block_to_free = rtems_rfs_block_get_number (&map->singly_buffer,                  
    4003473c:   f9401c21    ldr x1, [x1, #56]                                             <== NOT EXECUTED
    40034740:   8b000023    add x3, x1, x0                                                <== NOT EXECUTED
    40034744:   38606820    ldrb    w0, [x1, x0]                                          <== NOT EXECUTED
    40034748:   39400861    ldrb    w1, [x3, #2]                                          <== NOT EXECUTED
    4003474c:   39400c64    ldrb    w4, [x3, #3]                                          <== NOT EXECUTED
    40034750:   3940047c    ldrb    w28, [x3, #1]                                         <== NOT EXECUTED
    40034754:   53185c21    lsl w1, w1, #8                                                <== NOT EXECUTED
    40034758:   2a006080    orr w0, w4, w0, lsl #24                                       <== NOT EXECUTED
    4003475c:   2a1c403c    orr w28, w1, w28, lsl #16                                     <== NOT EXECUTED
    40034760:   2a00039c    orr w28, w28, w0                                              <== NOT EXECUTED
        if (direct == 0)                                                                  
    40034764:   b5fff7d8    cbnz    x24, 4003465c <rtems_rfs_block_map_shrink+0x6c>       <== NOT EXECUTED
          rc = rtems_rfs_group_bitmap_free (fs, false, singly);                           
    40034768:   aa1b03e0    mov x0, x27                                                   <== NOT EXECUTED
    4003476c:   52800001    mov w1, #0x0                    // #0                         <== NOT EXECUTED
    40034770:   b9006fe2    str w2, [sp, #108]                                            <== NOT EXECUTED
    40034774:   97ffd0db    bl  40028ae0 <rtems_rfs_group_bitmap_free>                    <== NOT EXECUTED
          if (rc > 0)                                                                     
    40034778:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    4003477c:   5400014c    b.gt    400347a4 <rtems_rfs_block_map_shrink+0x1b4>           <== NOT EXECUTED
          map->last_map_block = singly;                                                   
    40034780:   b9406fe2    ldr w2, [sp, #108]                                            <== NOT EXECUTED
          rc = rtems_rfs_block_map_indirect_shrink (fs, map, &map->doubly_buffer,         
    40034784:   2a1703e4    mov w4, w23                                                   <== NOT EXECUTED
          map->last_map_block = singly;                                                   
    40034788:   b9002742    str w2, [x26, #36]                                            <== NOT EXECUTED
          rc = rtems_rfs_block_map_indirect_shrink (fs, map, &map->doubly_buffer,         
    4003478c:   2a1903e3    mov w3, w25                                                   <== NOT EXECUTED
    40034790:   aa1a03e1    mov x1, x26                                                   <== NOT EXECUTED
    40034794:   aa1b03e0    mov x0, x27                                                   <== NOT EXECUTED
    40034798:   aa1603e2    mov x2, x22                                                   <== NOT EXECUTED
    4003479c:   97fffc6d    bl  40033950 <rtems_rfs_block_map_indirect_shrink>            <== NOT EXECUTED
          if (rc)                                                                         
    400347a0:   34fff5e0    cbz w0, 4003465c <rtems_rfs_block_map_shrink+0x6c>            <== NOT EXECUTED
   */                                                                                     
  if (rtems_rfs_block_pos_past_end (&map->bpos, &map->size))                              
    rtems_rfs_block_size_get_bpos (&map->size, &map->bpos);                               
                                                                                          
  return 0;                                                                               
}                                                                                         
    400347a4:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    400347a8:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    400347ac:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    400347b0:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    400347b4:   a94573fb    ldp x27, x28, [sp, #80]                                       <== NOT EXECUTED
    400347b8:   a8c77bfd    ldp x29, x30, [sp], #112                                      <== NOT EXECUTED
    400347bc:   d65f03c0    ret                                                           <== NOT EXECUTED
        rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,                    
    400347c0:   8b1c0b42    add x2, x26, x28, lsl #2                                      
    400347c4:   aa1503e1    mov x1, x21                                                   
    400347c8:   aa1b03e0    mov x0, x27                                                   
    400347cc:   52800023    mov w3, #0x1                    // #1                         
    400347d0:   b9402c42    ldr w2, [x2, #44]                                             
    400347d4:   97ffc9ff    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
        if (rc > 0)                                                                       
    400347d8:   7100001f    cmp w0, #0x0                                                  
    400347dc:   54fffe4c    b.gt    400347a4 <rtems_rfs_block_map_shrink+0x1b4>           <== NEVER TAKEN
        block_to_free = rtems_rfs_block_get_number (&map->singly_buffer,                  
    400347e0:   f9402740    ldr x0, [x26, #72]                                            
    400347e4:   d37ef705    lsl x5, x24, #2                                               
        rc = rtems_rfs_block_map_indirect_shrink (fs, map, &map->singly_buffer,           
    400347e8:   2a1c03e3    mov w3, w28                                                   
    400347ec:   2a1803e4    mov w4, w24                                                   
    400347f0:   aa1503e2    mov x2, x21                                                   
    400347f4:   aa1a03e1    mov x1, x26                                                   
        block_to_free = rtems_rfs_block_get_number (&map->singly_buffer,                  
    400347f8:   f9401c06    ldr x6, [x0, #56]                                             
        rc = rtems_rfs_block_map_indirect_shrink (fs, map, &map->singly_buffer,           
    400347fc:   aa1b03e0    mov x0, x27                                                   
        block_to_free = rtems_rfs_block_get_number (&map->singly_buffer,                  
    40034800:   8b0500c7    add x7, x6, x5                                                
    40034804:   386568c5    ldrb    w5, [x6, x5]                                          
    40034808:   39400ce8    ldrb    w8, [x7, #3]                                          
    4003480c:   394008e6    ldrb    w6, [x7, #2]                                          
    40034810:   394004fc    ldrb    w28, [x7, #1]                                         
    40034814:   2a056105    orr w5, w8, w5, lsl #24                                       
    40034818:   53185cc6    lsl w6, w6, #8                                                
    4003481c:   2a1c40dc    orr w28, w6, w28, lsl #16                                     
    40034820:   2a05039c    orr w28, w28, w5                                              
        rc = rtems_rfs_block_map_indirect_shrink (fs, map, &map->singly_buffer,           
    40034824:   97fffc4b    bl  40033950 <rtems_rfs_block_map_indirect_shrink>            
        if (rc)                                                                           
    40034828:   34fff1a0    cbz w0, 4003465c <rtems_rfs_block_map_shrink+0x6c>            <== ALWAYS TAKEN
    4003482c:   17ffffde    b   400347a4 <rtems_rfs_block_map_shrink+0x1b4>               <== NOT EXECUTED
  if (map->size.count == 0)                                                               
    40034830:   340002c3    cbz w3, 40034888 <rtems_rfs_block_map_shrink+0x298>           <== ALWAYS TAKEN
  if (rtems_rfs_block_pos_past_end (&map->bpos, &map->size))                              
    40034834:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40034838:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    4003483c:   b9401b40    ldr w0, [x26, #24]                                            <== NOT EXECUTED
    40034840:   6b03001f    cmp w0, w3                                                    <== NOT EXECUTED
    40034844:   54000422    b.cs    400348c8 <rtems_rfs_block_map_shrink+0x2d8>  // b.hs, b.nlast<== NOT EXECUTED
    40034848:   51000461    sub w1, w3, #0x1                                              <== NOT EXECUTED
    4003484c:   6b00003f    cmp w1, w0                                                    <== NOT EXECUTED
    40034850:   54000320    b.eq    400348b4 <rtems_rfs_block_map_shrink+0x2c4>  // b.none<== NOT EXECUTED
    40034854:   d503201f    nop                                                           <== NOT EXECUTED
    return 0;                                                                             
    40034858:   52800000    mov w0, #0x0                    // #0                         
}                                                                                         
    4003485c:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40034860:   a9446bf9    ldp x25, x26, [sp, #64]                                       
    40034864:   a94573fb    ldp x27, x28, [sp, #80]                                       
    40034868:   a8c77bfd    ldp x29, x30, [sp], #112                                      
    4003486c:   d65f03c0    ret                                                           
    printf ("rtems-rfs: block-map-shrink: entry: blocks=%zd count=%" PRIu32 "\n",         
    40034870:   b9401342    ldr w2, [x26, #16]                                            <== NOT EXECUTED
    40034874:   aa1303e1    mov x1, x19                                                   <== NOT EXECUTED
    40034878:   d00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    4003487c:   9114e000    add x0, x0, #0x538                                            <== NOT EXECUTED
    40034880:   97ffb6e4    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40034884:   17ffff67    b   40034620 <rtems_rfs_block_map_shrink+0x30>                <== NOT EXECUTED
    rtems_rfs_block_size_get_bpos (&map->size, &map->bpos);                               
    40034888:   b9401740    ldr w0, [x26, #20]                                            
    4003488c:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40034890:   a94363f7    ldp x23, x24, [sp, #48]                                       
    map->last_data_block = 0;                                                             
    40034894:   2904ff5f    stp wzr, wzr, [x26, #36]                                      
    rtems_rfs_block_size_get_bpos (&map->size, &map->bpos);                               
    40034898:   29030343    stp w3, w0, [x26, #24]                                        
    4003489c:   b900235f    str wzr, [x26, #32]                                           
    400348a0:   34fffdc0    cbz w0, 40034858 <rtems_rfs_block_map_shrink+0x268>           <== ALWAYS TAKEN
    400348a4:   51000463    sub w3, w3, #0x1                                              <== NOT EXECUTED
  return 0;                                                                               
    400348a8:   52800000    mov w0, #0x0                    // #0                         <== NOT EXECUTED
    rtems_rfs_block_size_get_bpos (&map->size, &map->bpos);                               
    400348ac:   b9001b43    str w3, [x26, #24]                                            <== NOT EXECUTED
    400348b0:   17ffffeb    b   4003485c <rtems_rfs_block_map_shrink+0x26c>               <== NOT EXECUTED
  if (rtems_rfs_block_pos_past_end (&map->bpos, &map->size))                              
    400348b4:   b9401740    ldr w0, [x26, #20]                                            <== NOT EXECUTED
    400348b8:   b9401f41    ldr w1, [x26, #28]                                            <== NOT EXECUTED
    400348bc:   6b00003f    cmp w1, w0                                                    <== NOT EXECUTED
    400348c0:   54fffcc9    b.ls    40034858 <rtems_rfs_block_map_shrink+0x268>  // b.plast<== NOT EXECUTED
    400348c4:   17fffff5    b   40034898 <rtems_rfs_block_map_shrink+0x2a8>               <== NOT EXECUTED
    rtems_rfs_block_size_get_bpos (&map->size, &map->bpos);                               
    400348c8:   b9401740    ldr w0, [x26, #20]                                            <== NOT EXECUTED
    400348cc:   17fffff3    b   40034898 <rtems_rfs_block_map_shrink+0x2a8>               <== NOT EXECUTED
  if (rtems_rfs_block_pos_past_end (&map->bpos, &map->size))                              
    400348d0:   b9401b40    ldr w0, [x26, #24]                                            <== NOT EXECUTED
    400348d4:   17ffffdb    b   40034840 <rtems_rfs_block_map_shrink+0x250>               <== NOT EXECUTED
    ...                                                                                   
                                                                                          

0000000040034940 <rtems_rfs_buffer_bdbuf_release>: int rtems_rfs_buffer_bdbuf_release (rtems_rfs_buffer* buffer, bool modified) {
    40034940:   a9be7bfd    stp x29, x30, [sp, #-32]!                                     
    40034944:   910003fd    mov x29, sp                                                   
    40034948:   a90153f3    stp x19, x20, [sp, #16]                                       
    4003494c:   12001c34    and w20, w1, #0xff                                            
    40034950:   aa0003f3    mov x19, x0                                                   
  rtems_status_code sc;                                                                   
  int               rc = 0;                                                               
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_RELEASE))                                   
    40034954:   d2800800    mov x0, #0x40                   // #64                        
    40034958:   97ffd83e    bl  4002aa50 <rtems_rfs_trace>                                
    4003495c:   72001c1f    tst w0, #0xff                                                 
    40034960:   54000180    b.eq    40034990 <rtems_rfs_buffer_bdbuf_release+0x50>  // b.none<== ALWAYS TAKEN
    printf ("rtems-rfs: bdbuf-release: block=%" PRIuPTR " bdbuf=%" PRIu32 " %s\n",        
    40034964:   b9403262    ldr w2, [x19, #48]                                            <== NOT EXECUTED
    40034968:   7100029f    cmp w20, #0x0                                                 <== NOT EXECUTED
    4003496c:   f9402e61    ldr x1, [x19, #88]                                            <== NOT EXECUTED
    40034970:   d00000a4    adrp    x4, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40034974:   9115e084    add x4, x4, #0x578                                            <== NOT EXECUTED
    40034978:   f0000083    adrp    x3, 40047000 <write+0xc0>                             <== NOT EXECUTED
    4003497c:   912fa063    add x3, x3, #0xbe8                                            <== NOT EXECUTED
    40034980:   d00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40034984:   9a831083    csel    x3, x4, x3, ne  // ne = any                           <== NOT EXECUTED
    40034988:   91162000    add x0, x0, #0x588                                            <== NOT EXECUTED
    4003498c:   97ffb6a1    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
            ((intptr_t) buffer->user),                                                    
            buffer->block, modified ? "(modified)" : "");                                 
                                                                                          
  if (modified)                                                                           
    sc = rtems_bdbuf_release_modified (buffer);                                           
    40034990:   aa1303e0    mov x0, x19                                                   
  if (modified)                                                                           
    40034994:   34000114    cbz w20, 400349b4 <rtems_rfs_buffer_bdbuf_release+0x74>       
    sc = rtems_bdbuf_release_modified (buffer);                                           
    40034998:   97fff452    bl  40031ae0 <rtems_bdbuf_release_modified>                   
#if RTEMS_RFS_BUFFER_ERRORS                                                               
    printf ("rtems-rfs: buffer-release: bdbuf-%s: %s(%d)\n",                              
            modified ? "modified" : "not-modified",                                       
            rtems_status_text (sc), sc);                                                  
#endif                                                                                    
    rc = EIO;                                                                             
    4003499c:   7100001f    cmp w0, #0x0                                                  
    400349a0:   528000a0    mov w0, #0x5                    // #5                         
  }                                                                                       
                                                                                          
  return rc;                                                                              
}                                                                                         
    400349a4:   1a9f1000    csel    w0, w0, wzr, ne  // ne = any                          
    400349a8:   a94153f3    ldp x19, x20, [sp, #16]                                       
    400349ac:   a8c27bfd    ldp x29, x30, [sp], #32                                       
    400349b0:   d65f03c0    ret                                                           
    sc = rtems_bdbuf_release (buffer);                                                    
    400349b4:   97fff40b    bl  400319e0 <rtems_bdbuf_release>                            
    rc = EIO;                                                                             
    400349b8:   7100001f    cmp w0, #0x0                                                  
    400349bc:   528000a0    mov w0, #0x5                    // #5                         
}                                                                                         
    400349c0:   1a9f1000    csel    w0, w0, wzr, ne  // ne = any                          
    400349c4:   a94153f3    ldp x19, x20, [sp, #16]                                       
    400349c8:   a8c27bfd    ldp x29, x30, [sp], #32                                       
    400349cc:   d65f03c0    ret                                                           
                                                                                          

00000000400276b0 <rtems_rfs_buffer_close>: {
    400276b0:   a9be7bfd    stp x29, x30, [sp, #-32]!                                     
    400276b4:   910003fd    mov x29, sp                                                   
    400276b8:   a90153f3    stp x19, x20, [sp, #16]                                       
    400276bc:   aa0003f3    mov x19, x0                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_CLOSE))                                     
    400276c0:   d2800200    mov x0, #0x10                   // #16                        
    400276c4:   94000ce3    bl  4002aa50 <rtems_rfs_trace>                                
    400276c8:   72001c1f    tst w0, #0xff                                                 
    400276cc:   54000581    b.ne    4002777c <rtems_rfs_buffer_close+0xcc>  // b.any      <== NEVER TAKEN
  rc = rtems_rfs_buffer_setblksize (fs, rtems_rfs_fs_media_block_size (fs));              
    400276d0:   f9401261    ldr x1, [x19, #32]                                            
    400276d4:   aa1303e0    mov x0, x19                                                   
    400276d8:   b9402c21    ldr w1, [x1, #44]                                             
    400276dc:   97ffffa9    bl  40027580 <rtems_rfs_buffer_setblksize>                    
    400276e0:   2a0003f4    mov w20, w0                                                   
  if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_CLOSE))                         
    400276e4:   7100001f    cmp w0, #0x0                                                  
    400276e8:   5400010c    b.gt    40027708 <rtems_rfs_buffer_close+0x58>                <== NEVER TAKEN
  if (close (fs->device) < 0)                                                             
    400276ec:   b9401a60    ldr w0, [x19, #24]                                            
    400276f0:   94002be4    bl  40032680 <close>                                          
    400276f4:   37f80260    tbnz    w0, #31, 40027740 <rtems_rfs_buffer_close+0x90>       <== NEVER TAKEN
}                                                                                         
    400276f8:   2a1403e0    mov w0, w20                                                   
    400276fc:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40027700:   a8c27bfd    ldp x29, x30, [sp], #32                                       
    40027704:   d65f03c0    ret                                                           
  if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_CLOSE))                         
    40027708:   d2800200    mov x0, #0x10                   // #16                        <== NOT EXECUTED
    4002770c:   94000cd1    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40027710:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40027714:   54fffec0    b.eq    400276ec <rtems_rfs_buffer_close+0x3c>  // b.none     <== NOT EXECUTED
    printf ("rtems-rfs: buffer-close: set media block size failed: %d: %s\n",             
    40027718:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    4002771c:   94005d40    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40027720:   b0000101    adrp    x1, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40027724:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40027728:   913a8020    add x0, x1, #0xea0                                            <== NOT EXECUTED
    4002772c:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40027730:   97ffeb38    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  if (close (fs->device) < 0)                                                             
    40027734:   b9401a60    ldr w0, [x19, #24]                                            <== NOT EXECUTED
    40027738:   94002bd2    bl  40032680 <close>                                          <== NOT EXECUTED
    4002773c:   36fffde0    tbz w0, #31, 400276f8 <rtems_rfs_buffer_close+0x48>           <== NOT EXECUTED
    rc = errno;                                                                           
    40027740:   94005853    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    40027744:   aa0003e1    mov x1, x0                                                    <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_CLOSE))                                   
    40027748:   d2800200    mov x0, #0x10                   // #16                        <== NOT EXECUTED
    rc = errno;                                                                           
    4002774c:   b9400034    ldr w20, [x1]                                                 <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_CLOSE))                                   
    40027750:   94000cc0    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40027754:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40027758:   54fffd00    b.eq    400276f8 <rtems_rfs_buffer_close+0x48>  // b.none     <== NOT EXECUTED
      printf ("rtems-rfs: buffer-close: file close failed: %d: %s\n",                     
    4002775c:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    40027760:   94005d2f    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40027764:   b0000101    adrp    x1, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40027768:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    4002776c:   913b8020    add x0, x1, #0xee0                                            <== NOT EXECUTED
    40027770:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40027774:   97ffeb27    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  return rc;                                                                              
    40027778:   17ffffe0    b   400276f8 <rtems_rfs_buffer_close+0x48>                    <== NOT EXECUTED
    printf ("rtems-rfs: buffer-close: closing\n");                                        
    4002777c:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40027780:   9139e000    add x0, x0, #0xe78                                            <== NOT EXECUTED
    40027784:   97ffeb47    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
    40027788:   17ffffd2    b   400276d0 <rtems_rfs_buffer_close+0x20>                    <== NOT EXECUTED
    4002778c:   00000000    udf #0                                                        
                                                                                          

0000000040026db0 <rtems_rfs_buffer_handle_release.part.0>: rtems_rfs_buffer_handle_release (rtems_rfs_file_system* fs,
    40026db0:   a9be7bfd    stp x29, x30, [sp, #-32]!                                     <== NOT EXECUTED
    40026db4:   910003fd    mov x29, sp                                                   <== NOT EXECUTED
    40026db8:   a90153f3    stp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40026dbc:   aa0003f3    mov x19, x0                                                   <== NOT EXECUTED
    40026dc0:   aa0103f4    mov x20, x1                                                   <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_HANDLE_RELEASE))                          
    40026dc4:   d2804000    mov x0, #0x200                  // #512                       <== NOT EXECUTED
    40026dc8:   94000f22    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40026dcc:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40026dd0:   54000240    b.eq    40026e18 <rtems_rfs_buffer_handle_release.part.0+0x68>  // b.none<== NOT EXECUTED
      printf ("rtems-rfs: buffer-release: block=%" PRIu32 " %s refs=%d %s\n",             
    40026dd4:   f9400683    ldr x3, [x20, #8]                                             <== NOT EXECUTED
    40026dd8:   b0000100    adrp    x0, 40047000 <write+0xc0>                             <== NOT EXECUTED
    40026ddc:   912fa000    add x0, x0, #0xbe8                                            <== NOT EXECUTED
    40026de0:   39400281    ldrb    w1, [x20]                                             <== NOT EXECUTED
    40026de4:   d0000102    adrp    x2, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40026de8:   9129a042    add x2, x2, #0xa68                                            <== NOT EXECUTED
    40026dec:   b9405463    ldr w3, [x3, #84]                                             <== NOT EXECUTED
    40026df0:   7100003f    cmp w1, #0x0                                                  <== NOT EXECUTED
    40026df4:   b9400681    ldr w1, [x20, #4]                                             <== NOT EXECUTED
    40026df8:   9a801042    csel    x2, x2, x0, ne  // ne = any                           <== NOT EXECUTED
    40026dfc:   7100007f    cmp w3, #0x0                                                  <== NOT EXECUTED
    40026e00:   d0000104    adrp    x4, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40026e04:   9129c084    add x4, x4, #0xa70                                            <== NOT EXECUTED
    40026e08:   9a800084    csel    x4, x4, x0, eq  // eq = none                          <== NOT EXECUTED
    40026e0c:   d0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40026e10:   912a0000    add x0, x0, #0xa80                                            <== NOT EXECUTED
    40026e14:   97ffed7f    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    if (rtems_rfs_buffer_refs (handle) > 0)                                               
    40026e18:   f9400682    ldr x2, [x20, #8]                                             <== NOT EXECUTED
    40026e1c:   b9405440    ldr w0, [x2, #84]                                             <== NOT EXECUTED
    40026e20:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40026e24:   5400006d    b.le    40026e30 <rtems_rfs_buffer_handle_release.part.0+0x80><== NOT EXECUTED
      rtems_rfs_buffer_refs_down (handle);                                                
    40026e28:   51000400    sub w0, w0, #0x1                                              <== NOT EXECUTED
    40026e2c:   b9005440    str w0, [x2, #84]                                             <== NOT EXECUTED
    if (rtems_rfs_buffer_refs (handle) == 0)                                              
    40026e30:   350003c0    cbnz    w0, 40026ea8 <rtems_rfs_buffer_handle_release.part.0+0xf8><== NOT EXECUTED
  previous       = the_node->previous;                                                    
    40026e34:   a9400c44    ldp x4, x3, [x2]                                              <== NOT EXECUTED
      fs->buffers_count--;                                                                
    40026e38:   b9409a61    ldr w1, [x19, #152]                                           <== NOT EXECUTED
      if (rtems_rfs_fs_no_local_cache (fs))                                               
    40026e3c:   b9400265    ldr w5, [x19]                                                 <== NOT EXECUTED
  next->previous = previous;                                                              
    40026e40:   f9000483    str x3, [x4, #8]                                              <== NOT EXECUTED
      fs->buffers_count--;                                                                
    40026e44:   51000421    sub w1, w1, #0x1                                              <== NOT EXECUTED
  previous->next = next;                                                                  
    40026e48:   f9000064    str x4, [x3]                                                  <== NOT EXECUTED
    40026e4c:   b9009a61    str w1, [x19, #152]                                           <== NOT EXECUTED
      if (rtems_rfs_fs_no_local_cache (fs))                                               
    40026e50:   37080505    tbnz    w5, #1, 40026ef0 <rtems_rfs_buffer_handle_release.part.0+0x140><== NOT EXECUTED
        if ((fs->release_count +                                                          
    40026e54:   b940ba61    ldr w1, [x19, #184]                                           <== NOT EXECUTED
    40026e58:   b940da64    ldr w4, [x19, #216]                                           <== NOT EXECUTED
    40026e5c:   b9407a63    ldr w3, [x19, #120]                                           <== NOT EXECUTED
    40026e60:   0b040021    add w1, w1, w4                                                <== NOT EXECUTED
    40026e64:   6b03003f    cmp w1, w3                                                    <== NOT EXECUTED
    40026e68:   54000542    b.cs    40026f10 <rtems_rfs_buffer_handle_release.part.0+0x160>  // b.hs, b.nlast<== NOT EXECUTED
        if (rtems_rfs_buffer_dirty (handle))                                              
    40026e6c:   39400281    ldrb    w1, [x20]                                             <== NOT EXECUTED
    40026e70:   34000261    cbz w1, 40026ebc <rtems_rfs_buffer_handle_release.part.0+0x10c><== NOT EXECUTED
  old_last = tail->previous;                                                              
    40026e74:   f9406a64    ldr x4, [x19, #208]                                           <== NOT EXECUTED
    40026e78:   91032263    add x3, x19, #0xc8                                            <== NOT EXECUTED
          fs->release_modified_count++;                                                   
    40026e7c:   b940da61    ldr w1, [x19, #216]                                           <== NOT EXECUTED
  the_node->next = tail;                                                                  
    40026e80:   f9000043    str x3, [x2]                                                  <== NOT EXECUTED
  tail->previous = the_node;                                                              
    40026e84:   f9006a62    str x2, [x19, #208]                                           <== NOT EXECUTED
    40026e88:   11000421    add w1, w1, #0x1                                              <== NOT EXECUTED
  old_last->next = the_node;                                                              
    40026e8c:   f9000082    str x2, [x4]                                                  <== NOT EXECUTED
  the_node->previous = old_last;                                                          
    40026e90:   f9000444    str x4, [x2, #8]                                              <== NOT EXECUTED
    40026e94:   b900da61    str w1, [x19, #216]                                           <== NOT EXECUTED
    handle->buffer = NULL;                                                                
    40026e98:   f900069f    str xzr, [x20, #8]                                            <== NOT EXECUTED
}                                                                                         
    40026e9c:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40026ea0:   a8c27bfd    ldp x29, x30, [sp], #32                                       <== NOT EXECUTED
    40026ea4:   d65f03c0    ret                                                           <== NOT EXECUTED
    handle->buffer = NULL;                                                                
    40026ea8:   f900069f    str xzr, [x20, #8]                                            <== NOT EXECUTED
  int rc = 0;                                                                             
    40026eac:   52800000    mov w0, #0x0                    // #0                         <== NOT EXECUTED
}                                                                                         
    40026eb0:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40026eb4:   a8c27bfd    ldp x29, x30, [sp], #32                                       <== NOT EXECUTED
    40026eb8:   d65f03c0    ret                                                           <== NOT EXECUTED
  old_last = tail->previous;                                                              
    40026ebc:   f9405a64    ldr x4, [x19, #176]                                           <== NOT EXECUTED
    40026ec0:   9102a263    add x3, x19, #0xa8                                            <== NOT EXECUTED
          fs->release_count++;                                                            
    40026ec4:   b940ba61    ldr w1, [x19, #184]                                           <== NOT EXECUTED
  the_node->next = tail;                                                                  
    40026ec8:   f9000043    str x3, [x2]                                                  <== NOT EXECUTED
  tail->previous = the_node;                                                              
    40026ecc:   f9005a62    str x2, [x19, #176]                                           <== NOT EXECUTED
    40026ed0:   11000421    add w1, w1, #0x1                                              <== NOT EXECUTED
  old_last->next = the_node;                                                              
    40026ed4:   f9000082    str x2, [x4]                                                  <== NOT EXECUTED
  the_node->previous = old_last;                                                          
    40026ed8:   f9000444    str x4, [x2, #8]                                              <== NOT EXECUTED
    40026edc:   b900ba61    str w1, [x19, #184]                                           <== NOT EXECUTED
    handle->buffer = NULL;                                                                
    40026ee0:   f900069f    str xzr, [x20, #8]                                            <== NOT EXECUTED
}                                                                                         
    40026ee4:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40026ee8:   a8c27bfd    ldp x29, x30, [sp], #32                                       <== NOT EXECUTED
    40026eec:   d65f03c0    ret                                                           <== NOT EXECUTED
        rc = rtems_rfs_buffer_io_release (handle->buffer,                                 
    40026ef0:   39400281    ldrb    w1, [x20]                                             <== NOT EXECUTED
    40026ef4:   aa0203e0    mov x0, x2                                                    <== NOT EXECUTED
        handle->buffer->user = (void*) 0;                                                 
    40026ef8:   f9002c5f    str xzr, [x2, #88]                                            <== NOT EXECUTED
        rc = rtems_rfs_buffer_io_release (handle->buffer,                                 
    40026efc:   94003691    bl  40034940 <rtems_rfs_buffer_bdbuf_release>                 <== NOT EXECUTED
    handle->buffer = NULL;                                                                
    40026f00:   f900069f    str xzr, [x20, #8]                                            <== NOT EXECUTED
}                                                                                         
    40026f04:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40026f08:   a8c27bfd    ldp x29, x30, [sp], #32                                       <== NOT EXECUTED
    40026f0c:   d65f03c0    ret                                                           <== NOT EXECUTED
          if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_HANDLE_RELEASE))                    
    40026f10:   d2804000    mov x0, #0x200                  // #512                       <== NOT EXECUTED
    40026f14:   94000ecf    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40026f18:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40026f1c:   54000481    b.ne    40026fac <rtems_rfs_buffer_handle_release.part.0+0x1fc>  // b.any<== NOT EXECUTED
          if (fs->release_count > fs->release_modified_count)                             
    40026f20:   b940ba62    ldr w2, [x19, #184]                                           <== NOT EXECUTED
    40026f24:   b940da61    ldr w1, [x19, #216]                                           <== NOT EXECUTED
    40026f28:   6b01005f    cmp w2, w1                                                    <== NOT EXECUTED
    40026f2c:   540001a9    b.ls    40026f60 <rtems_rfs_buffer_handle_release.part.0+0x1b0>  // b.plast<== NOT EXECUTED
  return _Chain_Immutable_head( the_chain )->next;                                        
    40026f30:   f9405260    ldr x0, [x19, #160]                                           <== NOT EXECUTED
  return &the_chain->Tail.Node;                                                           
    40026f34:   9102a261    add x1, x19, #0xa8                                            <== NOT EXECUTED
  return _Chain_Immutable_head( the_chain )->next;                                        
    40026f38:   91028263    add x3, x19, #0xa0                                            <== NOT EXECUTED
  if ( !_Chain_Is_empty(the_chain))                                                       
    40026f3c:   eb01001f    cmp x0, x1                                                    <== NOT EXECUTED
    40026f40:   540002e0    b.eq    40026f9c <rtems_rfs_buffer_handle_release.part.0+0x1ec>  // b.none<== NOT EXECUTED
  new_first = old_first->next;                                                            
    40026f44:   f9400001    ldr x1, [x0]                                                  <== NOT EXECUTED
  head->next = new_first;                                                                 
    40026f48:   f9005261    str x1, [x19, #160]                                           <== NOT EXECUTED
  new_first->previous = head;                                                             
    40026f4c:   f9000423    str x3, [x1, #8]                                              <== NOT EXECUTED
            fs->release_count--;                                                          
    40026f50:   51000442    sub w2, w2, #0x1                                              <== NOT EXECUTED
            modified = false;                                                             
    40026f54:   52800001    mov w1, #0x0                    // #0                         <== NOT EXECUTED
            fs->release_count--;                                                          
    40026f58:   b900ba62    str w2, [x19, #184]                                           <== NOT EXECUTED
            modified = false;                                                             
    40026f5c:   1400000c    b   40026f8c <rtems_rfs_buffer_handle_release.part.0+0x1dc>   <== NOT EXECUTED
  return _Chain_Immutable_head( the_chain )->next;                                        
    40026f60:   f9406260    ldr x0, [x19, #192]                                           <== NOT EXECUTED
  return &the_chain->Tail.Node;                                                           
    40026f64:   91032262    add x2, x19, #0xc8                                            <== NOT EXECUTED
  return _Chain_Immutable_head( the_chain )->next;                                        
    40026f68:   91030263    add x3, x19, #0xc0                                            <== NOT EXECUTED
  if ( !_Chain_Is_empty(the_chain))                                                       
    40026f6c:   eb02001f    cmp x0, x2                                                    <== NOT EXECUTED
    40026f70:   540001a0    b.eq    40026fa4 <rtems_rfs_buffer_handle_release.part.0+0x1f4>  // b.none<== NOT EXECUTED
  new_first = old_first->next;                                                            
    40026f74:   f9400002    ldr x2, [x0]                                                  <== NOT EXECUTED
  head->next = new_first;                                                                 
    40026f78:   f9006262    str x2, [x19, #192]                                           <== NOT EXECUTED
  new_first->previous = head;                                                             
    40026f7c:   f9000443    str x3, [x2, #8]                                              <== NOT EXECUTED
            fs->release_modified_count--;                                                 
    40026f80:   51000422    sub w2, w1, #0x1                                              <== NOT EXECUTED
            modified = true;                                                              
    40026f84:   52800021    mov w1, #0x1                    // #1                         <== NOT EXECUTED
            fs->release_modified_count--;                                                 
    40026f88:   b900da62    str w2, [x19, #216]                                           <== NOT EXECUTED
          buffer->user = (void*) 0;                                                       
    40026f8c:   f9002c1f    str xzr, [x0, #88]                                            <== NOT EXECUTED
          rc = rtems_rfs_buffer_io_release (buffer, modified);                            
    40026f90:   9400366c    bl  40034940 <rtems_rfs_buffer_bdbuf_release>                 <== NOT EXECUTED
                                          rtems_rfs_buffer_link (handle));                
    40026f94:   f9400682    ldr x2, [x20, #8]                                             <== NOT EXECUTED
    40026f98:   17ffffb5    b   40026e6c <rtems_rfs_buffer_handle_release.part.0+0xbc>    <== NOT EXECUTED
    return NULL;                                                                          
    40026f9c:   d2800000    mov x0, #0x0                    // #0                         <== NOT EXECUTED
    40026fa0:   17ffffec    b   40026f50 <rtems_rfs_buffer_handle_release.part.0+0x1a0>   <== NOT EXECUTED
    40026fa4:   d2800000    mov x0, #0x0                    // #0                         <== NOT EXECUTED
    40026fa8:   17fffff6    b   40026f80 <rtems_rfs_buffer_handle_release.part.0+0x1d0>   <== NOT EXECUTED
            printf ("rtems-rfs: buffer-release: local cache overflow:"                    
    40026fac:   b940ba62    ldr w2, [x19, #184]                                           <== NOT EXECUTED
    40026fb0:   d0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40026fb4:   912ae000    add x0, x0, #0xab8                                            <== NOT EXECUTED
    40026fb8:   b940da61    ldr w1, [x19, #216]                                           <== NOT EXECUTED
    40026fbc:   0b010041    add w1, w2, w1                                                <== NOT EXECUTED
    40026fc0:   97ffed14    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40026fc4:   17ffffd7    b   40026f20 <rtems_rfs_buffer_handle_release.part.0+0x170>   <== NOT EXECUTED
    ...                                                                                   
                                                                                          

0000000040026fd0 <rtems_rfs_buffer_handle_request>: {
    40026fd0:   a9bb7bfd    stp x29, x30, [sp, #-80]!                                     
    40026fd4:   910003fd    mov x29, sp                                                   
    40026fd8:   a90153f3    stp x19, x20, [sp, #16]                                       
    40026fdc:   aa0003f4    mov x20, x0                                                   
    40026fe0:   aa0103f3    mov x19, x1                                                   
  if (rtems_rfs_buffer_handle_has_block (handle))                                         
    40026fe4:   f9400420    ldr x0, [x1, #8]                                              
{                                                                                         
    40026fe8:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40026fec:   2a0203f5    mov w21, w2                                                   
    40026ff0:   f9001bf7    str x23, [sp, #48]                                            
    40026ff4:   12001c77    and w23, w3, #0xff                                            
  if (rtems_rfs_buffer_handle_has_block (handle))                                         
    40026ff8:   b4000260    cbz x0, 40027044 <rtems_rfs_buffer_handle_request+0x74>       
    if (block && (rtems_rfs_buffer_bnum (handle) == block))                               
    40026ffc:   34000082    cbz w2, 4002700c <rtems_rfs_buffer_handle_request+0x3c>       <== NEVER TAKEN
    40027000:   b9400420    ldr w0, [x1, #4]                                              
    40027004:   6b02001f    cmp w0, w2                                                    
    40027008:   54000d60    b.eq    400271b4 <rtems_rfs_buffer_handle_request+0x1e4>  // b.none
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_HANDLE_REQUEST))                          
    4002700c:   d2802000    mov x0, #0x100                  // #256                       
    40027010:   94000e90    bl  4002aa50 <rtems_rfs_trace>                                
    40027014:   72001c1f    tst w0, #0xff                                                 
    40027018:   54000c01    b.ne    40027198 <rtems_rfs_buffer_handle_request+0x1c8>  // b.any<== NEVER TAKEN
  if (rtems_rfs_buffer_handle_has_block (handle))                                         
    4002701c:   f9400660    ldr x0, [x19, #8]                                             
    40027020:   b40000e0    cbz x0, 4002703c <rtems_rfs_buffer_handle_request+0x6c>       <== NEVER TAKEN
    40027024:   aa1303e1    mov x1, x19                                                   
    40027028:   aa1403e0    mov x0, x20                                                   
    4002702c:   97ffff61    bl  40026db0 <rtems_rfs_buffer_handle_release.part.0>         
    40027030:   2a0003f6    mov w22, w0                                                   
    if (rc > 0)                                                                           
    40027034:   7100001f    cmp w0, #0x0                                                  
    40027038:   540005cc    b.gt    400270f0 <rtems_rfs_buffer_handle_request+0x120>      <== NEVER TAKEN
    handle->dirty = false;                                                                
    4002703c:   3900027f    strb    wzr, [x19]                                            
    handle->bnum = 0;                                                                     
    40027040:   b900067f    str wzr, [x19, #4]                                            
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_HANDLE_REQUEST))                            
    40027044:   d2802000    mov x0, #0x100                  // #256                       
    40027048:   94000e82    bl  4002aa50 <rtems_rfs_trace>                                
    4002704c:   72001c1f    tst w0, #0xff                                                 
    40027050:   54000961    b.ne    4002717c <rtems_rfs_buffer_handle_request+0x1ac>  // b.any<== NEVER TAKEN
  if (fs->buffers_count)                                                                  
    40027054:   b9409a80    ldr w0, [x20, #152]                                           
    40027058:   35000700    cbnz    w0, 40027138 <rtems_rfs_buffer_handle_request+0x168>  
  if (!rtems_rfs_fs_no_local_cache (fs) &&                                                
    4002705c:   b9400280    ldr w0, [x20]                                                 
      !rtems_rfs_buffer_handle_has_block (handle))                                        
    40027060:   f9400661    ldr x1, [x19, #8]                                             
  if (!rtems_rfs_fs_no_local_cache (fs) &&                                                
    40027064:   37080520    tbnz    w0, #1, 40027108 <rtems_rfs_buffer_handle_request+0x138>
    40027068:   b4000b81    cbz x1, 400271d8 <rtems_rfs_buffer_handle_request+0x208>      
  rtems_rfs_buffer_refs_up (handle);                                                      
    4002706c:   b9405424    ldr w4, [x1, #84]                                             
  old_last = tail->previous;                                                              
    40027070:   91022280    add x0, x20, #0x88                                            
  fs->buffers_count++;                                                                    
    40027074:   b9409a83    ldr w3, [x20, #152]                                           
  handle->buffer->user = (void*) ((intptr_t) block);                                      
    40027078:   2a1503e2    mov w2, w21                                                   
  rtems_rfs_buffer_refs_up (handle);                                                      
    4002707c:   11000484    add w4, w4, #0x1                                              
    40027080:   b9005424    str w4, [x1, #84]                                             
    40027084:   f9404a84    ldr x4, [x20, #144]                                           
  the_node->next = tail;                                                                  
    40027088:   f9000020    str x0, [x1]                                                  
  tail->previous = the_node;                                                              
    4002708c:   f9004a81    str x1, [x20, #144]                                           
  fs->buffers_count++;                                                                    
    40027090:   11000463    add w3, w3, #0x1                                              
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_HANDLE_REQUEST))                            
    40027094:   d2802000    mov x0, #0x100                  // #256                       
  old_last->next = the_node;                                                              
    40027098:   f9000081    str x1, [x4]                                                  
  the_node->previous = old_last;                                                          
    4002709c:   f9000424    str x4, [x1, #8]                                              
  fs->buffers_count++;                                                                    
    400270a0:   b9009a83    str w3, [x20, #152]                                           
  handle->buffer->user = (void*) ((intptr_t) block);                                      
    400270a4:   f9002c22    str x2, [x1, #88]                                             
  handle->bnum = block;                                                                   
    400270a8:   b9000675    str w21, [x19, #4]                                            
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_HANDLE_REQUEST))                            
    400270ac:   94000e69    bl  4002aa50 <rtems_rfs_trace>                                
    400270b0:   72001c1f    tst w0, #0xff                                                 
    400270b4:   54000800    b.eq    400271b4 <rtems_rfs_buffer_handle_request+0x1e4>  // b.none<== ALWAYS TAKEN
            block, read ? "read" : "get", handle->buffer->block,                          
    400270b8:   f9400664    ldr x4, [x19, #8]                                             <== NOT EXECUTED
    printf ("rtems-rfs: buffer-request: block=%" PRIu32 " bdbuf-%s=%" PRIu32 " refs=%d\n",
    400270bc:   710002ff    cmp w23, #0x0                                                 <== NOT EXECUTED
    400270c0:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    400270c4:   912be000    add x0, x0, #0xaf8                                            <== NOT EXECUTED
    400270c8:   b0000102    adrp    x2, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    400270cc:   912bc042    add x2, x2, #0xaf0                                            <== NOT EXECUTED
    400270d0:   b9403083    ldr w3, [x4, #48]                                             <== NOT EXECUTED
    400270d4:   9a801042    csel    x2, x2, x0, ne  // ne = any                           <== NOT EXECUTED
    400270d8:   b9405484    ldr w4, [x4, #84]                                             <== NOT EXECUTED
    400270dc:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    400270e0:   2a1503e1    mov w1, w21                                                   <== NOT EXECUTED
    400270e4:   912f4000    add x0, x0, #0xbd0                                            <== NOT EXECUTED
  return 0;                                                                               
    400270e8:   52800016    mov w22, #0x0                       // #0                     <== NOT EXECUTED
    printf ("rtems-rfs: buffer-request: block=%" PRIu32 " bdbuf-%s=%" PRIu32 " refs=%d\n",
    400270ec:   97ffecc9    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
}                                                                                         
    400270f0:   2a1603e0    mov w0, w22                                                   <== NOT EXECUTED
    400270f4:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    400270f8:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    400270fc:   f9401bf7    ldr x23, [sp, #48]                                            <== NOT EXECUTED
    40027100:   a8c57bfd    ldp x29, x30, [sp], #80                                       <== NOT EXECUTED
    40027104:   d65f03c0    ret                                                           <== NOT EXECUTED
  if (!rtems_rfs_buffer_handle_has_block (handle))                                        
    40027108:   b5fffb21    cbnz    x1, 4002706c <rtems_rfs_buffer_handle_request+0x9c>   <== NEVER TAKEN
    rc = rtems_rfs_buffer_io_request (fs, block, read, &handle->buffer);                  
    4002710c:   91002263    add x3, x19, #0x8                                             
    40027110:   2a1703e2    mov w2, w23                                                   
    40027114:   2a1503e1    mov w1, w21                                                   
    40027118:   aa1403e0    mov x0, x20                                                   
    4002711c:   940035f5    bl  400348f0 <rtems_rfs_buffer_bdbuf_request>                 
    40027120:   2a0003f6    mov w22, w0                                                   
    if (rc > 0)                                                                           
    40027124:   7100001f    cmp w0, #0x0                                                  
    40027128:   5400076c    b.gt    40027214 <rtems_rfs_buffer_handle_request+0x244>      <== NEVER TAKEN
    rtems_chain_set_off_chain (rtems_rfs_buffer_link(handle));                            
    4002712c:   f9400661    ldr x1, [x19, #8]                                             
  node->next = NULL;                                                                      
    40027130:   f900003f    str xzr, [x1]                                                 
RTEMS_INLINE_ROUTINE void rtems_chain_set_off_chain(                                      
  rtems_chain_node *node                                                                  
)                                                                                         
{                                                                                         
  _Chain_Set_off_chain( node );                                                           
}                                                                                         
    40027134:   17ffffce    b   4002706c <rtems_rfs_buffer_handle_request+0x9c>           
    handle->buffer = rtems_rfs_scan_chain (&fs->buffers,                                  
    40027138:   2a1503e2    mov w2, w21                                                   
    4002713c:   91026281    add x1, x20, #0x98                                            
    40027140:   91020280    add x0, x20, #0x80                                            
    40027144:   97fffea3    bl  40026bd0 <rtems_rfs_scan_chain>                           
    40027148:   f9000660    str x0, [x19, #8]                                             
    if (rtems_rfs_buffer_handle_has_block (handle) &&                                     
    4002714c:   b4000420    cbz x0, 400271d0 <rtems_rfs_buffer_handle_request+0x200>      
        rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_HANDLE_REQUEST))                          
    40027150:   d2802000    mov x0, #0x100                  // #256                       
    40027154:   94000e3f    bl  4002aa50 <rtems_rfs_trace>                                
    if (rtems_rfs_buffer_handle_has_block (handle) &&                                     
    40027158:   72001c1f    tst w0, #0xff                                                 
    4002715c:   54fff800    b.eq    4002705c <rtems_rfs_buffer_handle_request+0x8c>  // b.none<== ALWAYS TAKEN
              rtems_rfs_buffer_refs (handle) + 1);                                        
    40027160:   f9400661    ldr x1, [x19, #8]                                             <== NOT EXECUTED
      printf ("rtems-rfs: buffer-request: buffer shared: refs: %d\n",                     
    40027164:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40027168:   912d8000    add x0, x0, #0xb60                                            <== NOT EXECUTED
    4002716c:   b9405421    ldr w1, [x1, #84]                                             <== NOT EXECUTED
    40027170:   11000421    add w1, w1, #0x1                                              <== NOT EXECUTED
    40027174:   97ffeca7    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40027178:   17ffffb9    b   4002705c <rtems_rfs_buffer_handle_request+0x8c>           <== NOT EXECUTED
    printf ("rtems-rfs: buffer-request: block=%" PRIu32 "\n", block);                     
    4002717c:   2a1503e1    mov w1, w21                                                   <== NOT EXECUTED
    40027180:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40027184:   912ce000    add x0, x0, #0xb38                                            <== NOT EXECUTED
    40027188:   97ffeca2    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  if (fs->buffers_count)                                                                  
    4002718c:   b9409a80    ldr w0, [x20, #152]                                           <== NOT EXECUTED
    40027190:   34fff660    cbz w0, 4002705c <rtems_rfs_buffer_handle_request+0x8c>       <== NOT EXECUTED
    40027194:   17ffffe9    b   40027138 <rtems_rfs_buffer_handle_request+0x168>          <== NOT EXECUTED
      printf ("rtems-rfs: buffer-request: handle has buffer: %" PRIu32 "\n",              
    40027198:   b9400661    ldr w1, [x19, #4]                                             <== NOT EXECUTED
    4002719c:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    400271a0:   912c0000    add x0, x0, #0xb00                                            <== NOT EXECUTED
    400271a4:   97ffec9b    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  if (rtems_rfs_buffer_handle_has_block (handle))                                         
    400271a8:   f9400660    ldr x0, [x19, #8]                                             <== NOT EXECUTED
    400271ac:   b5fff3c0    cbnz    x0, 40027024 <rtems_rfs_buffer_handle_request+0x54>   <== NOT EXECUTED
    400271b0:   17ffffa3    b   4002703c <rtems_rfs_buffer_handle_request+0x6c>           <== NOT EXECUTED
      return 0;                                                                           
    400271b4:   52800016    mov w22, #0x0                       // #0                     
}                                                                                         
    400271b8:   2a1603e0    mov w0, w22                                                   
    400271bc:   a94153f3    ldp x19, x20, [sp, #16]                                       
    400271c0:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    400271c4:   f9401bf7    ldr x23, [sp, #48]                                            
    400271c8:   a8c57bfd    ldp x29, x30, [sp], #80                                       
    400271cc:   d65f03c0    ret                                                           
  if (!rtems_rfs_fs_no_local_cache (fs) &&                                                
    400271d0:   b9400280    ldr w0, [x20]                                                 
    400271d4:   370ff9c0    tbnz    w0, #1, 4002710c <rtems_rfs_buffer_handle_request+0x13c>
    if (fs->release_count)                                                                
    400271d8:   b940ba80    ldr w0, [x20, #184]                                           
    400271dc:   35000440    cbnz    w0, 40027264 <rtems_rfs_buffer_handle_request+0x294>  
    if (!rtems_rfs_buffer_handle_has_block (handle) &&                                    
    400271e0:   b940da80    ldr w0, [x20, #216]                                           
    400271e4:   34fff940    cbz w0, 4002710c <rtems_rfs_buffer_handle_request+0x13c>      
      handle->buffer = rtems_rfs_scan_chain (&fs->release_modified,                       
    400271e8:   91036281    add x1, x20, #0xd8                                            
    400271ec:   2a1503e2    mov w2, w21                                                   
    400271f0:   91030280    add x0, x20, #0xc0                                            
    400271f4:   97fffe77    bl  40026bd0 <rtems_rfs_scan_chain>                           
    400271f8:   f9000660    str x0, [x19, #8]                                             
    400271fc:   aa0003e1    mov x1, x0                                                    
    40027200:   f90027e0    str x0, [sp, #72]                                             
      if (rtems_rfs_buffer_handle_has_block (handle))                                     
    40027204:   b4fff840    cbz x0, 4002710c <rtems_rfs_buffer_handle_request+0x13c>      
        rtems_rfs_buffer_mark_dirty (handle);                                             
    40027208:   52800020    mov w0, #0x1                    // #1                         
    4002720c:   39000260    strb    w0, [x19]                                             
    40027210:   17ffff97    b   4002706c <rtems_rfs_buffer_handle_request+0x9c>           
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_HANDLE_REQUEST))                        
    40027214:   d2802000    mov x0, #0x100                  // #256                       <== NOT EXECUTED
    40027218:   94000e0e    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    4002721c:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40027220:   54fff680    b.eq    400270f0 <rtems_rfs_buffer_handle_request+0x120>  // b.none<== NOT EXECUTED
        printf ("rtems-rfs: buffer-request: block=%" PRIu32 ": bdbuf-%s: %d: %s\n",       
    40027224:   710002ff    cmp w23, #0x0                                                 <== NOT EXECUTED
    40027228:   b0000101    adrp    x1, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    4002722c:   912be021    add x1, x1, #0xaf8                                            <== NOT EXECUTED
    40027230:   b0000113    adrp    x19, 40048000 <_Scheduler_Table+0x60>                 <== NOT EXECUTED
    40027234:   912bc273    add x19, x19, #0xaf0                                          <== NOT EXECUTED
    40027238:   2a1603e0    mov w0, w22                                                   <== NOT EXECUTED
    4002723c:   9a811273    csel    x19, x19, x1, ne  // ne = any                         <== NOT EXECUTED
    40027240:   94005e77    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40027244:   aa0003e4    mov x4, x0                                                    <== NOT EXECUTED
    40027248:   aa1303e2    mov x2, x19                                                   <== NOT EXECUTED
    4002724c:   2a1503e1    mov w1, w21                                                   <== NOT EXECUTED
    40027250:   2a1603e3    mov w3, w22                                                   <== NOT EXECUTED
    40027254:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40027258:   912e6000    add x0, x0, #0xb98                                            <== NOT EXECUTED
    4002725c:   97ffec6d    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40027260:   17ffffa4    b   400270f0 <rtems_rfs_buffer_handle_request+0x120>          <== NOT EXECUTED
      handle->buffer = rtems_rfs_scan_chain (&fs->release,                                
    40027264:   9102e281    add x1, x20, #0xb8                                            
    40027268:   2a1503e2    mov w2, w21                                                   
    4002726c:   91028280    add x0, x20, #0xa0                                            
    40027270:   97fffe58    bl  40026bd0 <rtems_rfs_scan_chain>                           
    40027274:   f9000660    str x0, [x19, #8]                                             
    40027278:   aa0003e1    mov x1, x0                                                    
    if (!rtems_rfs_buffer_handle_has_block (handle) &&                                    
    4002727c:   b5ffef80    cbnz    x0, 4002706c <rtems_rfs_buffer_handle_request+0x9c>   
    40027280:   17ffffd8    b   400271e0 <rtems_rfs_buffer_handle_request+0x210>          
    ...                                                                                   
                                                                                          

00000000400272b0 <rtems_rfs_buffer_open>: {
    400272b0:   a9b67bfd    stp x29, x30, [sp, #-160]!                                    
    400272b4:   910003fd    mov x29, sp                                                   
    400272b8:   a90153f3    stp x19, x20, [sp, #16]                                       
    400272bc:   aa0003f4    mov x20, x0                                                   
    400272c0:   aa0103f3    mov x19, x1                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SYNC))                                      
    400272c4:   d2800400    mov x0, #0x20                   // #32                        
{                                                                                         
    400272c8:   f90013f5    str x21, [sp, #32]                                            
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SYNC))                                      
    400272cc:   94000de1    bl  4002aa50 <rtems_rfs_trace>                                
    400272d0:   72001c1f    tst w0, #0xff                                                 
    400272d4:   540004e1    b.ne    40027370 <rtems_rfs_buffer_open+0xc0>  // b.any       <== NEVER TAKEN
  fs->device = open (name, O_RDWR);                                                       
    400272d8:   aa1403e0    mov x0, x20                                                   
    400272dc:   52800041    mov w1, #0x2                    // #2                         
    400272e0:   94002e84    bl  40032cf0 <open>                                           
    400272e4:   b9001a60    str w0, [x19, #24]                                            
  if (fs->device < 0)                                                                     
    400272e8:   37f80560    tbnz    w0, #31, 40027394 <rtems_rfs_buffer_open+0xe4>        <== NEVER TAKEN
  if (fstat (fs->device, &st) < 0)                                                        
    400272ec:   9100e3e1    add x1, sp, #0x38                                             
    400272f0:   94002d40    bl  400327f0 <fstat>                                          
    400272f4:   37f80940    tbnz    w0, #31, 4002741c <rtems_rfs_buffer_open+0x16c>       <== NEVER TAKEN
  if (!S_ISBLK (st.st_mode))                                                              
    400272f8:   b9404be0    ldr w0, [sp, #72]                                             
    400272fc:   12140c00    and w0, w0, #0xf000                                           
    40027300:   7140181f    cmp w0, #0x6, lsl #12                                         
    40027304:   54000221    b.ne    40027348 <rtems_rfs_buffer_open+0x98>  // b.any       <== NEVER TAKEN
static inline int rtems_disk_fd_get_disk_device(                                          
  int fd,                                                                                 
  rtems_disk_device **dd_ptr                                                              
)                                                                                         
{                                                                                         
  return ioctl(fd, RTEMS_BLKIO_GETDISKDEV, dd_ptr);                                       
    40027308:   b9401a60    ldr w0, [x19, #24]                                            
    4002730c:   91008262    add x2, x19, #0x20                                            
    40027310:   d2884121    mov x1, #0x4209                 // #16905                     
    40027314:   f2a80101    movk    x1, #0x4008, lsl #16                                  
    40027318:   94002d96    bl  40032970 <ioctl>                                          
    4002731c:   2a0003f5    mov w21, w0                                                   
  if (rv != 0)                                                                            
    40027320:   350006c0    cbnz    w0, 400273f8 <rtems_rfs_buffer_open+0x148>            <== NEVER TAKEN
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SYNC))                                      
    40027324:   d2800400    mov x0, #0x20                   // #32                        
    40027328:   94000dca    bl  4002aa50 <rtems_rfs_trace>                                
    4002732c:   72001c1f    tst w0, #0xff                                                 
    40027330:   54000501    b.ne    400273d0 <rtems_rfs_buffer_open+0x120>  // b.any      <== NEVER TAKEN
}                                                                                         
    40027334:   2a1503e0    mov w0, w21                                                   
    40027338:   a94153f3    ldp x19, x20, [sp, #16]                                       
    4002733c:   f94013f5    ldr x21, [sp, #32]                                            
    40027340:   a8ca7bfd    ldp x29, x30, [sp], #160                                      
    40027344:   d65f03c0    ret                                                           
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_OPEN))                                    
    40027348:   d2800100    mov x0, #0x8                    // #8                         <== NOT EXECUTED
    4002734c:   94000dc1    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40027350:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40027354:   54000321    b.ne    400273b8 <rtems_rfs_buffer_open+0x108>  // b.any      <== NOT EXECUTED
    return ENXIO;                                                                         
    40027358:   528000d5    mov w21, #0x6                       // #6                     <== NOT EXECUTED
}                                                                                         
    4002735c:   2a1503e0    mov w0, w21                                                   <== NOT EXECUTED
    40027360:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40027364:   f94013f5    ldr x21, [sp, #32]                                            <== NOT EXECUTED
    40027368:   a8ca7bfd    ldp x29, x30, [sp], #160                                      <== NOT EXECUTED
    4002736c:   d65f03c0    ret                                                           <== NOT EXECUTED
    printf ("rtems-rfs: buffer-open: opening: %s\n", name);                               
    40027370:   aa1403e1    mov x1, x20                                                   <== NOT EXECUTED
    40027374:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40027378:   91304000    add x0, x0, #0xc10                                            <== NOT EXECUTED
    4002737c:   97ffec25    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  fs->device = open (name, O_RDWR);                                                       
    40027380:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40027384:   52800041    mov w1, #0x2                    // #2                         <== NOT EXECUTED
    40027388:   94002e5a    bl  40032cf0 <open>                                           <== NOT EXECUTED
    4002738c:   b9001a60    str w0, [x19, #24]                                            <== NOT EXECUTED
  if (fs->device < 0)                                                                     
    40027390:   36fffae0    tbz w0, #31, 400272ec <rtems_rfs_buffer_open+0x3c>            <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_OPEN))                                    
    40027394:   d2800100    mov x0, #0x8                    // #8                         <== NOT EXECUTED
    40027398:   94000dae    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    4002739c:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400273a0:   54fffdc0    b.eq    40027358 <rtems_rfs_buffer_open+0xa8>  // b.none      <== NOT EXECUTED
      printf ("rtems-rfs: buffer-open: cannot open file\n");                              
    400273a4:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    400273a8:   9130e000    add x0, x0, #0xc38                                            <== NOT EXECUTED
    return ENXIO;                                                                         
    400273ac:   528000d5    mov w21, #0x6                       // #6                     <== NOT EXECUTED
      printf ("rtems-rfs: buffer-open: cannot open file\n");                              
    400273b0:   97ffec3c    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
    400273b4:   17ffffe0    b   40027334 <rtems_rfs_buffer_open+0x84>                     <== NOT EXECUTED
      printf ("rtems-rfs: buffer-open: '%s' is not a block device\n", name);              
    400273b8:   aa1403e1    mov x1, x20                                                   <== NOT EXECUTED
    400273bc:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    return ENXIO;                                                                         
    400273c0:   528000d5    mov w21, #0x6                       // #6                     <== NOT EXECUTED
      printf ("rtems-rfs: buffer-open: '%s' is not a block device\n", name);              
    400273c4:   91326000    add x0, x0, #0xc98                                            <== NOT EXECUTED
    400273c8:   97ffec12    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    400273cc:   17ffffda    b   40027334 <rtems_rfs_buffer_open+0x84>                     <== NOT EXECUTED
            rtems_rfs_fs_media_blocks (fs),                                               
    400273d0:   f9401262    ldr x2, [x19, #32]                                            <== NOT EXECUTED
    printf ("rtems-rfs: buffer-open: blks=%" PRId32 ", blk-size=%" PRId32 "\n",           
    400273d4:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    400273d8:   91340000    add x0, x0, #0xd00                                            <== NOT EXECUTED
    400273dc:   29450841    ldp w1, w2, [x2, #40]                                         <== NOT EXECUTED
    400273e0:   97ffec0c    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
}                                                                                         
    400273e4:   2a1503e0    mov w0, w21                                                   <== NOT EXECUTED
    400273e8:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    400273ec:   f94013f5    ldr x21, [sp, #32]                                            <== NOT EXECUTED
    400273f0:   a8ca7bfd    ldp x29, x30, [sp], #160                                      <== NOT EXECUTED
    400273f4:   d65f03c0    ret                                                           <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_OPEN))                                    
    400273f8:   d2800100    mov x0, #0x8                    // #8                         <== NOT EXECUTED
    400273fc:   94000d95    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40027400:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40027404:   54fffaa0    b.eq    40027358 <rtems_rfs_buffer_open+0xa8>  // b.none      <== NOT EXECUTED
      printf ("rtems-rfs: buffer-open: cannot obtain the disk\n");                        
    40027408:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    4002740c:   91334000    add x0, x0, #0xcd0                                            <== NOT EXECUTED
    return ENXIO;                                                                         
    40027410:   528000d5    mov w21, #0x6                       // #6                     <== NOT EXECUTED
      printf ("rtems-rfs: buffer-open: cannot obtain the disk\n");                        
    40027414:   97ffec23    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
    40027418:   17ffffc7    b   40027334 <rtems_rfs_buffer_open+0x84>                     <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_OPEN))                                    
    4002741c:   d2800100    mov x0, #0x8                    // #8                         <== NOT EXECUTED
    40027420:   94000d8c    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40027424:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40027428:   54fff980    b.eq    40027358 <rtems_rfs_buffer_open+0xa8>  // b.none      <== NOT EXECUTED
              name, strerror (errno));                                                    
    4002742c:   94005918    bl  4003d88c <__errno>                                        <== NOT EXECUTED
      printf ("rtems-rfs: buffer-open: stat '%s' failed: %s\n",                           
    40027430:   b9400000    ldr w0, [x0]                                                  <== NOT EXECUTED
    return ENXIO;                                                                         
    40027434:   528000d5    mov w21, #0x6                       // #6                     <== NOT EXECUTED
      printf ("rtems-rfs: buffer-open: stat '%s' failed: %s\n",                           
    40027438:   94005df9    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    4002743c:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40027440:   aa1403e1    mov x1, x20                                                   <== NOT EXECUTED
    40027444:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40027448:   9131a000    add x0, x0, #0xc68                                            <== NOT EXECUTED
    4002744c:   97ffebf1    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40027450:   17ffffb9    b   40027334 <rtems_rfs_buffer_open+0x84>                     <== NOT EXECUTED
    ...                                                                                   
                                                                                          

0000000040027580 <rtems_rfs_buffer_setblksize>: {
    40027580:   a9bd7bfd    stp x29, x30, [sp, #-48]!                                     
    40027584:   910003fd    mov x29, sp                                                   
    40027588:   a90153f3    stp x19, x20, [sp, #16]                                       
    4002758c:   aa0003f3    mov x19, x0                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SETBLKSIZE))                                
    40027590:   d2808000    mov x0, #0x400                  // #1024                      
{                                                                                         
    40027594:   b9002fe1    str w1, [sp, #44]                                             
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SETBLKSIZE))                                
    40027598:   94000d2e    bl  4002aa50 <rtems_rfs_trace>                                
    4002759c:   72001c1f    tst w0, #0xff                                                 
    400275a0:   540007a1    b.ne    40027694 <rtems_rfs_buffer_setblksize+0x114>  // b.any<== NEVER TAKEN
  rc = rtems_rfs_buffers_release (fs);                                                    
    400275a4:   aa1303e0    mov x0, x19                                                   
    400275a8:   97ffffd6    bl  40027500 <rtems_rfs_buffers_release>                      
    400275ac:   2a0003f4    mov w20, w0                                                   
  if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SETBLKSIZE))                    
    400275b0:   7100001f    cmp w0, #0x0                                                  
    400275b4:   5400020c    b.gt    400275f4 <rtems_rfs_buffer_setblksize+0x74>           <== NEVER TAKEN
  rc = rtems_rfs_buffer_sync (fs);                                                        
    400275b8:   aa1303e0    mov x0, x19                                                   
    400275bc:   97ffffa9    bl  40027460 <rtems_rfs_buffer_sync>                          
    400275c0:   2a0003f4    mov w20, w0                                                   
  if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SETBLKSIZE))                    
    400275c4:   7100001f    cmp w0, #0x0                                                  
    400275c8:   5400038c    b.gt    40027638 <rtems_rfs_buffer_setblksize+0xb8>           <== NEVER TAKEN
  rc = fs->disk->ioctl (fs->disk, RTEMS_BLKIO_SETBLKSIZE, &size);                         
    400275cc:   f9401260    ldr x0, [x19, #32]                                            
    400275d0:   52884081    mov w1, #0x4204                 // #16900                     
    400275d4:   72b00081    movk    w1, #0x8004, lsl #16                                  
    400275d8:   9100b3e2    add x2, sp, #0x2c                                             
    400275dc:   f9402403    ldr x3, [x0, #72]                                             
    400275e0:   d63f0060    blr x3                                                        
  if (rc < 0)                                                                             
    400275e4:   37f804e0    tbnz    w0, #31, 40027680 <rtems_rfs_buffer_setblksize+0x100> <== NEVER TAKEN
}                                                                                         
    400275e8:   a94153f3    ldp x19, x20, [sp, #16]                                       
    400275ec:   a8c37bfd    ldp x29, x30, [sp], #48                                       
    400275f0:   d65f03c0    ret                                                           
  if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SETBLKSIZE))                    
    400275f4:   d2808000    mov x0, #0x400                  // #1024                      <== NOT EXECUTED
    400275f8:   94000d16    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400275fc:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40027600:   54fffdc0    b.eq    400275b8 <rtems_rfs_buffer_setblksize+0x38>  // b.none<== NOT EXECUTED
    printf ("rtems-rfs: buffer-setblksize: buffer release failed: %d: %s\n",              
    40027604:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    40027608:   94005d85    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    4002760c:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40027610:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40027614:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40027618:   9137e000    add x0, x0, #0xdf8                                            <== NOT EXECUTED
    4002761c:   97ffeb7d    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  rc = rtems_rfs_buffer_sync (fs);                                                        
    40027620:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    40027624:   97ffff8f    bl  40027460 <rtems_rfs_buffer_sync>                          <== NOT EXECUTED
    40027628:   2a0003f4    mov w20, w0                                                   <== NOT EXECUTED
  if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SETBLKSIZE))                    
    4002762c:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40027630:   54fffced    b.le    400275cc <rtems_rfs_buffer_setblksize+0x4c>           <== NOT EXECUTED
    40027634:   d503201f    nop                                                           <== NOT EXECUTED
    40027638:   d2808000    mov x0, #0x400                  // #1024                      <== NOT EXECUTED
    4002763c:   94000d05    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40027640:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40027644:   54fffc40    b.eq    400275cc <rtems_rfs_buffer_setblksize+0x4c>  // b.none<== NOT EXECUTED
    printf ("rtems-rfs: buffer-setblksize: device sync failed: %d: %s\n",                 
    40027648:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    4002764c:   94005d74    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40027650:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40027654:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40027658:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    4002765c:   9138e000    add x0, x0, #0xe38                                            <== NOT EXECUTED
    40027660:   97ffeb6c    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  rc = fs->disk->ioctl (fs->disk, RTEMS_BLKIO_SETBLKSIZE, &size);                         
    40027664:   f9401260    ldr x0, [x19, #32]                                            <== NOT EXECUTED
    40027668:   52884081    mov w1, #0x4204                 // #16900                     <== NOT EXECUTED
    4002766c:   72b00081    movk    w1, #0x8004, lsl #16                                  <== NOT EXECUTED
    40027670:   9100b3e2    add x2, sp, #0x2c                                             <== NOT EXECUTED
    40027674:   f9402403    ldr x3, [x0, #72]                                             <== NOT EXECUTED
    40027678:   d63f0060    blr x3                                                        <== NOT EXECUTED
  if (rc < 0)                                                                             
    4002767c:   36fffb60    tbz w0, #31, 400275e8 <rtems_rfs_buffer_setblksize+0x68>      <== NOT EXECUTED
    rc = errno;                                                                           
    40027680:   94005883    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    40027684:   b9400000    ldr w0, [x0]                                                  <== NOT EXECUTED
}                                                                                         
    40027688:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    4002768c:   a8c37bfd    ldp x29, x30, [sp], #48                                       <== NOT EXECUTED
    40027690:   d65f03c0    ret                                                           <== NOT EXECUTED
    printf ("rtems-rfs: buffer-setblksize: block size: %" PRIu32 "\n", size);             
    40027694:   b9402fe1    ldr w1, [sp, #44]                                             <== NOT EXECUTED
    40027698:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    4002769c:   91372000    add x0, x0, #0xdc8                                            <== NOT EXECUTED
    400276a0:   97ffeb5c    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    400276a4:   17ffffc0    b   400275a4 <rtems_rfs_buffer_setblksize+0x24>               <== NOT EXECUTED
    ...                                                                                   
                                                                                          

0000000040027460 <rtems_rfs_buffer_sync>: {
    40027460:   a9be7bfd    stp x29, x30, [sp, #-32]!                                     
    40027464:   910003fd    mov x29, sp                                                   
    40027468:   a90153f3    stp x19, x20, [sp, #16]                                       
    4002746c:   aa0003f3    mov x19, x0                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SYNC))                                      
    40027470:   d2800400    mov x0, #0x20                   // #32                        
    40027474:   94000d77    bl  4002aa50 <rtems_rfs_trace>                                
    40027478:   72001c1f    tst w0, #0xff                                                 
    4002747c:   54000141    b.ne    400274a4 <rtems_rfs_buffer_sync+0x44>  // b.any       <== NEVER TAKEN
  sc = rtems_bdbuf_syncdev (rtems_rfs_fs_device (fs));                                    
    40027480:   f9401260    ldr x0, [x19, #32]                                            
  int result = 0;                                                                         
    40027484:   52800014    mov w20, #0x0                       // #0                     
  sc = rtems_bdbuf_syncdev (rtems_rfs_fs_device (fs));                                    
    40027488:   940029ba    bl  40031b70 <rtems_bdbuf_syncdev>                            
    4002748c:   2a0003f3    mov w19, w0                                                   
  if (sc != RTEMS_SUCCESSFUL)                                                             
    40027490:   350001a0    cbnz    w0, 400274c4 <rtems_rfs_buffer_sync+0x64>             <== NEVER TAKEN
}                                                                                         
    40027494:   2a1403e0    mov w0, w20                                                   
    40027498:   a94153f3    ldp x19, x20, [sp, #16]                                       
    4002749c:   a8c27bfd    ldp x29, x30, [sp], #32                                       
    400274a0:   d65f03c0    ret                                                           
    printf ("rtems-rfs: buffer-sync: syncing\n");                                         
    400274a4:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    400274a8:   9134c000    add x0, x0, #0xd30                                            <== NOT EXECUTED
    400274ac:   97ffebfd    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
  int result = 0;                                                                         
    400274b0:   52800014    mov w20, #0x0                       // #0                     <== NOT EXECUTED
  sc = rtems_bdbuf_syncdev (rtems_rfs_fs_device (fs));                                    
    400274b4:   f9401260    ldr x0, [x19, #32]                                            <== NOT EXECUTED
    400274b8:   940029ae    bl  40031b70 <rtems_bdbuf_syncdev>                            <== NOT EXECUTED
    400274bc:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
  if (sc != RTEMS_SUCCESSFUL)                                                             
    400274c0:   34fffea0    cbz w0, 40027494 <rtems_rfs_buffer_sync+0x34>                 <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SYNC))                                    
    400274c4:   d2800400    mov x0, #0x20                   // #32                        <== NOT EXECUTED
    result = EIO;                                                                         
    400274c8:   528000b4    mov w20, #0x5                       // #5                     <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SYNC))                                    
    400274cc:   94000d61    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400274d0:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400274d4:   54fffe00    b.eq    40027494 <rtems_rfs_buffer_sync+0x34>  // b.none      <== NOT EXECUTED
      printf ("rtems-rfs: buffer-sync: device sync failed: %s\n",                         
    400274d8:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    400274dc:   94000d65    bl  4002aa70 <rtems_status_text>                              <== NOT EXECUTED
    400274e0:   b0000102    adrp    x2, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    400274e4:   aa0003e1    mov x1, x0                                                    <== NOT EXECUTED
    400274e8:   91354040    add x0, x2, #0xd50                                            <== NOT EXECUTED
    400274ec:   97ffebc9    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
}                                                                                         
    400274f0:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    400274f4:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    400274f8:   a8c27bfd    ldp x29, x30, [sp], #32                                       <== NOT EXECUTED
    400274fc:   d65f03c0    ret                                                           <== NOT EXECUTED
                                                                                          

0000000040027500 <rtems_rfs_buffers_release>: int rtems_rfs_buffers_release (rtems_rfs_file_system* fs) {
    40027500:   a9be7bfd    stp x29, x30, [sp, #-32]!                                     
    40027504:   910003fd    mov x29, sp                                                   
    40027508:   a90153f3    stp x19, x20, [sp, #16]                                       
    4002750c:   aa0003f3    mov x19, x0                                                   
  int rrc = 0;                                                                            
  int rc;                                                                                 
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_RELEASE))                                   
    40027510:   d2800800    mov x0, #0x40                   // #64                        
    40027514:   94000d4f    bl  4002aa50 <rtems_rfs_trace>                                
    40027518:   72001c1f    tst w0, #0xff                                                 
    4002751c:   54000241    b.ne    40027564 <rtems_rfs_buffers_release+0x64>  // b.any   <== NEVER TAKEN
    printf ("rtems-rfs: buffers-release: active:%" PRIu32 " "                             
            "release:%" PRIu32 " release-modified:%" PRIu32 "\n",                         
            fs->buffers_count, fs->release_count, fs->release_modified_count);            
                                                                                          
  rc = rtems_rfs_release_chain (&fs->release,                                             
    40027520:   9102e261    add x1, x19, #0xb8                                            
    40027524:   52800002    mov w2, #0x0                    // #0                         
    40027528:   91028260    add x0, x19, #0xa0                                            
    4002752c:   97fffdf5    bl  40026d00 <rtems_rfs_release_chain>                        
                                &fs->release_count,                                       
                                false);                                                   
  if ((rc > 0) && (rrc == 0))                                                             
    rrc = rc;                                                                             
  rc = rtems_rfs_release_chain (&fs->release_modified,                                    
    40027530:   91036261    add x1, x19, #0xd8                                            
  rc = rtems_rfs_release_chain (&fs->release,                                             
    40027534:   2a0003f4    mov w20, w0                                                   
  rc = rtems_rfs_release_chain (&fs->release_modified,                                    
    40027538:   52800022    mov w2, #0x1                    // #1                         
    4002753c:   91030260    add x0, x19, #0xc0                                            
    40027540:   97fffdf0    bl  40026d00 <rtems_rfs_release_chain>                        
                                &fs->release_modified_count,                              
                                true);                                                    
  if ((rc > 0) && (rrc == 0))                                                             
    40027544:   7100001f    cmp w0, #0x0                                                  
    40027548:   7a40ca80    ccmp    w20, #0x0, #0x0, gt                                   
    4002754c:   5400006d    b.le    40027558 <rtems_rfs_buffers_release+0x58>             <== NEVER TAKEN
    40027550:   7100029f    cmp w20, #0x0                                                 
    40027554:   1a9fa280    csel    w0, w20, wzr, ge  // ge = tcont                       
    rrc = rc;                                                                             
                                                                                          
  return rrc;                                                                             
}                                                                                         
    40027558:   a94153f3    ldp x19, x20, [sp, #16]                                       
    4002755c:   a8c27bfd    ldp x29, x30, [sp], #32                                       
    40027560:   d65f03c0    ret                                                           
    printf ("rtems-rfs: buffers-release: active:%" PRIu32 " "                             
    40027564:   b9409a61    ldr w1, [x19, #152]                                           <== NOT EXECUTED
    40027568:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    4002756c:   91360000    add x0, x0, #0xd80                                            <== NOT EXECUTED
    40027570:   b940ba62    ldr w2, [x19, #184]                                           <== NOT EXECUTED
    40027574:   b940da63    ldr w3, [x19, #216]                                           <== NOT EXECUTED
    40027578:   97ffeba6    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    4002757c:   17ffffe9    b   40027520 <rtems_rfs_buffers_release+0x20>                 <== NOT EXECUTED
                                                                                          

0000000040034f60 <rtems_rfs_dir_add_entry>: rtems_rfs_dir_add_entry (rtems_rfs_file_system* fs, rtems_rfs_inode_handle* dir, const char* name, size_t length, rtems_rfs_ino ino) {
    40034f60:   a9b17bfd    stp x29, x30, [sp, #-240]!                                    
    40034f64:   910003fd    mov x29, sp                                                   
    40034f68:   a90153f3    stp x19, x20, [sp, #16]                                       
    40034f6c:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40034f70:   aa0103f5    mov x21, x1                                                   
    40034f74:   aa0303f6    mov x22, x3                                                   
    40034f78:   a90363f7    stp x23, x24, [sp, #48]                                       
    40034f7c:   aa0203f7    mov x23, x2                                                   
    40034f80:   2a0403f8    mov w24, w4                                                   
    40034f84:   a9046bf9    stp x25, x26, [sp, #64]                                       
    40034f88:   aa0003fa    mov x26, x0                                                   
  rtems_rfs_block_map     map;                                                            
  rtems_rfs_block_pos     bpos;                                                           
  rtems_rfs_buffer_handle buffer;                                                         
  int                     rc;                                                             
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_ADD_ENTRY))                                    
    40034f8c:   d2a40000    mov x0, #0x20000000             // #536870912                 
    40034f90:   97ffd6b0    bl  4002aa50 <rtems_rfs_trace>                                
    40034f94:   72001c1f    tst w0, #0xff                                                 
    40034f98:   54001481    b.ne    40035228 <rtems_rfs_dir_add_entry+0x2c8>  // b.any    <== NEVER TAKEN
    for (c = 0; c < length; c++)                                                          
      printf ("%c", name[c]);                                                             
    printf (", len=%zd\n", length);                                                       
  }                                                                                       
                                                                                          
  rc = rtems_rfs_block_map_open (fs, dir, &map);                                          
    40034f9c:   aa1503e1    mov x1, x21                                                   
    40034fa0:   910243e2    add x2, sp, #0x90                                             
    40034fa4:   aa1a03e0    mov x0, x26                                                   
    40034fa8:   97fffb56    bl  40033d00 <rtems_rfs_block_map_open>                       
    40034fac:   2a0003f4    mov w20, w0                                                   
  if (rc > 0)                                                                             
    40034fb0:   7100001f    cmp w0, #0x0                                                  
    40034fb4:   5400064c    b.gt    4003507c <rtems_rfs_dir_add_entry+0x11c>              <== NEVER TAKEN
  handle->dirty = false;                                                                  
    40034fb8:   a90573fb    stp x27, x28, [sp, #80]                                       
      int           elength;                                                              
                                                                                          
      elength = rtems_rfs_dir_entry_length (entry);                                       
      eino    = rtems_rfs_dir_entry_ino (entry);                                          
                                                                                          
      if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)                                           
    40034fbc:   529ffffc    mov w28, #0xffff                    // #65535                 
  bpos->boff = 0;                                                                         
    40034fc0:   290e7fff    stp wzr, wzr, [sp, #112]                                      
  bpos->block = 0;                                                                        
    40034fc4:   b9007bff    str wzr, [sp, #120]                                           
    40034fc8:   390203ff    strb    wzr, [sp, #128]                                       
  handle->bnum  = 0;                                                                      
    40034fcc:   b90087ff    str wzr, [sp, #132]                                           
  handle->buffer = NULL;                                                                  
    40034fd0:   f90047ff    str xzr, [sp, #136]                                           
    rc = rtems_rfs_block_map_find (fs, &map, &bpos, &block);                              
    40034fd4:   9101b3e3    add x3, sp, #0x6c                                             
    40034fd8:   9101c3e2    add x2, sp, #0x70                                             
    40034fdc:   910243e1    add x1, sp, #0x90                                             
    40034fe0:   aa1a03e0    mov x0, x26                                                   
    40034fe4:   97fffc23    bl  40034070 <rtems_rfs_block_map_find>                       
    40034fe8:   2a0003f4    mov w20, w0                                                   
    if (rc > 0)                                                                           
    40034fec:   7100001f    cmp w0, #0x0                                                  
    40034ff0:   540013ed    b.le    4003526c <rtems_rfs_dir_add_entry+0x30c>              
      if (rc != ENXIO)                                                                    
    40034ff4:   7100181f    cmp w0, #0x6                                                  
    40034ff8:   54001801    b.ne    400352f8 <rtems_rfs_dir_add_entry+0x398>  // b.any    <== NEVER TAKEN
      rc = rtems_rfs_block_map_grow (fs, &map, 1, &block);                                
    40034ffc:   9101b3e3    add x3, sp, #0x6c                                             
    40035000:   910243e1    add x1, sp, #0x90                                             
    40035004:   aa1a03e0    mov x0, x26                                                   
    40035008:   d2800022    mov x2, #0x1                    // #1                         
    4003500c:   97fffc89    bl  40034230 <rtems_rfs_block_map_grow>                       
    40035010:   2a0003f4    mov w20, w0                                                   
      if (rc > 0)                                                                         
    40035014:   7100001f    cmp w0, #0x0                                                  
    40035018:   5400154c    b.gt    400352c0 <rtems_rfs_dir_add_entry+0x360>              <== NEVER TAKEN
    bpos.bno++;                                                                           
    4003501c:   294d93e2    ldp w2, w4, [sp, #108]                                        
    rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, read);                      
    40035020:   910203e1    add x1, sp, #0x80                                             
    40035024:   aa1a03e0    mov x0, x26                                                   
    40035028:   52800003    mov w3, #0x0                    // #0                         
    bpos.bno++;                                                                           
    4003502c:   11000484    add w4, w4, #0x1                                              
    40035030:   b90073e4    str w4, [sp, #112]                                            
    rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, read);                      
    40035034:   97ffc7e7    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
    40035038:   2a0003f4    mov w20, w0                                                   
    if (rc > 0)                                                                           
    4003503c:   7100001f    cmp w0, #0x0                                                  
    40035040:   540002cd    b.le    40035098 <rtems_rfs_dir_add_entry+0x138>              <== ALWAYS TAKEN
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_ADD_ENTRY))                                
    40035044:   d2a40000    mov x0, #0x20000000             // #536870912                 <== NOT EXECUTED
    40035048:   97ffd682    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    4003504c:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40035050:   54001701    b.ne    40035330 <rtems_rfs_dir_add_entry+0x3d0>  // b.any    <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40035054:   910203e1    add x1, sp, #0x80                                             <== NOT EXECUTED
    40035058:   aa1a03e0    mov x0, x26                                                   <== NOT EXECUTED
    4003505c:   97ffc88d    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40035060:   390203ff    strb    wzr, [sp, #128]                                       <== NOT EXECUTED
      offset += elength;                                                                  
    }                                                                                     
  }                                                                                       
                                                                                          
  rtems_rfs_buffer_handle_close (fs, &buffer);                                            
  rtems_rfs_block_map_close (fs, &map);                                                   
    40035064:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
    40035068:   aa1a03e0    mov x0, x26                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    4003506c:   b90087ff    str wzr, [sp, #132]                                           <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40035070:   f90047ff    str xzr, [sp, #136]                                           <== NOT EXECUTED
    40035074:   97fffb87    bl  40033e90 <rtems_rfs_block_map_close>                      <== NOT EXECUTED
  return rc;                                                                              
    40035078:   a94573fb    ldp x27, x28, [sp, #80]                                       <== NOT EXECUTED
}                                                                                         
    4003507c:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    40035080:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40035084:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40035088:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    4003508c:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    40035090:   a8cf7bfd    ldp x29, x30, [sp], #240                                      <== NOT EXECUTED
    40035094:   d65f03c0    ret                                                           <== NOT EXECUTED
    entry  = rtems_rfs_buffer_data (&buffer);                                             
    40035098:   f94047e0    ldr x0, [sp, #136]                                            
      memset (entry, 0xff, rtems_rfs_fs_block_size (fs));                                 
    4003509c:   52801fe1    mov w1, #0xff                   // #255                       
    400350a0:   f9400b42    ldr x2, [x26, #16]                                            
    entry  = rtems_rfs_buffer_data (&buffer);                                             
    400350a4:   f9401c13    ldr x19, [x0, #56]                                            
      memset (entry, 0xff, rtems_rfs_fs_block_size (fs));                                 
    400350a8:   aa1303e0    mov x0, x19                                                   
    400350ac:   940023c0    bl  4003dfac <memset>                                         
    while (offset < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))            
    400350b0:   f9400b47    ldr x7, [x26, #16]                                            
    400350b4:   f10028e6    subs    x6, x7, #0xa                                          
    400350b8:   54fff8e0    b.eq    40034fd4 <rtems_rfs_dir_add_entry+0x74>  // b.none    <== NEVER TAKEN
    offset = 0;                                                                           
    400350bc:   5280001b    mov w27, #0x0                       // #0                     
    while (offset < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))            
    400350c0:   d2800004    mov x4, #0x0                    // #0                         
    400350c4:   1400000f    b   40035100 <rtems_rfs_dir_add_entry+0x1a0>                  
      if (rtems_rfs_dir_entry_valid (fs, elength, eino))                                  
    400350c8:   71002b3f    cmp w25, #0xa                                                 
    400350cc:   5400082d    b.le    400351d0 <rtems_rfs_dir_add_entry+0x270>              <== NEVER TAKEN
    400350d0:   b9403340    ldr w0, [x26, #48]                                            
      entry  += elength;                                                                  
    400350d4:   8b252273    add x19, x19, w5, uxth                                        
      if (rtems_rfs_dir_entry_valid (fs, elength, eino))                                  
    400350d8:   6b19001f    cmp w0, w25                                                   
    400350dc:   540007a9    b.ls    400351d0 <rtems_rfs_dir_add_entry+0x270>  // b.plast  <== NEVER TAKEN
    400350e0:   34000794    cbz w20, 400351d0 <rtems_rfs_dir_add_entry+0x270>             <== NEVER TAKEN
    400350e4:   b9402b40    ldr w0, [x26, #40]                                            
    400350e8:   6b14001f    cmp w0, w20                                                   
    400350ec:   54000723    b.cc    400351d0 <rtems_rfs_dir_add_entry+0x270>  // b.lo, b.ul, b.last<== NEVER TAKEN
      offset += elength;                                                                  
    400350f0:   0b19037b    add w27, w27, w25                                             
    while (offset < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))            
    400350f4:   93407f64    sxtw    x4, w27                                               
    400350f8:   eb0400df    cmp x6, x4                                                    
    400350fc:   54fff6c9    b.ls    40034fd4 <rtems_rfs_dir_add_entry+0x74>  // b.plast   <== NEVER TAKEN
      entry  += elength;                                                                  
    40035100:   39402262    ldrb    w2, [x19, #8]                                         
    40035104:   39402665    ldrb    w5, [x19, #9]                                         
    40035108:   39400260    ldrb    w0, [x19]                                             
    4003510c:   39400661    ldrb    w1, [x19, #1]                                         
    40035110:   39400a63    ldrb    w3, [x19, #2]                                         
    40035114:   aa052045    orr x5, x2, x5, lsl #8                                        
    40035118:   39400e74    ldrb    w20, [x19, #3]                                        
    4003511c:   5ac004a5    rev16   w5, w5                                                
    40035120:   aa012001    orr x1, x0, x1, lsl #8                                        
    40035124:   12003cb9    and w25, w5, #0xffff                                          
      eino    = rtems_rfs_dir_entry_ino (entry);                                          
    40035128:   aa034023    orr x3, x1, x3, lsl #16                                       
      if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)                                           
    4003512c:   6b1c033f    cmp w25, w28                                                  
    40035130:   aa146074    orr x20, x3, x20, lsl #24                                     
    40035134:   5ac00a94    rev w20, w20                                                  
    40035138:   54fffc81    b.ne    400350c8 <rtems_rfs_dir_add_entry+0x168>  // b.any    
            (rtems_rfs_fs_block_size (fs) - offset))                                      
    4003513c:   cb0400e4    sub x4, x7, x4                                                
        if ((length + RTEMS_RFS_DIR_ENTRY_SIZE) <                                         
    40035140:   91002ac0    add x0, x22, #0xa                                             
    40035144:   eb04001f    cmp x0, x4                                                    
    40035148:   54fff462    b.cs    40034fd4 <rtems_rfs_dir_add_entry+0x74>  // b.hs, b.nlast<== NEVER TAKEN
          hash = rtems_rfs_dir_hash (name, length);                                       
    4003514c:   aa1603e1    mov x1, x22                                                   
    40035150:   aa1703e0    mov x0, x23                                                   
    40035154:   940002eb    bl  40035d00 <rtems_rfs_dir_hash>                             
    40035158:   2a0003e3    mov w3, w0                                                    
          rtems_rfs_dir_set_entry_length (entry,                                          
    4003515c:   11002ac4    add w4, w22, #0xa                                             
          rtems_rfs_dir_set_entry_hash (entry, hash);                                     
    40035160:   53187c08    lsr w8, w0, #24                                               
    40035164:   53107c07    lsr w7, w0, #16                                               
    40035168:   53087c06    lsr w6, w0, #8                                                
          rtems_rfs_dir_set_entry_length (entry,                                          
    4003516c:   d3483c85    ubfx    x5, x4, #8, #8                                        
          rtems_rfs_dir_set_entry_ino (entry, ino);                                       
    40035170:   53087f09    lsr w9, w24, #8                                               
    40035174:   53187f01    lsr w1, w24, #24                                              
    40035178:   53107f00    lsr w0, w24, #16                                              
    4003517c:   39000261    strb    w1, [x19]                                             
          memcpy (entry + RTEMS_RFS_DIR_ENTRY_SIZE, name, length);                        
    40035180:   aa1603e2    mov x2, x22                                                   
          rtems_rfs_dir_set_entry_ino (entry, ino);                                       
    40035184:   39000660    strb    w0, [x19, #1]                                         
          memcpy (entry + RTEMS_RFS_DIR_ENTRY_SIZE, name, length);                        
    40035188:   aa1703e1    mov x1, x23                                                   
          rtems_rfs_dir_set_entry_ino (entry, ino);                                       
    4003518c:   39000a69    strb    w9, [x19, #2]                                         
          memcpy (entry + RTEMS_RFS_DIR_ENTRY_SIZE, name, length);                        
    40035190:   91002a60    add x0, x19, #0xa                                             
          rtems_rfs_dir_set_entry_ino (entry, ino);                                       
    40035194:   39000e78    strb    w24, [x19, #3]                                        
          return 0;                                                                       
    40035198:   52800014    mov w20, #0x0                       // #0                     
          rtems_rfs_dir_set_entry_hash (entry, hash);                                     
    4003519c:   39001268    strb    w8, [x19, #4]                                         
    400351a0:   39001667    strb    w7, [x19, #5]                                         
    400351a4:   39001a66    strb    w6, [x19, #6]                                         
    400351a8:   39001e63    strb    w3, [x19, #7]                                         
          rtems_rfs_dir_set_entry_length (entry,                                          
    400351ac:   39002265    strb    w5, [x19, #8]                                         
    400351b0:   39002664    strb    w4, [x19, #9]                                         
          memcpy (entry + RTEMS_RFS_DIR_ENTRY_SIZE, name, length);                        
    400351b4:   94002328    bl  4003de54 <memcpy>                                         
          rtems_rfs_buffer_mark_dirty (&buffer);                                          
    400351b8:   52800022    mov w2, #0x1                    // #1                         
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    400351bc:   910203e1    add x1, sp, #0x80                                             
    400351c0:   aa1a03e0    mov x0, x26                                                   
    400351c4:   390203e2    strb    w2, [sp, #128]                                        
    400351c8:   97ffc832    bl  40027290 <rtems_rfs_buffer_handle_release>                
  handle->dirty = false;                                                                  
    400351cc:   14000009    b   400351f0 <rtems_rfs_dir_add_entry+0x290>                  
        if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_ADD_ENTRY))                              
    400351d0:   d2a40000    mov x0, #0x20000000             // #536870912                 <== NOT EXECUTED
    400351d4:   97ffd61f    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400351d8:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400351dc:   54000621    b.ne    400352a0 <rtems_rfs_dir_add_entry+0x340>  // b.any    <== NOT EXECUTED
        return EIO;                                                                       
    400351e0:   528000b4    mov w20, #0x5                       // #5                     <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    400351e4:   910203e1    add x1, sp, #0x80                                             <== NOT EXECUTED
    400351e8:   aa1a03e0    mov x0, x26                                                   <== NOT EXECUTED
    400351ec:   97ffc829    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
        rtems_rfs_block_map_close (fs, &map);                                             
    400351f0:   910243e1    add x1, sp, #0x90                                             
    400351f4:   aa1a03e0    mov x0, x26                                                   
  handle->dirty = false;                                                                  
    400351f8:   390203ff    strb    wzr, [sp, #128]                                       
  handle->bnum  = 0;                                                                      
    400351fc:   b90087ff    str wzr, [sp, #132]                                           
  handle->buffer = NULL;                                                                  
    40035200:   f90047ff    str xzr, [sp, #136]                                           
    40035204:   97fffb23    bl  40033e90 <rtems_rfs_block_map_close>                      
}                                                                                         
    40035208:   2a1403e0    mov w0, w20                                                   
    4003520c:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40035210:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40035214:   a94363f7    ldp x23, x24, [sp, #48]                                       
    40035218:   a9446bf9    ldp x25, x26, [sp, #64]                                       
        return EIO;                                                                       
    4003521c:   a94573fb    ldp x27, x28, [sp, #80]                                       
}                                                                                         
    40035220:   a8cf7bfd    ldp x29, x30, [sp], #240                                      
    40035224:   d65f03c0    ret                                                           
    printf ("rtems-rfs: dir-add-entry: dir=%" PRId32 ", name=",                           
    40035228:   b94012a1    ldr w1, [x21, #16]                                            <== NOT EXECUTED
    4003522c:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40035230:   91220000    add x0, x0, #0x880                                            <== NOT EXECUTED
    40035234:   97ffb477    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    for (c = 0; c < length; c++)                                                          
    40035238:   b4000116    cbz x22, 40035258 <rtems_rfs_dir_add_entry+0x2f8>             <== NOT EXECUTED
    4003523c:   aa1703f3    mov x19, x23                                                  <== NOT EXECUTED
    40035240:   8b1602f4    add x20, x23, x22                                             <== NOT EXECUTED
    40035244:   d503201f    nop                                                           <== NOT EXECUTED
      printf ("%c", name[c]);                                                             
    40035248:   38401660    ldrb    w0, [x19], #1                                         <== NOT EXECUTED
    4003524c:   9400236d    bl  4003e000 <putchar>                                        <== NOT EXECUTED
    for (c = 0; c < length; c++)                                                          
    40035250:   eb14027f    cmp x19, x20                                                  <== NOT EXECUTED
    40035254:   54ffffa1    b.ne    40035248 <rtems_rfs_dir_add_entry+0x2e8>  // b.any    <== NOT EXECUTED
    printf (", len=%zd\n", length);                                                       
    40035258:   aa1603e1    mov x1, x22                                                   <== NOT EXECUTED
    4003525c:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40035260:   9122a000    add x0, x0, #0x8a8                                            <== NOT EXECUTED
    40035264:   97ffb46b    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40035268:   17ffff4d    b   40034f9c <rtems_rfs_dir_add_entry+0x3c>                   <== NOT EXECUTED
    bpos.bno++;                                                                           
    4003526c:   294d93e2    ldp w2, w4, [sp, #108]                                        
    rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, read);                      
    40035270:   910203e1    add x1, sp, #0x80                                             
    40035274:   aa1a03e0    mov x0, x26                                                   
    40035278:   52800023    mov w3, #0x1                    // #1                         
    bpos.bno++;                                                                           
    4003527c:   11000484    add w4, w4, #0x1                                              
    40035280:   b90073e4    str w4, [sp, #112]                                            
    rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, read);                      
    40035284:   97ffc753    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
    40035288:   2a0003f4    mov w20, w0                                                   
    if (rc > 0)                                                                           
    4003528c:   7100001f    cmp w0, #0x0                                                  
    40035290:   54ffedac    b.gt    40035044 <rtems_rfs_dir_add_entry+0xe4>               <== NEVER TAKEN
    entry  = rtems_rfs_buffer_data (&buffer);                                             
    40035294:   f94047e0    ldr x0, [sp, #136]                                            
    40035298:   f9401c13    ldr x19, [x0, #56]                                            
    if (!read)                                                                            
    4003529c:   17ffff85    b   400350b0 <rtems_rfs_dir_add_entry+0x150>                  
          printf ("rtems-rfs: dir-add-entry: "                                            
    400352a0:   b94012a1    ldr w1, [x21, #16]                                            <== NOT EXECUTED
    400352a4:   2a1b03e4    mov w4, w27                                                   <== NOT EXECUTED
    400352a8:   2a1403e3    mov w3, w20                                                   <== NOT EXECUTED
    400352ac:   2a1903e2    mov w2, w25                                                   <== NOT EXECUTED
    400352b0:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    400352b4:   91264000    add x0, x0, #0x990                                            <== NOT EXECUTED
    400352b8:   97ffb456    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    400352bc:   17ffffc9    b   400351e0 <rtems_rfs_dir_add_entry+0x280>                  <== NOT EXECUTED
        if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_ADD_ENTRY))                              
    400352c0:   d2a40000    mov x0, #0x20000000             // #536870912                 <== NOT EXECUTED
    400352c4:   97ffd5e3    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400352c8:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400352cc:   54ffec40    b.eq    40035054 <rtems_rfs_dir_add_entry+0xf4>  // b.none    <== NOT EXECUTED
          printf ("rtems-rfs: dir-add-entry: "                                            
    400352d0:   b94012b3    ldr w19, [x21, #16]                                           <== NOT EXECUTED
    400352d4:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    400352d8:   94002651    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    400352dc:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    400352e0:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    400352e4:   2a1403e2    mov w2, w20                                                   <== NOT EXECUTED
    400352e8:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    400352ec:   91240000    add x0, x0, #0x900                                            <== NOT EXECUTED
    400352f0:   97ffb448    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    400352f4:   17ffff58    b   40035054 <rtems_rfs_dir_add_entry+0xf4>                   <== NOT EXECUTED
        if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_ADD_ENTRY))                              
    400352f8:   d2a40000    mov x0, #0x20000000             // #536870912                 <== NOT EXECUTED
    400352fc:   97ffd5d5    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40035300:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40035304:   54ffea80    b.eq    40035054 <rtems_rfs_dir_add_entry+0xf4>  // b.none    <== NOT EXECUTED
          printf ("rtems-rfs: dir-add-entry: "                                            
    40035308:   b94012b3    ldr w19, [x21, #16]                                           <== NOT EXECUTED
    4003530c:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    40035310:   94002643    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40035314:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    40035318:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    4003531c:   2a1403e2    mov w2, w20                                                   <== NOT EXECUTED
    40035320:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40035324:   9122e000    add x0, x0, #0x8b8                                            <== NOT EXECUTED
    40035328:   97ffb43a    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    4003532c:   17ffff4a    b   40035054 <rtems_rfs_dir_add_entry+0xf4>                   <== NOT EXECUTED
        printf ("rtems-rfs: dir-add-entry: "                                              
    40035330:   b94012b3    ldr w19, [x21, #16]                                           <== NOT EXECUTED
    40035334:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    40035338:   94002639    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    4003533c:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    40035340:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40035344:   2a1403e2    mov w2, w20                                                   <== NOT EXECUTED
    40035348:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    4003534c:   91252000    add x0, x0, #0x948                                            <== NOT EXECUTED
    40035350:   97ffb430    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40035354:   17ffff40    b   40035054 <rtems_rfs_dir_add_entry+0xf4>                   <== NOT EXECUTED
    ...                                                                                   
                                                                                          

0000000040035360 <rtems_rfs_dir_del_entry>: int rtems_rfs_dir_del_entry (rtems_rfs_file_system* fs, rtems_rfs_inode_handle* dir, rtems_rfs_ino ino, uint32_t offset) {
    40035360:   a9b17bfd    stp x29, x30, [sp, #-240]!                                    
    40035364:   910003fd    mov x29, sp                                                   
    40035368:   a9025bf5    stp x21, x22, [sp, #32]                                       
    4003536c:   aa0103f6    mov x22, x1                                                   
    40035370:   a9046bf9    stp x25, x26, [sp, #64]                                       
    40035374:   aa0003f9    mov x25, x0                                                   
  rtems_rfs_block_no      block;                                                          
  rtems_rfs_buffer_handle buffer;                                                         
  bool                    search;                                                         
  int                     rc;                                                             
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_DEL_ENTRY))                                    
    40035378:   d2a80000    mov x0, #0x40000000             // #1073741824                
{                                                                                         
    4003537c:   a90573fb    stp x27, x28, [sp, #80]                                       
    40035380:   2a0203fc    mov w28, w2                                                   
    40035384:   2a0303fb    mov w27, w3                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_DEL_ENTRY))                                    
    40035388:   97ffd5b2    bl  4002aa50 <rtems_rfs_trace>                                
    4003538c:   72001c1f    tst w0, #0xff                                                 
    40035390:   54000ec1    b.ne    40035568 <rtems_rfs_dir_del_entry+0x208>  // b.any    <== NEVER TAKEN
    printf ("rtems-rfs: dir-del-entry: dir=%" PRId32 ", entry=%" PRId32 " offset=%" PRIu32 "\n",
            rtems_rfs_inode_ino (dir), ino, offset);                                      
                                                                                          
  rc = rtems_rfs_block_map_open (fs, dir, &map);                                          
    40035394:   aa1603e1    mov x1, x22                                                   
    40035398:   910243e2    add x2, sp, #0x90                                             
    4003539c:   aa1903e0    mov x0, x25                                                   
    400353a0:   97fffa58    bl  40033d00 <rtems_rfs_block_map_open>                       
    400353a4:   2a0003fa    mov w26, w0                                                   
  if (rc > 0)                                                                             
    400353a8:   7100001f    cmp w0, #0x0                                                  
    400353ac:   540000ed    b.le    400353c8 <rtems_rfs_dir_del_entry+0x68>               <== ALWAYS TAKEN
  }                                                                                       
                                                                                          
  rtems_rfs_buffer_handle_close (fs, &buffer);                                            
  rtems_rfs_block_map_close (fs, &map);                                                   
  return rc;                                                                              
}                                                                                         
    400353b0:   2a1a03e0    mov w0, w26                                                   <== NOT EXECUTED
    400353b4:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    400353b8:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    400353bc:   a94573fb    ldp x27, x28, [sp, #80]                                       <== NOT EXECUTED
    400353c0:   a8cf7bfd    ldp x29, x30, [sp], #240                                      <== NOT EXECUTED
    400353c4:   d65f03c0    ret                                                           <== NOT EXECUTED
  rc = rtems_rfs_block_map_seek (fs, &map, offset, &block);                               
    400353c8:   2a1b03e0    mov w0, w27                                                   
    400353cc:   9101f3e3    add x3, sp, #0x7c                                             
    400353d0:   aa0003e2    mov x2, x0                                                    
    400353d4:   910243e1    add x1, sp, #0x90                                             
    400353d8:   f90037e0    str x0, [sp, #104]                                            
    400353dc:   aa1903e0    mov x0, x25                                                   
    400353e0:   97fffb78    bl  400341c0 <rtems_rfs_block_map_seek>                       
    400353e4:   2a0003fa    mov w26, w0                                                   
  if (rc > 0)                                                                             
    400353e8:   7100001f    cmp w0, #0x0                                                  
    400353ec:   54000dec    b.gt    400355a8 <rtems_rfs_dir_del_entry+0x248>              <== NEVER TAKEN
  handle->dirty = false;                                                                  
    400353f0:   a90153f3    stp x19, x20, [sp, #16]                                       
    400353f4:   a90363f7    stp x23, x24, [sp, #48]                                       
      if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)                                           
    400353f8:   529ffff7    mov w23, #0xffff                    // #65535                 
    400353fc:   390203ff    strb    wzr, [sp, #128]                                       
  handle->bnum  = 0;                                                                      
    40035400:   b90087ff    str wzr, [sp, #132]                                           
  handle->buffer = NULL;                                                                  
    40035404:   f90047ff    str xzr, [sp, #136]                                           
    rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, true);                      
    40035408:   b9407fe2    ldr w2, [sp, #124]                                            
    4003540c:   910203e1    add x1, sp, #0x80                                             
    40035410:   aa1903e0    mov x0, x25                                                   
    40035414:   52800023    mov w3, #0x1                    // #1                         
    40035418:   97ffc6ee    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
    4003541c:   2a0003fa    mov w26, w0                                                   
    if (rc > 0)                                                                           
    40035420:   7100001f    cmp w0, #0x0                                                  
    40035424:   540018ec    b.gt    40035740 <rtems_rfs_dir_del_entry+0x3e0>              <== NEVER TAKEN
      eoffset = offset % rtems_rfs_fs_block_size (fs);                                    
    40035428:   f9400b23    ldr x3, [x25, #16]                                            
    if (search)                                                                           
    4003542c:   340006db    cbz w27, 40035504 <rtems_rfs_dir_del_entry+0x1a4>             <== NEVER TAKEN
      eoffset = offset % rtems_rfs_fs_block_size (fs);                                    
    40035430:   f94037e0    ldr x0, [sp, #104]                                            
    40035434:   9ac30813    udiv    x19, x0, x3                                           
    40035438:   9b038273    msub    x19, x19, x3, x0                                      
    4003543c:   2a1303f8    mov w24, w19                                                  
    entry = rtems_rfs_buffer_data (&buffer) + eoffset;                                    
    40035440:   93407e60    sxtw    x0, w19                                               
    40035444:   f94047e1    ldr x1, [sp, #136]                                            
    while (eoffset < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))           
    40035448:   d1002862    sub x2, x3, #0xa                                              
    4003544c:   eb00005f    cmp x2, x0                                                    
    entry = rtems_rfs_buffer_data (&buffer) + eoffset;                                    
    40035450:   f9401c33    ldr x19, [x1, #56]                                            
    40035454:   8b000273    add x19, x19, x0                                              
    while (eoffset < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))           
    40035458:   54000248    b.hi    400354a0 <rtems_rfs_dir_del_entry+0x140>  // b.pmore  <== ALWAYS TAKEN
    4003545c:   14000020    b   400354dc <rtems_rfs_dir_del_entry+0x17c>                  <== NOT EXECUTED
      if (rtems_rfs_dir_entry_valid (fs, elength, eino))                                  
    40035460:   71002abf    cmp w21, #0xa                                                 
    40035464:   5400056d    b.le    40035510 <rtems_rfs_dir_del_entry+0x1b0>              <== NEVER TAKEN
    40035468:   b9403321    ldr w1, [x25, #48]                                            
    4003546c:   6b15003f    cmp w1, w21                                                   
    40035470:   54000509    b.ls    40035510 <rtems_rfs_dir_del_entry+0x1b0>  // b.plast  <== NEVER TAKEN
    40035474:   340004f4    cbz w20, 40035510 <rtems_rfs_dir_del_entry+0x1b0>             <== NEVER TAKEN
    40035478:   b9402b20    ldr w0, [x25, #40]                                            
    4003547c:   6b14001f    cmp w0, w20                                                   
    40035480:   54000483    b.cc    40035510 <rtems_rfs_dir_del_entry+0x1b0>  // b.lo, b.ul, b.last<== NEVER TAKEN
      if (ino == rtems_rfs_dir_entry_ino (entry))                                         
    40035484:   6b14039f    cmp w28, w20                                                  
    40035488:   54000a80    b.eq    400355d8 <rtems_rfs_dir_del_entry+0x278>  // b.none   <== ALWAYS TAKEN
      eoffset += elength;                                                                 
    4003548c:   0b150318    add w24, w24, w21                                             <== NOT EXECUTED
      if (!search)                                                                        
    40035490:   350014fb    cbnz    w27, 4003572c <rtems_rfs_dir_del_entry+0x3cc>         <== NOT EXECUTED
      entry   += elength;                                                                 
    40035494:   8b242273    add x19, x19, w4, uxth                                        <== NOT EXECUTED
    while (eoffset < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))           
    40035498:   eb38c05f    cmp x2, w24, sxtw                                             <== NOT EXECUTED
    4003549c:   54000209    b.ls    400354dc <rtems_rfs_dir_del_entry+0x17c>  // b.plast  <== NOT EXECUTED
      entry   += elength;                                                                 
    400354a0:   39402267    ldrb    w7, [x19, #8]                                         
    400354a4:   39402664    ldrb    w4, [x19, #9]                                         
    400354a8:   39400266    ldrb    w6, [x19]                                             
    400354ac:   39400665    ldrb    w5, [x19, #1]                                         
    400354b0:   39400a61    ldrb    w1, [x19, #2]                                         
    400354b4:   aa0420e4    orr x4, x7, x4, lsl #8                                        
    400354b8:   39400e74    ldrb    w20, [x19, #3]                                        
    400354bc:   5ac00484    rev16   w4, w4                                                
    400354c0:   aa0520c5    orr x5, x6, x5, lsl #8                                        
    400354c4:   12003c95    and w21, w4, #0xffff                                          
      eino    = rtems_rfs_dir_entry_ino (entry);                                          
    400354c8:   aa0140a1    orr x1, x5, x1, lsl #16                                       
      if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)                                           
    400354cc:   6b1702bf    cmp w21, w23                                                  
    400354d0:   aa146034    orr x20, x1, x20, lsl #24                                     
    400354d4:   5ac00a94    rev w20, w20                                                  
    400354d8:   54fffc41    b.ne    40035460 <rtems_rfs_dir_del_entry+0x100>  // b.any    <== ALWAYS TAKEN
    if (rc == 0)                                                                          
    400354dc:   3500025a    cbnz    w26, 40035524 <rtems_rfs_dir_del_entry+0x1c4>         <== NOT EXECUTED
      rc = rtems_rfs_block_map_next_block (fs, &map, &block);                             
    400354e0:   9101f3e2    add x2, sp, #0x7c                                             <== NOT EXECUTED
    400354e4:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
    400354e8:   aa1903e0    mov x0, x25                                                   <== NOT EXECUTED
    400354ec:   97fffb45    bl  40034200 <rtems_rfs_block_map_next_block>                 <== NOT EXECUTED
    400354f0:   2a0003fa    mov w26, w0                                                   <== NOT EXECUTED
      if (rc == ENXIO)                                                                    
    400354f4:   7100181f    cmp w0, #0x6                                                  <== NOT EXECUTED
    400354f8:   54001400    b.eq    40035778 <rtems_rfs_dir_del_entry+0x418>  // b.none   <== NOT EXECUTED
  while (rc == 0)                                                                         
    400354fc:   34fff860    cbz w0, 40035408 <rtems_rfs_dir_del_entry+0xa8>               <== NOT EXECUTED
    40035500:   14000009    b   40035524 <rtems_rfs_dir_del_entry+0x1c4>                  <== NOT EXECUTED
    40035504:   d2800000    mov x0, #0x0                    // #0                         <== NOT EXECUTED
      eoffset = 0;                                                                        
    40035508:   52800018    mov w24, #0x0                       // #0                     <== NOT EXECUTED
    4003550c:   17ffffce    b   40035444 <rtems_rfs_dir_del_entry+0xe4>                   <== NOT EXECUTED
        if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_DEL_ENTRY))                              
    40035510:   d2a80000    mov x0, #0x40000000             // #1073741824                <== NOT EXECUTED
        rc = EIO;                                                                         
    40035514:   528000ba    mov w26, #0x5                       // #5                     <== NOT EXECUTED
        if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_DEL_ENTRY))                              
    40035518:   97ffd54e    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    4003551c:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40035520:   54000321    b.ne    40035584 <rtems_rfs_dir_del_entry+0x224>  // b.any    <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40035524:   910203e1    add x1, sp, #0x80                                             <== NOT EXECUTED
    40035528:   aa1903e0    mov x0, x25                                                   <== NOT EXECUTED
    4003552c:   97ffc759    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40035530:   390203ff    strb    wzr, [sp, #128]                                       <== NOT EXECUTED
  rtems_rfs_block_map_close (fs, &map);                                                   
    40035534:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
    40035538:   aa1903e0    mov x0, x25                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    4003553c:   b90087ff    str wzr, [sp, #132]                                           <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40035540:   f90047ff    str xzr, [sp, #136]                                           <== NOT EXECUTED
    40035544:   97fffa53    bl  40033e90 <rtems_rfs_block_map_close>                      <== NOT EXECUTED
  return rc;                                                                              
    40035548:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    4003554c:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
}                                                                                         
    40035550:   2a1a03e0    mov w0, w26                                                   
    40035554:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40035558:   a9446bf9    ldp x25, x26, [sp, #64]                                       
    4003555c:   a94573fb    ldp x27, x28, [sp, #80]                                       
    40035560:   a8cf7bfd    ldp x29, x30, [sp], #240                                      
    40035564:   d65f03c0    ret                                                           
    printf ("rtems-rfs: dir-del-entry: dir=%" PRId32 ", entry=%" PRId32 " offset=%" PRIu32 "\n",
    40035568:   b94012c1    ldr w1, [x22, #16]                                            <== NOT EXECUTED
    4003556c:   2a1b03e3    mov w3, w27                                                   <== NOT EXECUTED
    40035570:   2a1c03e2    mov w2, w28                                                   <== NOT EXECUTED
    40035574:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40035578:   91276000    add x0, x0, #0x9d8                                            <== NOT EXECUTED
    4003557c:   97ffb3a5    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40035580:   17ffff85    b   40035394 <rtems_rfs_dir_del_entry+0x34>                   <== NOT EXECUTED
          printf ("rtems-rfs: dir-del-entry: "                                            
    40035584:   b94012c1    ldr w1, [x22, #16]                                            <== NOT EXECUTED
    40035588:   2a1803e5    mov w5, w24                                                   <== NOT EXECUTED
    4003558c:   b9407fe4    ldr w4, [sp, #124]                                            <== NOT EXECUTED
    40035590:   2a1403e3    mov w3, w20                                                   <== NOT EXECUTED
    40035594:   2a1503e2    mov w2, w21                                                   <== NOT EXECUTED
    40035598:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    4003559c:   91296000    add x0, x0, #0xa58                                            <== NOT EXECUTED
    400355a0:   97ffb39c    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  while (rc == 0)                                                                         
    400355a4:   17ffffe0    b   40035524 <rtems_rfs_dir_del_entry+0x1c4>                  <== NOT EXECUTED
      rc = ENOENT;                                                                        
    400355a8:   7100181f    cmp w0, #0x6                                                  <== NOT EXECUTED
    400355ac:   52800042    mov w2, #0x2                    // #2                         <== NOT EXECUTED
    rtems_rfs_block_map_close (fs, &map);                                                 
    400355b0:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
      rc = ENOENT;                                                                        
    400355b4:   1a82135a    csel    w26, w26, w2, ne  // ne = any                         <== NOT EXECUTED
    rtems_rfs_block_map_close (fs, &map);                                                 
    400355b8:   aa1903e0    mov x0, x25                                                   <== NOT EXECUTED
    400355bc:   97fffa35    bl  40033e90 <rtems_rfs_block_map_close>                      <== NOT EXECUTED
}                                                                                         
    400355c0:   2a1a03e0    mov w0, w26                                                   <== NOT EXECUTED
    400355c4:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    400355c8:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    400355cc:   a94573fb    ldp x27, x28, [sp, #80]                                       <== NOT EXECUTED
    400355d0:   a8cf7bfd    ldp x29, x30, [sp], #240                                      <== NOT EXECUTED
    400355d4:   d65f03c0    ret                                                           <== NOT EXECUTED
        remaining = rtems_rfs_fs_block_size (fs) - (eoffset + elength);                   
    400355d8:   0b150317    add w23, w24, w21                                             
        memmove (entry, entry + elength, remaining);                                      
    400355dc:   8b352261    add x1, x19, w21, uxth                                        
    400355e0:   4b170077    sub w23, w3, w23                                              
    400355e4:   aa1303e0    mov x0, x19                                                   
    400355e8:   aa1703e2    mov x2, x23                                                   
    400355ec:   92403eba    and x26, x21, #0xffff                                         
    400355f0:   94002234    bl  4003dec0 <memmove>                                        
        memset (entry + remaining, 0xff, elength);                                        
    400355f4:   aa1a03e2    mov x2, x26                                                   
    400355f8:   8b170260    add x0, x19, x23                                              
    400355fc:   52801fe1    mov w1, #0xff                   // #255                       
    40035600:   9400226b    bl  4003dfac <memset>                                         
        elength = rtems_rfs_dir_entry_length (entry);                                     
    40035604:   39402261    ldrb    w1, [x19, #8]                                         
        if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_DEL_ENTRY))                              
    40035608:   d2a80000    mov x0, #0x40000000             // #1073741824                
    4003560c:   39402673    ldrb    w19, [x19, #9]                                        
    40035610:   aa132033    orr x19, x1, x19, lsl #8                                      
    40035614:   97ffd50f    bl  4002aa50 <rtems_rfs_trace>                                
    40035618:   5ac00673    rev16   w19, w19                                              
    4003561c:   72001c1f    tst w0, #0xff                                                 
    40035620:   12003e73    and w19, w19, #0xffff                                         
    40035624:   54000260    b.eq    40035670 <rtems_rfs_dir_del_entry+0x310>  // b.none   <== ALWAYS TAKEN
                  rtems_rfs_block_map_last (&map) ? "yes" : "no");                        
    40035628:   b940a3e0    ldr w0, [sp, #160]                                            <== NOT EXECUTED
    4003562c:   b940abe2    ldr w2, [sp, #168]                                            <== NOT EXECUTED
          printf ("rtems-rfs: dir-del-entry: "                                            
    40035630:   b9407fe3    ldr w3, [sp, #124]                                            <== NOT EXECUTED
                  rtems_rfs_block_map_last (&map) ? "yes" : "no");                        
    40035634:   2a000041    orr w1, w2, w0                                                <== NOT EXECUTED
    40035638:   340007e1    cbz w1, 40035734 <rtems_rfs_dir_del_entry+0x3d4>              <== NOT EXECUTED
    4003563c:   51000400    sub w0, w0, #0x1                                              <== NOT EXECUTED
          printf ("rtems-rfs: dir-del-entry: "                                            
    40035640:   900000a1    adrp    x1, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40035644:   91252021    add x1, x1, #0x948                                            <== NOT EXECUTED
    40035648:   6b00005f    cmp w2, w0                                                    <== NOT EXECUTED
    4003564c:   900000a5    adrp    x5, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40035650:   912500a5    add x5, x5, #0x940                                            <== NOT EXECUTED
    40035654:   9a8100a5    csel    x5, x5, x1, eq  // eq = none                          <== NOT EXECUTED
    40035658:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    4003565c:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40035660:   2a1803e4    mov w4, w24                                                   <== NOT EXECUTED
    40035664:   912aa000    add x0, x0, #0xaa8                                            <== NOT EXECUTED
    40035668:   2a1303e2    mov w2, w19                                                   <== NOT EXECUTED
    4003566c:   97ffb369    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
        if ((elength == RTEMS_RFS_DIR_ENTRY_EMPTY) &&                                     
    40035670:   7100031f    cmp w24, #0x0                                                 
    40035674:   529fffe0    mov w0, #0xffff                 // #65535                     
    40035678:   7a400260    ccmp    w19, w0, #0x0, eq  // eq = none                       
    4003567c:   54000321    b.ne    400356e0 <rtems_rfs_dir_del_entry+0x380>  // b.any    <== ALWAYS TAKEN
            (eoffset == 0) && rtems_rfs_block_map_last (&map))                            
    40035680:   b940a3e0    ldr w0, [sp, #160]                                            <== NOT EXECUTED
    40035684:   b940abe1    ldr w1, [sp, #168]                                            <== NOT EXECUTED
    40035688:   2a000022    orr w2, w1, w0                                                <== NOT EXECUTED
    4003568c:   35000482    cbnz    w2, 4003571c <rtems_rfs_dir_del_entry+0x3bc>          <== NOT EXECUTED
          rc = rtems_rfs_block_map_shrink (fs, &map, 1);                                  
    40035690:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
    40035694:   aa1903e0    mov x0, x25                                                   <== NOT EXECUTED
    40035698:   d2800022    mov x2, #0x1                    // #1                         <== NOT EXECUTED
    4003569c:   97fffbd5    bl  400345f0 <rtems_rfs_block_map_shrink>                     <== NOT EXECUTED
    400356a0:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
          if (rc > 0)                                                                     
    400356a4:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    400356a8:   540001cd    b.le    400356e0 <rtems_rfs_dir_del_entry+0x380>              <== NOT EXECUTED
            if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_DEL_ENTRY))                          
    400356ac:   d2a80000    mov x0, #0x40000000             // #1073741824                <== NOT EXECUTED
    400356b0:   97ffd4e8    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400356b4:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400356b8:   54000140    b.eq    400356e0 <rtems_rfs_dir_del_entry+0x380>  // b.none   <== NOT EXECUTED
              printf ("rtems-rfs: dir-del-entry: "                                        
    400356bc:   b94012d4    ldr w20, [x22, #16]                                           <== NOT EXECUTED
    400356c0:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    400356c4:   94002556    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    400356c8:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    400356cc:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    400356d0:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    400356d4:   912c2000    add x0, x0, #0xb08                                            <== NOT EXECUTED
    400356d8:   2a1303e2    mov w2, w19                                                   <== NOT EXECUTED
    400356dc:   97ffb34d    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
        rtems_rfs_buffer_mark_dirty (&buffer);                                            
    400356e0:   52800022    mov w2, #0x1                    // #1                         
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    400356e4:   910203e1    add x1, sp, #0x80                                             
    400356e8:   aa1903e0    mov x0, x25                                                   
    400356ec:   390203e2    strb    w2, [sp, #128]                                        
    400356f0:   97ffc6e8    bl  40027290 <rtems_rfs_buffer_handle_release>                
        return 0;                                                                         
    400356f4:   5280001a    mov w26, #0x0                       // #0                     
        rtems_rfs_block_map_close (fs, &map);                                             
    400356f8:   910243e1    add x1, sp, #0x90                                             
    400356fc:   aa1903e0    mov x0, x25                                                   
  handle->dirty = false;                                                                  
    40035700:   390203ff    strb    wzr, [sp, #128]                                       
  handle->bnum  = 0;                                                                      
    40035704:   b90087ff    str wzr, [sp, #132]                                           
  handle->buffer = NULL;                                                                  
    40035708:   f90047ff    str xzr, [sp, #136]                                           
  rtems_rfs_block_map_close (fs, &map);                                                   
    4003570c:   97fff9e1    bl  40033e90 <rtems_rfs_block_map_close>                      
  return rc;                                                                              
    40035710:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40035714:   a94363f7    ldp x23, x24, [sp, #48]                                       
    40035718:   17ffff8e    b   40035550 <rtems_rfs_dir_del_entry+0x1f0>                  
            (eoffset == 0) && rtems_rfs_block_map_last (&map))                            
    4003571c:   51000400    sub w0, w0, #0x1                                              <== NOT EXECUTED
    40035720:   6b00003f    cmp w1, w0                                                    <== NOT EXECUTED
    40035724:   54fffde1    b.ne    400356e0 <rtems_rfs_dir_del_entry+0x380>  // b.any    <== NOT EXECUTED
    40035728:   17ffffda    b   40035690 <rtems_rfs_dir_del_entry+0x330>                  <== NOT EXECUTED
        rc = EIO;                                                                         
    4003572c:   528000ba    mov w26, #0x5                       // #5                     <== NOT EXECUTED
  while (rc == 0)                                                                         
    40035730:   17ffff7d    b   40035524 <rtems_rfs_dir_del_entry+0x1c4>                  <== NOT EXECUTED
          printf ("rtems-rfs: dir-del-entry: "                                            
    40035734:   900000a5    adrp    x5, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40035738:   912500a5    add x5, x5, #0x940                                            <== NOT EXECUTED
    4003573c:   17ffffc7    b   40035658 <rtems_rfs_dir_del_entry+0x2f8>                  <== NOT EXECUTED
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_DEL_ENTRY))                                
    40035740:   d2a80000    mov x0, #0x40000000             // #1073741824                <== NOT EXECUTED
    40035744:   97ffd4c3    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40035748:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    4003574c:   54ffeec0    b.eq    40035524 <rtems_rfs_dir_del_entry+0x1c4>  // b.none   <== NOT EXECUTED
        printf ("rtems-rfs: dir-del-entry: "                                              
    40035750:   b94012d3    ldr w19, [x22, #16]                                           <== NOT EXECUTED
    40035754:   2a1a03e0    mov w0, w26                                                   <== NOT EXECUTED
    40035758:   94002531    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    4003575c:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    40035760:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40035764:   2a1a03e2    mov w2, w26                                                   <== NOT EXECUTED
    40035768:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    4003576c:   91284000    add x0, x0, #0xa10                                            <== NOT EXECUTED
    40035770:   97ffb328    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40035774:   17ffff6c    b   40035524 <rtems_rfs_dir_del_entry+0x1c4>                  <== NOT EXECUTED
        rc = ENOENT;                                                                      
    40035778:   5280005a    mov w26, #0x2                       // #2                     <== NOT EXECUTED
    4003577c:   17ffff6a    b   40035524 <rtems_rfs_dir_del_entry+0x1c4>                  <== NOT EXECUTED
                                                                                          

0000000040035ab0 <rtems_rfs_dir_empty>: int rtems_rfs_dir_empty (rtems_rfs_file_system* fs, rtems_rfs_inode_handle* dir) {
    40035ab0:   a9b37bfd    stp x29, x30, [sp, #-208]!                                    
    40035ab4:   910003fd    mov x29, sp                                                   
    40035ab8:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40035abc:   aa0103f5    mov x21, x1                                                   
    40035ac0:   a90363f7    stp x23, x24, [sp, #48]                                       
    40035ac4:   aa0003f8    mov x24, x0                                                   
  rtems_rfs_buffer_handle buffer;                                                         
  rtems_rfs_block_no      block;                                                          
  bool                    empty;                                                          
  int                     rc;                                                             
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))                                         
    40035ac8:   d2b00000    mov x0, #0x80000000             // #2147483648                
{                                                                                         
    40035acc:   a9046bf9    stp x25, x26, [sp, #64]                                       
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))                                         
    40035ad0:   97ffd3e0    bl  4002aa50 <rtems_rfs_trace>                                
    40035ad4:   72001c1f    tst w0, #0xff                                                 
    40035ad8:   54000f61    b.ne    40035cc4 <rtems_rfs_dir_empty+0x214>  // b.any        <== NEVER TAKEN
    printf ("rtems-rfs: dir-empty: dir=%" PRId32 "\n", rtems_rfs_inode_ino (dir));        
                                                                                          
  empty = true;                                                                           
                                                                                          
  rc = rtems_rfs_block_map_open (fs, dir, &map);                                          
    40035adc:   aa1503e1    mov x1, x21                                                   
    40035ae0:   9101c3e2    add x2, sp, #0x70                                             
    40035ae4:   aa1803e0    mov x0, x24                                                   
    40035ae8:   97fff886    bl  40033d00 <rtems_rfs_block_map_open>                       
    40035aec:   2a0003fa    mov w26, w0                                                   
  if (rc > 0)                                                                             
    40035af0:   7100001f    cmp w0, #0x0                                                  
    40035af4:   540000ed    b.le    40035b10 <rtems_rfs_dir_empty+0x60>                   <== ALWAYS TAKEN
    rc = ENOTEMPTY;                                                                       
                                                                                          
  rtems_rfs_buffer_handle_close (fs, &buffer);                                            
  rtems_rfs_block_map_close (fs, &map);                                                   
  return rc;                                                                              
}                                                                                         
    40035af8:   2a1a03e0    mov w0, w26                                                   <== NOT EXECUTED
    40035afc:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40035b00:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40035b04:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    40035b08:   a8cd7bfd    ldp x29, x30, [sp], #208                                      <== NOT EXECUTED
    40035b0c:   d65f03c0    ret                                                           <== NOT EXECUTED
  rc = rtems_rfs_block_map_seek (fs, &map, 0, &block);                                    
    40035b10:   910173e3    add x3, sp, #0x5c                                             
    40035b14:   9101c3e1    add x1, sp, #0x70                                             
    40035b18:   aa1803e0    mov x0, x24                                                   
    40035b1c:   d2800002    mov x2, #0x0                    // #0                         
    40035b20:   97fff9a8    bl  400341c0 <rtems_rfs_block_map_seek>                       
    40035b24:   2a0003fa    mov w26, w0                                                   
  if (rc > 0)                                                                             
    40035b28:   7100001f    cmp w0, #0x0                                                  
    40035b2c:   54000d6c    b.gt    40035cd8 <rtems_rfs_dir_empty+0x228>                  <== NEVER TAKEN
          printf ("rtems-rfs: dir-empty: "                                                
    40035b30:   b00000b6    adrp    x22, 4004a000 <status_code_text+0x38>                 
    40035b34:   913142d6    add x22, x22, #0xc50                                          
      if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)                                           
    40035b38:   529ffff9    mov w25, #0xffff                    // #65535                 
    40035b3c:   a90153f3    stp x19, x20, [sp, #16]                                       
  handle->dirty = false;                                                                  
    40035b40:   390183ff    strb    wzr, [sp, #96]                                        
  handle->bnum  = 0;                                                                      
    40035b44:   b90067ff    str wzr, [sp, #100]                                           
  handle->buffer = NULL;                                                                  
    40035b48:   f90037ff    str xzr, [sp, #104]                                           
    rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, true);                      
    40035b4c:   b9405fe2    ldr w2, [sp, #92]                                             
    40035b50:   910183e1    add x1, sp, #0x60                                             
    40035b54:   aa1803e0    mov x0, x24                                                   
    40035b58:   52800023    mov w3, #0x1                    // #1                         
    40035b5c:   97ffc51d    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
    40035b60:   2a0003fa    mov w26, w0                                                   
    if (rc > 0)                                                                           
    40035b64:   7100001f    cmp w0, #0x0                                                  
    40035b68:   5400068c    b.gt    40035c38 <rtems_rfs_dir_empty+0x188>                  <== NEVER TAKEN
    entry  = rtems_rfs_buffer_data (&buffer);                                             
    40035b6c:   f94037e0    ldr x0, [sp, #104]                                            
    while (offset < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))            
    40035b70:   f9400b07    ldr x7, [x24, #16]                                            
    entry  = rtems_rfs_buffer_data (&buffer);                                             
    40035b74:   f9401c05    ldr x5, [x0, #56]                                             
    while (offset < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))            
    40035b78:   f10028e7    subs    x7, x7, #0xa                                          
    40035b7c:   54000920    b.eq    40035ca0 <rtems_rfs_dir_empty+0x1f0>  // b.none       <== NEVER TAKEN
    offset = 0;                                                                           
    40035b80:   52800017    mov w23, #0x0                       // #0                     
    40035b84:   1400000d    b   40035bb8 <rtems_rfs_dir_empty+0x108>                      
           (entry[RTEMS_RFS_DIR_ENTRY_SIZE] != '.')) &&                                   
    40035b88:   7100329f    cmp w20, #0xc                                                 
    40035b8c:   54000501    b.ne    40035c2c <rtems_rfs_dir_empty+0x17c>  // b.any        
          ((elength != (RTEMS_RFS_DIR_ENTRY_SIZE + 2)) ||                                 
    40035b90:   394028a1    ldrb    w1, [x5, #10]                                         
    40035b94:   7100b83f    cmp w1, #0x2e                                                 
    40035b98:   540004a1    b.ne    40035c2c <rtems_rfs_dir_empty+0x17c>  // b.any        <== NEVER TAKEN
           (entry[RTEMS_RFS_DIR_ENTRY_SIZE] != '.') ||                                    
    40035b9c:   39402ca1    ldrb    w1, [x5, #11]                                         
    40035ba0:   7100b83f    cmp w1, #0x2e                                                 
    40035ba4:   54000441    b.ne    40035c2c <rtems_rfs_dir_empty+0x17c>  // b.any        <== NEVER TAKEN
      offset += elength;                                                                  
    40035ba8:   0b1402f7    add w23, w23, w20                                             
      entry  += elength;                                                                  
    40035bac:   8b2620a5    add x5, x5, w6, uxth                                          
    while (offset < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))            
    40035bb0:   eb37c0ff    cmp x7, w23, sxtw                                             
    40035bb4:   54000769    b.ls    40035ca0 <rtems_rfs_dir_empty+0x1f0>  // b.plast      <== NEVER TAKEN
      elength = rtems_rfs_dir_entry_length (entry);                                       
    40035bb8:   394020a4    ldrb    w4, [x5, #8]                                          
    40035bbc:   394024a6    ldrb    w6, [x5, #9]                                          
    40035bc0:   394000a2    ldrb    w2, [x5]                                              
    40035bc4:   394004a1    ldrb    w1, [x5, #1]                                          
    40035bc8:   394008a3    ldrb    w3, [x5, #2]                                          
    40035bcc:   aa062086    orr x6, x4, x6, lsl #8                                        
    40035bd0:   39400cb3    ldrb    w19, [x5, #3]                                         
    40035bd4:   5ac004c6    rev16   w6, w6                                                
    40035bd8:   aa012041    orr x1, x2, x1, lsl #8                                        
    40035bdc:   12003cd4    and w20, w6, #0xffff                                          
      eino    = rtems_rfs_dir_entry_ino (entry);                                          
    40035be0:   aa034023    orr x3, x1, x3, lsl #16                                       
      if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)                                           
    40035be4:   6b19029f    cmp w20, w25                                                  
    40035be8:   aa136073    orr x19, x3, x19, lsl #24                                     
    40035bec:   5ac00a73    rev w19, w19                                                  
    40035bf0:   54000580    b.eq    40035ca0 <rtems_rfs_dir_empty+0x1f0>  // b.none       
      if (rtems_rfs_dir_entry_valid (fs, elength, eino))                                  
    40035bf4:   71002a9f    cmp w20, #0xa                                                 
    40035bf8:   5400040d    b.le    40035c78 <rtems_rfs_dir_empty+0x1c8>                  <== NEVER TAKEN
    40035bfc:   b9403301    ldr w1, [x24, #48]                                            
    40035c00:   6b14003f    cmp w1, w20                                                   
    40035c04:   540003a9    b.ls    40035c78 <rtems_rfs_dir_empty+0x1c8>  // b.plast      <== NEVER TAKEN
    40035c08:   34000393    cbz w19, 40035c78 <rtems_rfs_dir_empty+0x1c8>                 <== NEVER TAKEN
    40035c0c:   b9402b01    ldr w1, [x24, #40]                                            
    40035c10:   6b13003f    cmp w1, w19                                                   
    40035c14:   54000323    b.cc    40035c78 <rtems_rfs_dir_empty+0x1c8>  // b.lo, b.ul, b.last<== NEVER TAKEN
      if (((elength != (RTEMS_RFS_DIR_ENTRY_SIZE + 1)) ||                                 
    40035c18:   71002e9f    cmp w20, #0xb                                                 
    40035c1c:   54fffb61    b.ne    40035b88 <rtems_rfs_dir_empty+0xd8>  // b.any         
    40035c20:   394028a0    ldrb    w0, [x5, #10]                                         
    40035c24:   7100b81f    cmp w0, #0x2e                                                 
    40035c28:   54fffc00    b.eq    40035ba8 <rtems_rfs_dir_empty+0xf8>  // b.none        <== ALWAYS TAKEN
    rc = ENOTEMPTY;                                                                       
    40035c2c:   7100035f    cmp w26, #0x0                                                 
    40035c30:   52800b40    mov w0, #0x5a                   // #90                        
    40035c34:   1a80135a    csel    w26, w26, w0, ne  // ne = any                         
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40035c38:   910183e1    add x1, sp, #0x60                                             
    40035c3c:   aa1803e0    mov x0, x24                                                   
    40035c40:   97ffc594    bl  40027290 <rtems_rfs_buffer_handle_release>                
  handle->dirty = false;                                                                  
    40035c44:   390183ff    strb    wzr, [sp, #96]                                        
  rtems_rfs_block_map_close (fs, &map);                                                   
    40035c48:   9101c3e1    add x1, sp, #0x70                                             
    40035c4c:   aa1803e0    mov x0, x24                                                   
  handle->bnum  = 0;                                                                      
    40035c50:   b90067ff    str wzr, [sp, #100]                                           
  handle->buffer = NULL;                                                                  
    40035c54:   f90037ff    str xzr, [sp, #104]                                           
    40035c58:   97fff88e    bl  40033e90 <rtems_rfs_block_map_close>                      
}                                                                                         
    40035c5c:   2a1a03e0    mov w0, w26                                                   
  return rc;                                                                              
    40035c60:   a94153f3    ldp x19, x20, [sp, #16]                                       
}                                                                                         
    40035c64:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40035c68:   a94363f7    ldp x23, x24, [sp, #48]                                       
    40035c6c:   a9446bf9    ldp x25, x26, [sp, #64]                                       
    40035c70:   a8cd7bfd    ldp x29, x30, [sp], #208                                      
    40035c74:   d65f03c0    ret                                                           
        if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_EMPTY))                                  
    40035c78:   d2c00020    mov x0, #0x100000000            // #4294967296                <== NOT EXECUTED
    40035c7c:   97ffd375    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40035c80:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40035c84:   540000e0    b.eq    40035ca0 <rtems_rfs_dir_empty+0x1f0>  // b.none       <== NOT EXECUTED
          printf ("rtems-rfs: dir-empty: "                                                
    40035c88:   b94012a1    ldr w1, [x21, #16]                                            <== NOT EXECUTED
    40035c8c:   2a1703e4    mov w4, w23                                                   <== NOT EXECUTED
    40035c90:   2a1303e3    mov w3, w19                                                   <== NOT EXECUTED
    40035c94:   2a1403e2    mov w2, w20                                                   <== NOT EXECUTED
    40035c98:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    40035c9c:   97ffb1dd    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
      rc = rtems_rfs_block_map_next_block (fs, &map, &block);                             
    40035ca0:   910173e2    add x2, sp, #0x5c                                             
    40035ca4:   9101c3e1    add x1, sp, #0x70                                             
    40035ca8:   aa1803e0    mov x0, x24                                                   
    40035cac:   97fff955    bl  40034200 <rtems_rfs_block_map_next_block>                 
      if (rc > 0)                                                                         
    40035cb0:   7100001f    cmp w0, #0x0                                                  
    40035cb4:   54fff4cd    b.le    40035b4c <rtems_rfs_dir_empty+0x9c>                   <== NEVER TAKEN
          rc = 0;                                                                         
    40035cb8:   7100181f    cmp w0, #0x6                                                  
    40035cbc:   1a9f101a    csel    w26, w0, wzr, ne  // ne = any                         
    40035cc0:   17ffffde    b   40035c38 <rtems_rfs_dir_empty+0x188>                      
    printf ("rtems-rfs: dir-empty: dir=%" PRId32 "\n", rtems_rfs_inode_ino (dir));        
    40035cc4:   b94012a1    ldr w1, [x21, #16]                                            <== NOT EXECUTED
    40035cc8:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40035ccc:   9130c000    add x0, x0, #0xc30                                            <== NOT EXECUTED
    40035cd0:   97ffb1d0    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40035cd4:   17ffff82    b   40035adc <rtems_rfs_dir_empty+0x2c>                       <== NOT EXECUTED
    rtems_rfs_block_map_close (fs, &map);                                                 
    40035cd8:   9101c3e1    add x1, sp, #0x70                                             <== NOT EXECUTED
    40035cdc:   aa1803e0    mov x0, x24                                                   <== NOT EXECUTED
    40035ce0:   97fff86c    bl  40033e90 <rtems_rfs_block_map_close>                      <== NOT EXECUTED
}                                                                                         
    40035ce4:   2a1a03e0    mov w0, w26                                                   <== NOT EXECUTED
    40035ce8:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40035cec:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40035cf0:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    40035cf4:   a8cd7bfd    ldp x29, x30, [sp], #208                                      <== NOT EXECUTED
    40035cf8:   d65f03c0    ret                                                           <== NOT EXECUTED
    40035cfc:   00000000    udf #0                                                        
                                                                                          

0000000040035d00 <rtems_rfs_dir_hash>: */ #define initval (20010928) uint32_t rtems_rfs_dir_hash (const void *key, size_t length) {
    40035d00:   aa0003e3    mov x3, x0                                                    
  uint32_t a,b,c;                             /* internal state */                        
  union { const void *ptr; size_t i; } u;     /* needed for Mac Powerbook G4 */           
                                                                                          
  /* Set up the internal state */                                                         
  a = b = c = 0xdeadbeef + ((uint32_t)length) + initval;                                  
    40035d04:   5282d3e0    mov w0, #0x169f                 // #5791                      
    40035d08:   72bbfbe0    movk    w0, #0xdfdf, lsl #16                                  
    40035d0c:   0b000026    add w6, w1, w0                                                
                                                                                          
  } else {                        /* need to read the key one byte at a time */           
    const uint8_t *k = (const uint8_t *)key;                                              
                                                                                          
    /*--------------- all but the last block: affect some 32 bits of (a,b,c) */           
    while (length > 12)                                                                   
    40035d10:   f100303f    cmp x1, #0xc                                                  
  a = b = c = 0xdeadbeef + ((uint32_t)length) + initval;                                  
    40035d14:   2a0603e7    mov w7, w6                                                    
    40035d18:   2a0603eb    mov w11, w6                                                   
    while (length > 12)                                                                   
    40035d1c:   54000629    b.ls    40035de0 <rtems_rfs_dir_hash+0xe0>  // b.plast        <== ALWAYS TAKEN
      b += ((uint32_t)k[5])<<8;                                                           
      b += ((uint32_t)k[6])<<16;                                                          
      b += ((uint32_t)k[7])<<24;                                                          
      c += k[8];                                                                          
      c += ((uint32_t)k[9])<<8;                                                           
      c += ((uint32_t)k[10])<<16;                                                         
    40035d20:   39402864    ldrb    w4, [x3, #10]                                         <== NOT EXECUTED
      c += ((uint32_t)k[11])<<24;                                                         
      mix(a,b,c);                                                                         
      length -= 12;                                                                       
    40035d24:   d1003021    sub x1, x1, #0xc                                              <== NOT EXECUTED
      c += k[8];                                                                          
    40035d28:   39402068    ldrb    w8, [x3, #8]                                          <== NOT EXECUTED
    while (length > 12)                                                                   
    40035d2c:   f100303f    cmp x1, #0xc                                                  <== NOT EXECUTED
      c += ((uint32_t)k[9])<<8;                                                           
    40035d30:   39402462    ldrb    w2, [x3, #9]                                          <== NOT EXECUTED
      c += ((uint32_t)k[11])<<24;                                                         
    40035d34:   39402c60    ldrb    w0, [x3, #11]                                         <== NOT EXECUTED
      c += ((uint32_t)k[10])<<16;                                                         
    40035d38:   53103c84    lsl w4, w4, #16                                               <== NOT EXECUTED
      a += ((uint32_t)k[2])<<16;                                                          
    40035d3c:   3940086a    ldrb    w10, [x3, #2]                                         <== NOT EXECUTED
      a += ((uint32_t)k[1])<<8;                                                           
    40035d40:   39400465    ldrb    w5, [x3, #1]                                          <== NOT EXECUTED
      c += ((uint32_t)k[11])<<24;                                                         
    40035d44:   0b022082    add w2, w4, w2, lsl #8                                        <== NOT EXECUTED
    40035d48:   0b006100    add w0, w8, w0, lsl #24                                       <== NOT EXECUTED
      b += ((uint32_t)k[6])<<16;                                                          
    40035d4c:   39401869    ldrb    w9, [x3, #6]                                          <== NOT EXECUTED
      c += ((uint32_t)k[11])<<24;                                                         
    40035d50:   0b000040    add w0, w2, w0                                                <== NOT EXECUTED
      a += ((uint32_t)k[2])<<16;                                                          
    40035d54:   53103d4a    lsl w10, w10, #16                                             <== NOT EXECUTED
      c += ((uint32_t)k[11])<<24;                                                         
    40035d58:   0b060000    add w0, w0, w6                                                <== NOT EXECUTED
      b += ((uint32_t)k[5])<<8;                                                           
    40035d5c:   39401464    ldrb    w4, [x3, #5]                                          <== NOT EXECUTED
      b += ((uint32_t)k[7])<<24;                                                          
    40035d60:   39401c68    ldrb    w8, [x3, #7]                                          <== NOT EXECUTED
      mix(a,b,c);                                                                         
    40035d64:   0b052145    add w5, w10, w5, lsl #8                                       <== NOT EXECUTED
      b += k[4];                                                                          
    40035d68:   3940106c    ldrb    w12, [x3, #4]                                         <== NOT EXECUTED
      b += ((uint32_t)k[6])<<16;                                                          
    40035d6c:   53103d22    lsl w2, w9, #16                                               <== NOT EXECUTED
      a += ((uint32_t)k[3])<<24;                                                          
    40035d70:   39400c66    ldrb    w6, [x3, #3]                                          <== NOT EXECUTED
      b += ((uint32_t)k[7])<<24;                                                          
    40035d74:   0b042042    add w2, w2, w4, lsl #8                                        <== NOT EXECUTED
      a += k[0];                                                                          
    40035d78:   3840c46a    ldrb    w10, [x3], #12                                        <== NOT EXECUTED
    40035d7c:   4b0000e7    sub w7, w7, w0                                                <== NOT EXECUTED
      b += ((uint32_t)k[7])<<24;                                                          
    40035d80:   0b086188    add w8, w12, w8, lsl #24                                      <== NOT EXECUTED
    40035d84:   0b080042    add w2, w2, w8                                                <== NOT EXECUTED
      mix(a,b,c);                                                                         
    40035d88:   0b066146    add w6, w10, w6, lsl #24                                      <== NOT EXECUTED
      b += ((uint32_t)k[7])<<24;                                                          
    40035d8c:   0b0b0042    add w2, w2, w11                                               <== NOT EXECUTED
      mix(a,b,c);                                                                         
    40035d90:   0b0600a5    add w5, w5, w6                                                <== NOT EXECUTED
    40035d94:   0b000044    add w4, w2, w0                                                <== NOT EXECUTED
    40035d98:   0b0700a5    add w5, w5, w7                                                <== NOT EXECUTED
    40035d9c:   4ac070a0    eor w0, w5, w0, ror #28                                       <== NOT EXECUTED
    40035da0:   4b000042    sub w2, w2, w0                                                <== NOT EXECUTED
    40035da4:   0b040005    add w5, w0, w4                                                <== NOT EXECUTED
    40035da8:   4ac06840    eor w0, w2, w0, ror #26                                       <== NOT EXECUTED
    40035dac:   4b000082    sub w2, w4, w0                                                <== NOT EXECUTED
    40035db0:   0b050004    add w4, w0, w5                                                <== NOT EXECUTED
    40035db4:   4ac06040    eor w0, w2, w0, ror #24                                       <== NOT EXECUTED
    40035db8:   4b0000a5    sub w5, w5, w0                                                <== NOT EXECUTED
    40035dbc:   0b040002    add w2, w0, w4                                                <== NOT EXECUTED
    40035dc0:   4ac040a0    eor w0, w5, w0, ror #16                                       <== NOT EXECUTED
    40035dc4:   4b000084    sub w4, w4, w0                                                <== NOT EXECUTED
    40035dc8:   0b020007    add w7, w0, w2                                                <== NOT EXECUTED
    40035dcc:   4ac03480    eor w0, w4, w0, ror #13                                       <== NOT EXECUTED
    40035dd0:   4b000042    sub w2, w2, w0                                                <== NOT EXECUTED
    40035dd4:   0b07000b    add w11, w0, w7                                               <== NOT EXECUTED
    40035dd8:   4ac07046    eor w6, w2, w0, ror #28                                       <== NOT EXECUTED
    while (length > 12)                                                                   
    40035ddc:   54fffa28    b.hi    40035d20 <rtems_rfs_dir_hash+0x20>  // b.pmore        <== NOT EXECUTED
      k += 12;                                                                            
    }                                                                                     
                                                                                          
    /*-------------------------------- last block: affect all 32 bits of (c) */           
    switch(length)                   /* all the case statements fall through */           
    40035de0:   f1001c3f    cmp x1, #0x7                                                  
    40035de4:   540007e0    b.eq    40035ee0 <rtems_rfs_dir_hash+0x1e0>  // b.none        <== NEVER TAKEN
    40035de8:   540005c8    b.hi    40035ea0 <rtems_rfs_dir_hash+0x1a0>  // b.pmore       
    40035dec:   f100103f    cmp x1, #0x4                                                  
    40035df0:   54000520    b.eq    40035e94 <rtems_rfs_dir_hash+0x194>  // b.none        
    40035df4:   54000448    b.hi    40035e7c <rtems_rfs_dir_hash+0x17c>  // b.pmore       <== NEVER TAKEN
    40035df8:   f100083f    cmp x1, #0x2                                                  
    40035dfc:   540000a0    b.eq    40035e10 <rtems_rfs_dir_hash+0x110>  // b.none        
    40035e00:   f1000c3f    cmp x1, #0x3                                                  
    40035e04:   54000741    b.ne    40035eec <rtems_rfs_dir_hash+0x1ec>  // b.any         <== ALWAYS TAKEN
      case 8 : b+=((uint32_t)k[7])<<24;                                                   
      case 7 : b+=((uint32_t)k[6])<<16;                                                   
      case 6 : b+=((uint32_t)k[5])<<8;                                                    
      case 5 : b+=k[4];                                                                   
      case 4 : a+=((uint32_t)k[3])<<24;                                                   
      case 3 : a+=((uint32_t)k[2])<<16;                                                   
    40035e08:   39400860    ldrb    w0, [x3, #2]                                          
    40035e0c:   0b0040e7    add w7, w7, w0, lsl #16                                       
      case 2 : a+=((uint32_t)k[1])<<8;                                                    
    40035e10:   39400460    ldrb    w0, [x3, #1]                                          
    40035e14:   0b0020e7    add w7, w7, w0, lsl #8                                        
        break;                                                                            
      case 0 : return c;                                                                  
    }                                                                                     
  }                                                                                       
                                                                                          
  final(a,b,c);                                                                           
    40035e18:   4a0b00c0    eor w0, w6, w11                                               
      case 1 : a+=k[0];                                                                   
    40035e1c:   39400061    ldrb    w1, [x3]                                              
  final(a,b,c);                                                                           
    40035e20:   138b4966    ror w6, w11, #18                                              
    40035e24:   4b060006    sub w6, w0, w6                                                
      case 1 : a+=k[0];                                                                   
    40035e28:   0b070021    add w1, w1, w7                                                
  final(a,b,c);                                                                           
    40035e2c:   4a0100c1    eor w1, w6, w1                                                
    40035e30:   138654c0    ror w0, w6, #21                                               
    40035e34:   4b000021    sub w1, w1, w0                                                
    40035e38:   4a0b0020    eor w0, w1, w11                                               
    40035e3c:   13811c22    ror w2, w1, #7                                                
    40035e40:   4b020000    sub w0, w0, w2                                                
    40035e44:   4a0000c6    eor w6, w6, w0                                                
    40035e48:   13804002    ror w2, w0, #16                                               
    40035e4c:   4b0200c6    sub w6, w6, w2                                                
    40035e50:   4a060021    eor w1, w1, w6                                                
    40035e54:   138670c2    ror w2, w6, #28                                               
    40035e58:   4b020021    sub w1, w1, w2                                                
    40035e5c:   4a010000    eor w0, w0, w1                                                
    40035e60:   13814821    ror w1, w1, #18                                               
    40035e64:   4b010001    sub w1, w0, w1                                                
    40035e68:   4a0100c0    eor w0, w6, w1                                                
    40035e6c:   13812021    ror w1, w1, #8                                                
    40035e70:   4b010006    sub w6, w0, w1                                                
  return c;                                                                               
}                                                                                         
    40035e74:   2a0603e0    mov w0, w6                                                    
    40035e78:   d65f03c0    ret                                                           
    switch(length)                   /* all the case statements fall through */           
    40035e7c:   f100143f    cmp x1, #0x5                                                  <== NOT EXECUTED
    40035e80:   54000060    b.eq    40035e8c <rtems_rfs_dir_hash+0x18c>  // b.none        <== NOT EXECUTED
      case 6 : b+=((uint32_t)k[5])<<8;                                                    
    40035e84:   39401460    ldrb    w0, [x3, #5]                                          
    40035e88:   0b00216b    add w11, w11, w0, lsl #8                                      
      case 5 : b+=k[4];                                                                   
    40035e8c:   39401060    ldrb    w0, [x3, #4]                                          
    40035e90:   0b00016b    add w11, w11, w0                                              
      case 4 : a+=((uint32_t)k[3])<<24;                                                   
    40035e94:   39400c60    ldrb    w0, [x3, #3]                                          
    40035e98:   0b0060e7    add w7, w7, w0, lsl #24                                       
    40035e9c:   17ffffdb    b   40035e08 <rtems_rfs_dir_hash+0x108>                       
    switch(length)                   /* all the case statements fall through */           
    40035ea0:   f100283f    cmp x1, #0xa                                                  
    40035ea4:   54000120    b.eq    40035ec8 <rtems_rfs_dir_hash+0x1c8>  // b.none        
    40035ea8:   54000289    b.ls    40035ef8 <rtems_rfs_dir_hash+0x1f8>  // b.plast       <== ALWAYS TAKEN
    40035eac:   f1002c3f    cmp x1, #0xb                                                  <== NOT EXECUTED
    40035eb0:   54000080    b.eq    40035ec0 <rtems_rfs_dir_hash+0x1c0>  // b.none        <== NOT EXECUTED
      case 12: c+=((uint32_t)k[11])<<24;                                                  
    40035eb4:   39402c60    ldrb    w0, [x3, #11]                                         <== NOT EXECUTED
    40035eb8:   0b0060c6    add w6, w6, w0, lsl #24                                       <== NOT EXECUTED
    40035ebc:   d503201f    nop                                                           <== NOT EXECUTED
      case 11: c+=((uint32_t)k[10])<<16;                                                  
    40035ec0:   39402860    ldrb    w0, [x3, #10]                                         <== NOT EXECUTED
    40035ec4:   0b0040c6    add w6, w6, w0, lsl #16                                       <== NOT EXECUTED
      case 10: c+=((uint32_t)k[9])<<8;                                                    
    40035ec8:   39402460    ldrb    w0, [x3, #9]                                          
    40035ecc:   0b0020c6    add w6, w6, w0, lsl #8                                        
      case 9 : c+=k[8];                                                                   
    40035ed0:   39402060    ldrb    w0, [x3, #8]                                          
    40035ed4:   0b0000c6    add w6, w6, w0                                                
      case 8 : b+=((uint32_t)k[7])<<24;                                                   
    40035ed8:   39401c60    ldrb    w0, [x3, #7]                                          
    40035edc:   0b00616b    add w11, w11, w0, lsl #24                                     
      case 7 : b+=((uint32_t)k[6])<<16;                                                   
    40035ee0:   39401860    ldrb    w0, [x3, #6]                                          
    40035ee4:   0b00416b    add w11, w11, w0, lsl #16                                     
    40035ee8:   17ffffe7    b   40035e84 <rtems_rfs_dir_hash+0x184>                       
    switch(length)                   /* all the case statements fall through */           
    40035eec:   f100043f    cmp x1, #0x1                                                  
    40035ef0:   54fff940    b.eq    40035e18 <rtems_rfs_dir_hash+0x118>  // b.none        <== ALWAYS TAKEN
    40035ef4:   17ffffe0    b   40035e74 <rtems_rfs_dir_hash+0x174>                       <== NOT EXECUTED
    40035ef8:   f100203f    cmp x1, #0x8                                                  
    40035efc:   54fffee0    b.eq    40035ed8 <rtems_rfs_dir_hash+0x1d8>  // b.none        
    40035f00:   f100243f    cmp x1, #0x9                                                  
    40035f04:   54fffb81    b.ne    40035e74 <rtems_rfs_dir_hash+0x174>  // b.any         <== NEVER TAKEN
      case 9 : c+=k[8];                                                                   
    40035f08:   39402060    ldrb    w0, [x3, #8]                                          
    40035f0c:   0b0000c6    add w6, w6, w0                                                
    40035f10:   17fffff2    b   40035ed8 <rtems_rfs_dir_hash+0x1d8>                       
    ...                                                                                   
                                                                                          

00000000400349d0 <rtems_rfs_dir_lookup_ino>: rtems_rfs_inode_handle* inode, const char* name, int length, rtems_rfs_ino* ino, uint32_t* offset) {
    400349d0:   a9b07bfd    stp x29, x30, [sp, #-256]!                                    
    400349d4:   910003fd    mov x29, sp                                                   
    400349d8:   a90153f3    stp x19, x20, [sp, #16]                                       
    400349dc:   aa0403f4    mov x20, x4                                                   
    400349e0:   a9025bf5    stp x21, x22, [sp, #32]                                       
    400349e4:   a90363f7    stp x23, x24, [sp, #48]                                       
    400349e8:   aa0203f8    mov x24, x2                                                   
    400349ec:   93407c77    sxtw    x23, w3                                               
    400349f0:   a9046bf9    stp x25, x26, [sp, #64]                                       
    400349f4:   aa0003fa    mov x26, x0                                                   
  rtems_rfs_block_map     map;                                                            
  rtems_rfs_buffer_handle entries;                                                        
  int                     rc;                                                             
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))                                   
    400349f8:   d2a08000    mov x0, #0x4000000              // #67108864                  
{                                                                                         
    400349fc:   f90033e1    str x1, [sp, #96]                                             
    40034a00:   f9003be5    str x5, [sp, #112]                                            
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))                                   
    40034a04:   97ffd813    bl  4002aa50 <rtems_rfs_trace>                                
    40034a08:   72001c1f    tst w0, #0xff                                                 
    40034a0c:   54001d01    b.ne    40034dac <rtems_rfs_dir_lookup_ino+0x3dc>  // b.any   <== NEVER TAKEN
      printf ("%c", name[c]);                                                             
    printf (", len=%d\n", length);                                                        
  }                                                                                       
                                                                                          
  *ino = RTEMS_RFS_EMPTY_INO;                                                             
  *offset = 0;                                                                            
    40034a10:   f9403be0    ldr x0, [sp, #112]                                            
  *ino = RTEMS_RFS_EMPTY_INO;                                                             
    40034a14:   b900029f    str wzr, [x20]                                                
                                                                                          
  rc = rtems_rfs_block_map_open (fs, inode, &map);                                        
    40034a18:   f94033e1    ldr x1, [sp, #96]                                             
    40034a1c:   910283e2    add x2, sp, #0xa0                                             
  *offset = 0;                                                                            
    40034a20:   b900001f    str wzr, [x0]                                                 
  rc = rtems_rfs_block_map_open (fs, inode, &map);                                        
    40034a24:   aa1a03e0    mov x0, x26                                                   
    40034a28:   97fffcb6    bl  40033d00 <rtems_rfs_block_map_open>                       
    40034a2c:   2a0003f6    mov w22, w0                                                   
  if (rc > 0)                                                                             
    40034a30:   7100001f    cmp w0, #0x0                                                  
    40034a34:   5400192c    b.gt    40034d58 <rtems_rfs_dir_lookup_ino+0x388>             <== NEVER TAKEN
    uint32_t           hash;                                                              
                                                                                          
    /*                                                                                    
     * Calculate the hash of the look up string.                                          
     */                                                                                   
    hash = rtems_rfs_dir_hash (name, length);                                             
    40034a38:   aa1703e1    mov x1, x23                                                   
    40034a3c:   aa1803e0    mov x0, x24                                                   
  handle->dirty = false;                                                                  
    40034a40:   390243ff    strb    wzr, [sp, #144]                                       
  handle->bnum  = 0;                                                                      
    40034a44:   b90097ff    str wzr, [sp, #148]                                           
  handle->buffer = NULL;                                                                  
    40034a48:   f9004fff    str xzr, [sp, #152]                                           
    40034a4c:   940004ad    bl  40035d00 <rtems_rfs_dir_hash>                             
                                                                                          
    /*                                                                                    
     * Locate the first block. The map points to the start after open so just             
     * seek 0. If an error the block will be 0.                                           
     */                                                                                   
    rc = rtems_rfs_block_map_seek (fs, &map, 0, &block);                                  
    40034a50:   910233e3    add x3, sp, #0x8c                                             
    hash = rtems_rfs_dir_hash (name, length);                                             
    40034a54:   2a0003f5    mov w21, w0                                                   
    rc = rtems_rfs_block_map_seek (fs, &map, 0, &block);                                  
    40034a58:   910283e1    add x1, sp, #0xa0                                             
    40034a5c:   aa1a03e0    mov x0, x26                                                   
    40034a60:   d2800002    mov x2, #0x0                    // #0                         
    40034a64:   97fffdd7    bl  400341c0 <rtems_rfs_block_map_seek>                       
    40034a68:   2a0003f6    mov w22, w0                                                   
    if (rc > 0)                                                                           
    40034a6c:   7100001f    cmp w0, #0x0                                                  
    40034a70:   54001c6c    b.gt    40034dfc <rtems_rfs_dir_lookup_ino+0x42c>             <== NEVER TAKEN
    40034a74:   a90573fb    stp x27, x28, [sp, #80]                                       
    while ((rc == 0) && block)                                                            
    {                                                                                     
      uint8_t* entry;                                                                     
                                                                                          
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))                               
        printf ("rtems-rfs: dir-lookup-ino: block read, ino=%" PRIu32 " bno=%" PRId32 "\n",
    40034a78:   d00000bc    adrp    x28, 4004a000 <status_code_text+0x38>                 
    40034a7c:   911a2380    add x0, x28, #0x688                                           
    40034a80:   f9003fe0    str x0, [sp, #120]                                            
        }                                                                                 
                                                                                          
        if (ehash == hash)                                                                
        {                                                                                 
          if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO_CHECK))                     
            printf ("rtems-rfs: dir-lookup-ino: "                                         
    40034a84:   d00000bb    adrp    x27, 4004a000 <status_code_text+0x38>                 
    40034a88:   911d2360    add x0, x27, #0x748                                           
    40034a8c:   f90037e0    str x0, [sp, #104]                                            
    while ((rc == 0) && block)                                                            
    40034a90:   35000c96    cbnz    w22, 40034c20 <rtems_rfs_dir_lookup_ino+0x250>        <== NEVER TAKEN
    40034a94:   b9408fe0    ldr w0, [sp, #140]                                            
    40034a98:   34001fe0    cbz w0, 40034e94 <rtems_rfs_dir_lookup_ino+0x4c4>             <== NEVER TAKEN
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))                               
    40034a9c:   d2a08000    mov x0, #0x4000000              // #67108864                  
    40034aa0:   97ffd7ec    bl  4002aa50 <rtems_rfs_trace>                                
    40034aa4:   72001c1f    tst w0, #0xff                                                 
    40034aa8:   540014c1    b.ne    40034d40 <rtems_rfs_dir_lookup_ino+0x370>  // b.any   <== NEVER TAKEN
      rc = rtems_rfs_buffer_handle_request (fs, &entries, block, true);                   
    40034aac:   b9408fe2    ldr w2, [sp, #140]                                            
    40034ab0:   910243e1    add x1, sp, #0x90                                             
    40034ab4:   aa1a03e0    mov x0, x26                                                   
    40034ab8:   52800023    mov w3, #0x1                    // #1                         
    40034abc:   97ffc945    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
    40034ac0:   2a0003f6    mov w22, w0                                                   
      if (rc > 0)                                                                         
    40034ac4:   7100001f    cmp w0, #0x0                                                  
    40034ac8:   5400206c    b.gt    40034ed4 <rtems_rfs_dir_lookup_ino+0x504>             <== NEVER TAKEN
      entry = rtems_rfs_buffer_data (&entries);                                           
    40034acc:   f9404fe0    ldr x0, [sp, #152]                                            
      map.bpos.boff = 0;                                                                  
    40034ad0:   b900bfff    str wzr, [sp, #188]                                           
      while (map.bpos.boff < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))   
    40034ad4:   f9400b45    ldr x5, [x26, #16]                                            
      entry = rtems_rfs_buffer_data (&entries);                                           
    40034ad8:   f9401c13    ldr x19, [x0, #56]                                            
      while (map.bpos.boff < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))   
    40034adc:   f10028bf    cmp x5, #0xa                                                  
    40034ae0:   540007c0    b.eq    40034bd8 <rtems_rfs_dir_lookup_ino+0x208>  // b.none  <== NEVER TAKEN
        if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)                                         
    40034ae4:   529ffffb    mov w27, #0xffff                    // #65535                 
    40034ae8:   14000008    b   40034b08 <rtems_rfs_dir_lookup_ino+0x138>                 
            rtems_rfs_block_map_close (fs, &map);                                         
            return 0;                                                                     
          }                                                                               
        }                                                                                 
                                                                                          
        map.bpos.boff += elength;                                                         
    40034aec:   b940bfe0    ldr w0, [sp, #188]                                            
      while (map.bpos.boff < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))   
    40034af0:   d10028a1    sub x1, x5, #0xa                                              
        entry += elength;                                                                 
    40034af4:   8b392273    add x19, x19, w25, uxth                                       
        map.bpos.boff += elength;                                                         
    40034af8:   0b000387    add w7, w28, w0                                               
    40034afc:   b900bfe7    str w7, [sp, #188]                                            
      while (map.bpos.boff < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))   
    40034b00:   eb27403f    cmp x1, w7, uxtw                                              
    40034b04:   540006a9    b.ls    40034bd8 <rtems_rfs_dir_lookup_ino+0x208>  // b.plast <== NEVER TAKEN
        if (ehash == hash)                                                                
    40034b08:   39400260    ldrb    w0, [x19]                                             
    40034b0c:   39400666    ldrb    w6, [x19, #1]                                         
    40034b10:   39400a64    ldrb    w4, [x19, #2]                                         
    40034b14:   39401262    ldrb    w2, [x19, #4]                                         
    40034b18:   aa062006    orr x6, x0, x6, lsl #8                                        
    40034b1c:   39401663    ldrb    w3, [x19, #5]                                         
    40034b20:   39400e61    ldrb    w1, [x19, #3]                                         
    40034b24:   aa0440c4    orr x4, x6, x4, lsl #16                                       
    40034b28:   39402267    ldrb    w7, [x19, #8]                                         
    40034b2c:   39402666    ldrb    w6, [x19, #9]                                         
    40034b30:   aa032043    orr x3, x2, x3, lsl #8                                        
    40034b34:   39401a60    ldrb    w0, [x19, #6]                                         
    40034b38:   aa016081    orr x1, x4, x1, lsl #24                                       
    40034b3c:   39401e62    ldrb    w2, [x19, #7]                                         
    40034b40:   5ac00821    rev w1, w1                                                    
    40034b44:   aa0620e6    orr x6, x7, x6, lsl #8                                        
        *ino = rtems_rfs_dir_entry_ino (entry);                                           
    40034b48:   b9000281    str w1, [x20]                                                 
    40034b4c:   5ac004d9    rev16   w25, w6                                               
    40034b50:   aa004060    orr x0, x3, x0, lsl #16                                       
    40034b54:   aa026002    orr x2, x0, x2, lsl #24                                       
    40034b58:   12003f3c    and w28, w25, #0xffff                                         
    40034b5c:   5ac00842    rev w2, w2                                                    
        if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)                                         
    40034b60:   6b1b039f    cmp w28, w27                                                  
    40034b64:   540003a0    b.eq    40034bd8 <rtems_rfs_dir_lookup_ino+0x208>  // b.none  
        if (rtems_rfs_dir_entry_valid (fs, elength, *ino))                                
    40034b68:   71002b9f    cmp w28, #0xa                                                 
    40034b6c:   5400050d    b.le    40034c0c <rtems_rfs_dir_lookup_ino+0x23c>             <== NEVER TAKEN
    40034b70:   b9403340    ldr w0, [x26, #48]                                            
    40034b74:   7100003f    cmp w1, #0x0                                                  
    40034b78:   7a5c1000    ccmp    w0, w28, #0x0, ne  // ne = any                        
    40034b7c:   54000489    b.ls    40034c0c <rtems_rfs_dir_lookup_ino+0x23c>  // b.plast <== NEVER TAKEN
    40034b80:   b9402b40    ldr w0, [x26, #40]                                            
    40034b84:   6b00003f    cmp w1, w0                                                    
    40034b88:   54000428    b.hi    40034c0c <rtems_rfs_dir_lookup_ino+0x23c>  // b.pmore <== NEVER TAKEN
        if (ehash == hash)                                                                
    40034b8c:   6b0202bf    cmp w21, w2                                                   
    40034b90:   54fffae1    b.ne    40034aec <rtems_rfs_dir_lookup_ino+0x11c>  // b.any   
          if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO_CHECK))                     
    40034b94:   d2a10000    mov x0, #0x8000000              // #134217728                 
    40034b98:   97ffd7ae    bl  4002aa50 <rtems_rfs_trace>                                
    40034b9c:   72001c1f    tst w0, #0xff                                                 
    40034ba0:   54000761    b.ne    40034c8c <rtems_rfs_dir_lookup_ino+0x2bc>  // b.any   <== NEVER TAKEN
          if (memcmp (entry + RTEMS_RFS_DIR_ENTRY_SIZE, name, length) == 0)               
    40034ba4:   aa1703e2    mov x2, x23                                                   
    40034ba8:   aa1803e1    mov x1, x24                                                   
    40034bac:   91002a60    add x0, x19, #0xa                                             
    40034bb0:   94002485    bl  4003ddc4 <memcmp>                                         
    40034bb4:   34000900    cbz w0, 40034cd4 <rtems_rfs_dir_lookup_ino+0x304>             <== ALWAYS TAKEN
        map.bpos.boff += elength;                                                         
    40034bb8:   b940bfe0    ldr w0, [sp, #188]                                            <== NOT EXECUTED
        entry += elength;                                                                 
    40034bbc:   8b392273    add x19, x19, w25, uxth                                       <== NOT EXECUTED
    40034bc0:   f9400b45    ldr x5, [x26, #16]                                            <== NOT EXECUTED
        map.bpos.boff += elength;                                                         
    40034bc4:   0b000387    add w7, w28, w0                                               <== NOT EXECUTED
    40034bc8:   b900bfe7    str w7, [sp, #188]                                            <== NOT EXECUTED
      while (map.bpos.boff < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))   
    40034bcc:   d10028a1    sub x1, x5, #0xa                                              <== NOT EXECUTED
    40034bd0:   eb27403f    cmp x1, w7, uxtw                                              <== NOT EXECUTED
    40034bd4:   54fff9a8    b.hi    40034b08 <rtems_rfs_dir_lookup_ino+0x138>  // b.pmore <== NOT EXECUTED
      }                                                                                   
                                                                                          
      if (rc == 0)                                                                        
    40034bd8:   35000256    cbnz    w22, 40034c20 <rtems_rfs_dir_lookup_ino+0x250>        <== NEVER TAKEN
      {                                                                                   
        rc = rtems_rfs_block_map_next_block (fs, &map, &block);                           
    40034bdc:   910233e2    add x2, sp, #0x8c                                             
    40034be0:   910283e1    add x1, sp, #0xa0                                             
    40034be4:   aa1a03e0    mov x0, x26                                                   
    40034be8:   97fffd86    bl  40034200 <rtems_rfs_block_map_next_block>                 
        if ((rc > 0) && (rc != ENXIO))                                                    
    40034bec:   7100001f    cmp w0, #0x0                                                  
        rc = rtems_rfs_block_map_next_block (fs, &map, &block);                           
    40034bf0:   2a0003f6    mov w22, w0                                                   
        if ((rc > 0) && (rc != ENXIO))                                                    
    40034bf4:   7a46c804    ccmp    w0, #0x6, #0x4, gt                                    
    40034bf8:   54001301    b.ne    40034e58 <rtems_rfs_dir_lookup_ino+0x488>  // b.any   <== NEVER TAKEN
          if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))                           
            printf ("rtems-rfs: dir-lookup-ino: "                                         
                    "block map next block failed in ino %" PRIu32 ": %d: %s\n",           
                    rtems_rfs_inode_ino (inode), rc, strerror (rc));                      
        }                                                                                 
        if (rc == ENXIO)                                                                  
    40034bfc:   7100181f    cmp w0, #0x6                                                  
    40034c00:   54fff481    b.ne    40034a90 <rtems_rfs_dir_lookup_ino+0xc0>  // b.any    <== NEVER TAKEN
          rc = ENOENT;                                                                    
    40034c04:   52800056    mov w22, #0x2                       // #2                     
    40034c08:   14000006    b   40034c20 <rtems_rfs_dir_lookup_ino+0x250>                 
          if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))                           
    40034c0c:   d2a08000    mov x0, #0x4000000              // #67108864                  <== NOT EXECUTED
    40034c10:   97ffd790    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40034c14:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40034c18:   54000261    b.ne    40034c64 <rtems_rfs_dir_lookup_ino+0x294>  // b.any   <== NOT EXECUTED
          rc = EIO;                                                                       
    40034c1c:   528000b6    mov w22, #0x5                       // #5                     <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40034c20:   910243e1    add x1, sp, #0x90                                             
    40034c24:   aa1a03e0    mov x0, x26                                                   
    40034c28:   97ffc99a    bl  40027290 <rtems_rfs_buffer_handle_release>                
  handle->dirty = false;                                                                  
    40034c2c:   390243ff    strb    wzr, [sp, #144]                                       
                rtems_rfs_inode_ino (inode), rc, strerror (rc));                          
    }                                                                                     
  }                                                                                       
                                                                                          
  rtems_rfs_buffer_handle_close (fs, &entries);                                           
  rtems_rfs_block_map_close (fs, &map);                                                   
    40034c30:   910283e1    add x1, sp, #0xa0                                             
    40034c34:   aa1a03e0    mov x0, x26                                                   
  handle->bnum  = 0;                                                                      
    40034c38:   b90097ff    str wzr, [sp, #148]                                           
  handle->buffer = NULL;                                                                  
    40034c3c:   f9004fff    str xzr, [sp, #152]                                           
    40034c40:   97fffc94    bl  40033e90 <rtems_rfs_block_map_close>                      
  return rc;                                                                              
    40034c44:   a94573fb    ldp x27, x28, [sp, #80]                                       
}                                                                                         
    40034c48:   2a1603e0    mov w0, w22                                                   
    40034c4c:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40034c50:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40034c54:   a94363f7    ldp x23, x24, [sp, #48]                                       
    40034c58:   a9446bf9    ldp x25, x26, [sp, #64]                                       
    40034c5c:   a8d07bfd    ldp x29, x30, [sp], #256                                      
    40034c60:   d65f03c0    ret                                                           
            printf ("rtems-rfs: dir-lookup-ino: "                                         
    40034c64:   f94033e1    ldr x1, [sp, #96]                                             <== NOT EXECUTED
    40034c68:   2a1c03e2    mov w2, w28                                                   <== NOT EXECUTED
    40034c6c:   b9400283    ldr w3, [x20]                                                 <== NOT EXECUTED
    40034c70:   d00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40034c74:   911c0000    add x0, x0, #0x700                                            <== NOT EXECUTED
    40034c78:   b940bfe4    ldr w4, [sp, #188]                                            <== NOT EXECUTED
    40034c7c:   b9401021    ldr w1, [x1, #16]                                             <== NOT EXECUTED
          rc = EIO;                                                                       
    40034c80:   528000b6    mov w22, #0x5                       // #5                     <== NOT EXECUTED
            printf ("rtems-rfs: dir-lookup-ino: "                                         
    40034c84:   97ffb5e3    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    while ((rc == 0) && block)                                                            
    40034c88:   17ffffe6    b   40034c20 <rtems_rfs_dir_lookup_ino+0x250>                 <== NOT EXECUTED
            printf ("rtems-rfs: dir-lookup-ino: "                                         
    40034c8c:   39400263    ldrb    w3, [x19]                                             <== NOT EXECUTED
    40034c90:   2a1c03e4    mov w4, w28                                                   <== NOT EXECUTED
    40034c94:   39400661    ldrb    w1, [x19, #1]                                         <== NOT EXECUTED
    40034c98:   39400a6a    ldrb    w10, [x19, #2]                                        <== NOT EXECUTED
    40034c9c:   39400e65    ldrb    w5, [x19, #3]                                         <== NOT EXECUTED
    40034ca0:   aa012061    orr x1, x3, x1, lsl #8                                        <== NOT EXECUTED
    40034ca4:   aa0a402a    orr x10, x1, x10, lsl #16                                     <== NOT EXECUTED
    40034ca8:   a94603e1    ldp x1, x0, [sp, #96]                                         <== NOT EXECUTED
    40034cac:   aa056145    orr x5, x10, x5, lsl #24                                      <== NOT EXECUTED
    40034cb0:   29570fe2    ldp w2, w3, [sp, #184]                                        <== NOT EXECUTED
    40034cb4:   5ac008a5    rev w5, w5                                                    <== NOT EXECUTED
    40034cb8:   b9401021    ldr w1, [x1, #16]                                             <== NOT EXECUTED
    40034cbc:   97ffb5d5    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
          if (memcmp (entry + RTEMS_RFS_DIR_ENTRY_SIZE, name, length) == 0)               
    40034cc0:   aa1703e2    mov x2, x23                                                   <== NOT EXECUTED
    40034cc4:   aa1803e1    mov x1, x24                                                   <== NOT EXECUTED
    40034cc8:   91002a60    add x0, x19, #0xa                                             <== NOT EXECUTED
    40034ccc:   9400243e    bl  4003ddc4 <memcmp>                                         <== NOT EXECUTED
    40034cd0:   35fff740    cbnz    w0, 40034bb8 <rtems_rfs_dir_lookup_ino+0x1e8>         <== NOT EXECUTED
            *offset = rtems_rfs_block_map_pos (fs, &map);                                 
    40034cd4:   9102e3e1    add x1, sp, #0xb8                                             
    40034cd8:   aa1a03e0    mov x0, x26                                                   
    40034cdc:   97fffbf9    bl  40033cc0 <rtems_rfs_block_get_pos>                        
    40034ce0:   f9403be1    ldr x1, [sp, #112]                                            
    40034ce4:   b9000020    str w0, [x1]                                                  
            if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO_FOUND))                   
    40034ce8:   d2a20000    mov x0, #0x10000000             // #268435456                 
    40034cec:   97ffd759    bl  4002aa50 <rtems_rfs_trace>                                
    40034cf0:   72001c1f    tst w0, #0xff                                                 
    40034cf4:   54001221    b.ne    40034f38 <rtems_rfs_dir_lookup_ino+0x568>  // b.any   <== NEVER TAKEN
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40034cf8:   910243e1    add x1, sp, #0x90                                             
    40034cfc:   aa1a03e0    mov x0, x26                                                   
    40034d00:   97ffc964    bl  40027290 <rtems_rfs_buffer_handle_release>                
            return 0;                                                                     
    40034d04:   52800016    mov w22, #0x0                       // #0                     
            rtems_rfs_block_map_close (fs, &map);                                         
    40034d08:   910283e1    add x1, sp, #0xa0                                             
    40034d0c:   aa1a03e0    mov x0, x26                                                   
  handle->dirty = false;                                                                  
    40034d10:   390243ff    strb    wzr, [sp, #144]                                       
  handle->bnum  = 0;                                                                      
    40034d14:   b90097ff    str wzr, [sp, #148]                                           
  handle->buffer = NULL;                                                                  
    40034d18:   f9004fff    str xzr, [sp, #152]                                           
    40034d1c:   97fffc5d    bl  40033e90 <rtems_rfs_block_map_close>                      
}                                                                                         
    40034d20:   2a1603e0    mov w0, w22                                                   
    40034d24:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40034d28:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40034d2c:   a94363f7    ldp x23, x24, [sp, #48]                                       
    40034d30:   a9446bf9    ldp x25, x26, [sp, #64]                                       
            return 0;                                                                     
    40034d34:   a94573fb    ldp x27, x28, [sp, #80]                                       
}                                                                                         
    40034d38:   a8d07bfd    ldp x29, x30, [sp], #256                                      
    40034d3c:   d65f03c0    ret                                                           
        printf ("rtems-rfs: dir-lookup-ino: block read, ino=%" PRIu32 " bno=%" PRId32 "\n",
    40034d40:   f94033e1    ldr x1, [sp, #96]                                             <== NOT EXECUTED
    40034d44:   b940bbe2    ldr w2, [sp, #184]                                            <== NOT EXECUTED
    40034d48:   f9403fe0    ldr x0, [sp, #120]                                            <== NOT EXECUTED
    40034d4c:   b9401021    ldr w1, [x1, #16]                                             <== NOT EXECUTED
    40034d50:   97ffb5b0    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40034d54:   17ffff56    b   40034aac <rtems_rfs_dir_lookup_ino+0xdc>                  <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))                                 
    40034d58:   d2a08000    mov x0, #0x4000000              // #67108864                  <== NOT EXECUTED
    40034d5c:   97ffd73d    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40034d60:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40034d64:   54fff720    b.eq    40034c48 <rtems_rfs_dir_lookup_ino+0x278>  // b.none  <== NOT EXECUTED
      printf ("rtems-rfs: dir-lookup-ino: map open failed for ino %" PRIu32 ": %d: %s",   
    40034d68:   f94033e0    ldr x0, [sp, #96]                                             <== NOT EXECUTED
    40034d6c:   b9401013    ldr w19, [x0, #16]                                            <== NOT EXECUTED
    40034d70:   2a1603e0    mov w0, w22                                                   <== NOT EXECUTED
    40034d74:   940027aa    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40034d78:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    40034d7c:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40034d80:   2a1603e2    mov w2, w22                                                   <== NOT EXECUTED
    40034d84:   d00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40034d88:   91182000    add x0, x0, #0x608                                            <== NOT EXECUTED
    40034d8c:   97ffb5a1    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
}                                                                                         
    40034d90:   2a1603e0    mov w0, w22                                                   <== NOT EXECUTED
    40034d94:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40034d98:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40034d9c:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40034da0:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    40034da4:   a8d07bfd    ldp x29, x30, [sp], #256                                      <== NOT EXECUTED
    40034da8:   d65f03c0    ret                                                           <== NOT EXECUTED
    printf ("rtems-rfs: dir-lookup-ino: lookup ino: root=%" PRId32 ", path=",             
    40034dac:   f94033e0    ldr x0, [sp, #96]                                             <== NOT EXECUTED
    40034db0:   b9401001    ldr w1, [x0, #16]                                             <== NOT EXECUTED
    40034db4:   d00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40034db8:   91170000    add x0, x0, #0x5c0                                            <== NOT EXECUTED
    40034dbc:   97ffb595    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    for (c = 0; c < length; c++)                                                          
    40034dc0:   710002ff    cmp w23, #0x0                                                 <== NOT EXECUTED
    40034dc4:   5400012d    b.le    40034de8 <rtems_rfs_dir_lookup_ino+0x418>             <== NOT EXECUTED
    40034dc8:   510006f5    sub w21, w23, #0x1                                            <== NOT EXECUTED
    40034dcc:   91000700    add x0, x24, #0x1                                             <== NOT EXECUTED
    40034dd0:   8b0002b5    add x21, x21, x0                                              <== NOT EXECUTED
    40034dd4:   aa1803f3    mov x19, x24                                                  <== NOT EXECUTED
      printf ("%c", name[c]);                                                             
    40034dd8:   38401660    ldrb    w0, [x19], #1                                         <== NOT EXECUTED
    40034ddc:   94002489    bl  4003e000 <putchar>                                        <== NOT EXECUTED
    for (c = 0; c < length; c++)                                                          
    40034de0:   eb1302bf    cmp x21, x19                                                  <== NOT EXECUTED
    40034de4:   54ffffa1    b.ne    40034dd8 <rtems_rfs_dir_lookup_ino+0x408>  // b.any   <== NOT EXECUTED
    printf (", len=%d\n", length);                                                        
    40034de8:   2a1703e1    mov w1, w23                                                   <== NOT EXECUTED
    40034dec:   d00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40034df0:   9117e000    add x0, x0, #0x5f8                                            <== NOT EXECUTED
    40034df4:   97ffb587    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40034df8:   17ffff06    b   40034a10 <rtems_rfs_dir_lookup_ino+0x40>                  <== NOT EXECUTED
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))                               
    40034dfc:   d2a08000    mov x0, #0x4000000              // #67108864                  <== NOT EXECUTED
    40034e00:   97ffd714    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40034e04:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40034e08:   54000881    b.ne    40034f18 <rtems_rfs_dir_lookup_ino+0x548>  // b.any   <== NOT EXECUTED
        rc = ENOENT;                                                                      
    40034e0c:   71001adf    cmp w22, #0x6                                                 <== NOT EXECUTED
    40034e10:   52800040    mov w0, #0x2                    // #2                         <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40034e14:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
    40034e18:   1a8012d6    csel    w22, w22, w0, ne  // ne = any                         <== NOT EXECUTED
    40034e1c:   aa1a03e0    mov x0, x26                                                   <== NOT EXECUTED
    40034e20:   97ffc91c    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40034e24:   390243ff    strb    wzr, [sp, #144]                                       <== NOT EXECUTED
      rtems_rfs_block_map_close (fs, &map);                                               
    40034e28:   910283e1    add x1, sp, #0xa0                                             <== NOT EXECUTED
    40034e2c:   aa1a03e0    mov x0, x26                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    40034e30:   b90097ff    str wzr, [sp, #148]                                           <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40034e34:   f9004fff    str xzr, [sp, #152]                                           <== NOT EXECUTED
    40034e38:   97fffc16    bl  40033e90 <rtems_rfs_block_map_close>                      <== NOT EXECUTED
}                                                                                         
    40034e3c:   2a1603e0    mov w0, w22                                                   <== NOT EXECUTED
    40034e40:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40034e44:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40034e48:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40034e4c:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    40034e50:   a8d07bfd    ldp x29, x30, [sp], #256                                      <== NOT EXECUTED
    40034e54:   d65f03c0    ret                                                           <== NOT EXECUTED
          if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))                           
    40034e58:   d2a08000    mov x0, #0x4000000              // #67108864                  <== NOT EXECUTED
    40034e5c:   97ffd6fd    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40034e60:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40034e64:   54ffe160    b.eq    40034a90 <rtems_rfs_dir_lookup_ino+0xc0>  // b.none   <== NOT EXECUTED
            printf ("rtems-rfs: dir-lookup-ino: "                                         
    40034e68:   f94033e0    ldr x0, [sp, #96]                                             <== NOT EXECUTED
    40034e6c:   b9401013    ldr w19, [x0, #16]                                            <== NOT EXECUTED
    40034e70:   2a1603e0    mov w0, w22                                                   <== NOT EXECUTED
    40034e74:   9400276a    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40034e78:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    40034e7c:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40034e80:   2a1603e2    mov w2, w22                                                   <== NOT EXECUTED
    40034e84:   d00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40034e88:   911fc000    add x0, x0, #0x7f0                                            <== NOT EXECUTED
    40034e8c:   97ffb561    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40034e90:   17ffff00    b   40034a90 <rtems_rfs_dir_lookup_ino+0xc0>                  <== NOT EXECUTED
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))                               
    40034e94:   d2a08000    mov x0, #0x4000000              // #67108864                  <== NOT EXECUTED
    40034e98:   97ffd6ee    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40034e9c:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40034ea0:   54ffebe0    b.eq    40034c1c <rtems_rfs_dir_lookup_ino+0x24c>  // b.none  <== NOT EXECUTED
        printf ("rtems-rfs: dir-lookup-ino: block is 0 in ino %" PRIu32 ": %d: %s\n",     
    40034ea4:   f94033e0    ldr x0, [sp, #96]                                             <== NOT EXECUTED
    40034ea8:   b9401013    ldr w19, [x0, #16]                                            <== NOT EXECUTED
    40034eac:   528000a0    mov w0, #0x5                    // #5                         <== NOT EXECUTED
    40034eb0:   9400275b    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40034eb4:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    40034eb8:   528000a2    mov w2, #0x5                    // #5                         <== NOT EXECUTED
    40034ebc:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
      rc = EIO;                                                                           
    40034ec0:   2a0203f6    mov w22, w2                                                   <== NOT EXECUTED
        printf ("rtems-rfs: dir-lookup-ino: block is 0 in ino %" PRIu32 ": %d: %s\n",     
    40034ec4:   d00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40034ec8:   91210000    add x0, x0, #0x840                                            <== NOT EXECUTED
    40034ecc:   97ffb551    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40034ed0:   17ffff54    b   40034c20 <rtems_rfs_dir_lookup_ino+0x250>                 <== NOT EXECUTED
        if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))                             
    40034ed4:   d2a08000    mov x0, #0x4000000              // #67108864                  <== NOT EXECUTED
    40034ed8:   97ffd6de    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40034edc:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40034ee0:   54ffea00    b.eq    40034c20 <rtems_rfs_dir_lookup_ino+0x250>  // b.none  <== NOT EXECUTED
          printf ("rtems-rfs: dir-lookup-ino: block read, ino=%" PRIu32 " block=%" PRId32 ": %d: %s\n",
    40034ee4:   f94033e1    ldr x1, [sp, #96]                                             <== NOT EXECUTED
    40034ee8:   2a1603e0    mov w0, w22                                                   <== NOT EXECUTED
    40034eec:   b9408ff4    ldr w20, [sp, #140]                                           <== NOT EXECUTED
    40034ef0:   b9401033    ldr w19, [x1, #16]                                            <== NOT EXECUTED
    40034ef4:   9400274a    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40034ef8:   2a1403e2    mov w2, w20                                                   <== NOT EXECUTED
    40034efc:   aa0003e4    mov x4, x0                                                    <== NOT EXECUTED
    40034f00:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40034f04:   2a1603e3    mov w3, w22                                                   <== NOT EXECUTED
    40034f08:   d00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40034f0c:   911b0000    add x0, x0, #0x6c0                                            <== NOT EXECUTED
    40034f10:   97ffb540    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40034f14:   17ffff43    b   40034c20 <rtems_rfs_dir_lookup_ino+0x250>                 <== NOT EXECUTED
        printf ("rtems-rfs: dir-lookup-ino: block map find failed: %d: %s\n",             
    40034f18:   2a1603e0    mov w0, w22                                                   <== NOT EXECUTED
    40034f1c:   94002740    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40034f20:   d00000a1    adrp    x1, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40034f24:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40034f28:   91192020    add x0, x1, #0x648                                            <== NOT EXECUTED
    40034f2c:   2a1603e1    mov w1, w22                                                   <== NOT EXECUTED
    40034f30:   97ffb538    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40034f34:   17ffffb6    b   40034e0c <rtems_rfs_dir_lookup_ino+0x43c>                 <== NOT EXECUTED
              printf ("rtems-rfs: dir-lookup-ino: "                                       
    40034f38:   f94033e1    ldr x1, [sp, #96]                                             <== NOT EXECUTED
    40034f3c:   f9403be0    ldr x0, [sp, #112]                                            <== NOT EXECUTED
    40034f40:   b9400282    ldr w2, [x20]                                                 <== NOT EXECUTED
    40034f44:   b9401021    ldr w1, [x1, #16]                                             <== NOT EXECUTED
    40034f48:   b9400003    ldr w3, [x0]                                                  <== NOT EXECUTED
    40034f4c:   d00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40034f50:   911ea000    add x0, x0, #0x7a8                                            <== NOT EXECUTED
    40034f54:   97ffb52f    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40034f58:   17ffff68    b   40034cf8 <rtems_rfs_dir_lookup_ino+0x328>                 <== NOT EXECUTED
    40034f5c:   00000000    udf #0                                                        
                                                                                          

0000000040035780 <rtems_rfs_dir_read>: rtems_rfs_dir_read (rtems_rfs_file_system* fs, rtems_rfs_inode_handle* dir, rtems_rfs_pos_rel offset, struct dirent* dirent, size_t* length) {
    40035780:   a9b27bfd    stp x29, x30, [sp, #-224]!                                    
    40035784:   910003fd    mov x29, sp                                                   
    40035788:   a90153f3    stp x19, x20, [sp, #16]                                       
    4003578c:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40035790:   aa0003f5    mov x21, x0                                                   
    40035794:   aa0403f6    mov x22, x4                                                   
  rtems_rfs_block_map     map;                                                            
  rtems_rfs_buffer_handle buffer;                                                         
  rtems_rfs_block_no      block;                                                          
  int                     rc;                                                             
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))                                         
    40035798:   d2b00000    mov x0, #0x80000000             // #2147483648                
{                                                                                         
    4003579c:   a90363f7    stp x23, x24, [sp, #48]                                       
    400357a0:   aa0103f8    mov x24, x1                                                   
    400357a4:   aa0203f7    mov x23, x2                                                   
    400357a8:   a9046bf9    stp x25, x26, [sp, #64]                                       
    400357ac:   aa0303fa    mov x26, x3                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))                                         
    400357b0:   97ffd4a8    bl  4002aa50 <rtems_rfs_trace>                                
    400357b4:   72001c1f    tst w0, #0xff                                                 
    400357b8:   54000d01    b.ne    40035958 <rtems_rfs_dir_read+0x1d8>  // b.any         <== NEVER TAKEN
    printf ("rtems-rfs: dir-read: dir=%" PRId32 " offset=%" PRId64 "\n",                  
            rtems_rfs_inode_ino (dir), offset);                                           
                                                                                          
  *length = 0;                                                                            
    400357bc:   f90002df    str xzr, [x22]                                                
                                                                                          
  rc = rtems_rfs_block_map_open (fs, dir, &map);                                          
    400357c0:   910203e2    add x2, sp, #0x80                                             
    400357c4:   aa1803e1    mov x1, x24                                                   
    400357c8:   aa1503e0    mov x0, x21                                                   
    400357cc:   97fff94d    bl  40033d00 <rtems_rfs_block_map_open>                       
    400357d0:   2a0003f3    mov w19, w0                                                   
  if (rc > 0)                                                                             
    400357d4:   7100001f    cmp w0, #0x0                                                  
    400357d8:   5400098c    b.gt    40035908 <rtems_rfs_dir_read+0x188>                   <== NEVER TAKEN
    return rc;                                                                            
                                                                                          
  if (((rtems_rfs_fs_block_size (fs) -                                                    
    400357dc:   f9400aa2    ldr x2, [x21, #16]                                            
        (offset % rtems_rfs_fs_block_size (fs))) <= RTEMS_RFS_DIR_ENTRY_SIZE))            
    offset = (((offset / rtems_rfs_fs_block_size (fs)) + 1) *                             
              rtems_rfs_fs_block_size (fs));                                              
                                                                                          
  rc = rtems_rfs_block_map_seek (fs, &map, offset, &block);                               
    400357e0:   9101b3e3    add x3, sp, #0x6c                                             
    400357e4:   910203e1    add x1, sp, #0x80                                             
    400357e8:   aa1503e0    mov x0, x21                                                   
        (offset % rtems_rfs_fs_block_size (fs))) <= RTEMS_RFS_DIR_ENTRY_SIZE))            
    400357ec:   9ac20ae4    udiv    x4, x23, x2                                           
    400357f0:   9b02dc85    msub    x5, x4, x2, x23                                       
    offset = (((offset / rtems_rfs_fs_block_size (fs)) + 1) *                             
    400357f4:   9b020884    madd    x4, x4, x2, x2                                        
  if (((rtems_rfs_fs_block_size (fs) -                                                    
    400357f8:   cb050042    sub x2, x2, x5                                                
    offset = (((offset / rtems_rfs_fs_block_size (fs)) + 1) *                             
    400357fc:   f1002c5f    cmp x2, #0xb                                                  
    40035800:   9a973097    csel    x23, x4, x23, cc  // cc = lo, ul, last                
  rc = rtems_rfs_block_map_seek (fs, &map, offset, &block);                               
    40035804:   aa1703e2    mov x2, x23                                                   
    40035808:   97fffa6e    bl  400341c0 <rtems_rfs_block_map_seek>                       
    4003580c:   2a0003f3    mov w19, w0                                                   
  if (rc > 0)                                                                             
    40035810:   7100001f    cmp w0, #0x0                                                  
    40035814:   5400088c    b.gt    40035924 <rtems_rfs_dir_read+0x1a4>                   <== NEVER TAKEN
    entry += map.bpos.boff;                                                               
                                                                                          
    elength = rtems_rfs_dir_entry_length (entry);                                         
    eino    = rtems_rfs_dir_entry_ino (entry);                                            
                                                                                          
    if (elength != RTEMS_RFS_DIR_ENTRY_EMPTY)                                             
    40035818:   529ffff9    mov w25, #0xffff                    // #65535                 
    4003581c:   a90573fb    stp x27, x28, [sp, #80]                                       
    }                                                                                     
                                                                                          
    *length += rtems_rfs_fs_block_size (fs) - map.bpos.boff;                              
                                                                                          
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))                                       
      printf ("rtems-rfs: dir-read: next block: off:%" PRId64 " length:%zd\n",            
    40035820:   b00000bb    adrp    x27, 4004a000 <status_code_text+0x38>                 
    40035824:   912fe37b    add x27, x27, #0xbf8                                          
  handle->dirty = false;                                                                  
    40035828:   3901c3ff    strb    wzr, [sp, #112]                                       
  handle->bnum  = 0;                                                                      
    4003582c:   b90077ff    str wzr, [sp, #116]                                           
  handle->buffer = NULL;                                                                  
    40035830:   f9003fff    str xzr, [sp, #120]                                           
  while (rc == 0)                                                                         
    40035834:   14000009    b   40035858 <rtems_rfs_dir_read+0xd8>                        
              offset, *length);                                                           
                                                                                          
    rc = rtems_rfs_block_map_next_block (fs, &map, &block);                               
    40035838:   9101b3e2    add x2, sp, #0x6c                                             
    4003583c:   910203e1    add x1, sp, #0x80                                             
    40035840:   aa1503e0    mov x0, x21                                                   
    40035844:   97fffa6f    bl  40034200 <rtems_rfs_block_map_next_block>                 
    40035848:   2a0003f3    mov w19, w0                                                   
    if (rc == ENXIO)                                                                      
    4003584c:   7100181f    cmp w0, #0x6                                                  
    40035850:   54000460    b.eq    400358dc <rtems_rfs_dir_read+0x15c>  // b.none        <== ALWAYS TAKEN
  while (rc == 0)                                                                         
    40035854:   35000460    cbnz    w0, 400358e0 <rtems_rfs_dir_read+0x160>               <== NOT EXECUTED
    rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, true);                      
    40035858:   b9406fe2    ldr w2, [sp, #108]                                            
    4003585c:   9101c3e1    add x1, sp, #0x70                                             
    40035860:   aa1503e0    mov x0, x21                                                   
    40035864:   52800023    mov w3, #0x1                    // #1                         
    40035868:   97ffc5da    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
    4003586c:   2a0003f3    mov w19, w0                                                   
    if (rc > 0)                                                                           
    40035870:   7100027f    cmp w19, #0x0                                                 
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))                                       
    40035874:   d2b00000    mov x0, #0x80000000             // #2147483648                
    if (rc > 0)                                                                           
    40035878:   5400034c    b.gt    400358e0 <rtems_rfs_dir_read+0x160>                   <== NEVER TAKEN
    entry  = rtems_rfs_buffer_data (&buffer);                                             
    4003587c:   f9403fe1    ldr x1, [sp, #120]                                            
    entry += map.bpos.boff;                                                               
    40035880:   b9409fe3    ldr w3, [sp, #156]                                            
    entry  = rtems_rfs_buffer_data (&buffer);                                             
    40035884:   f9401c3c    ldr x28, [x1, #56]                                            
    entry += map.bpos.boff;                                                               
    40035888:   8b03039c    add x28, x28, x3                                              
    elength = rtems_rfs_dir_entry_length (entry);                                         
    4003588c:   39402381    ldrb    w1, [x28, #8]                                         
    40035890:   39402794    ldrb    w20, [x28, #9]                                        
    40035894:   aa142034    orr x20, x1, x20, lsl #8                                      
    40035898:   5ac00694    rev16   w20, w20                                              
    4003589c:   12003e94    and w20, w20, #0xffff                                         
    if (elength != RTEMS_RFS_DIR_ENTRY_EMPTY)                                             
    400358a0:   6b19029f    cmp w20, w25                                                  
    400358a4:   54000661    b.ne    40035970 <rtems_rfs_dir_read+0x1f0>  // b.any         
    *length += rtems_rfs_fs_block_size (fs) - map.bpos.boff;                              
    400358a8:   f9400aa2    ldr x2, [x21, #16]                                            
    400358ac:   f94002c1    ldr x1, [x22]                                                 
    400358b0:   cb030042    sub x2, x2, x3                                                
    400358b4:   8b020021    add x1, x1, x2                                                
    400358b8:   f90002c1    str x1, [x22]                                                 
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))                                       
    400358bc:   97ffd465    bl  4002aa50 <rtems_rfs_trace>                                
    400358c0:   72001c1f    tst w0, #0xff                                                 
    400358c4:   54fffba0    b.eq    40035838 <rtems_rfs_dir_read+0xb8>  // b.none         <== ALWAYS TAKEN
      printf ("rtems-rfs: dir-read: next block: off:%" PRId64 " length:%zd\n",            
    400358c8:   f94002c2    ldr x2, [x22]                                                 <== NOT EXECUTED
    400358cc:   aa1703e1    mov x1, x23                                                   <== NOT EXECUTED
    400358d0:   aa1b03e0    mov x0, x27                                                   <== NOT EXECUTED
    400358d4:   97ffb2cf    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    400358d8:   17ffffd8    b   40035838 <rtems_rfs_dir_read+0xb8>                        <== NOT EXECUTED
      rc = ENOENT;                                                                        
    400358dc:   52800053    mov w19, #0x2                       // #2                     
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    400358e0:   9101c3e1    add x1, sp, #0x70                                             
    400358e4:   aa1503e0    mov x0, x21                                                   
    400358e8:   97ffc66a    bl  40027290 <rtems_rfs_buffer_handle_release>                
  handle->dirty = false;                                                                  
    400358ec:   3901c3ff    strb    wzr, [sp, #112]                                       
  }                                                                                       
                                                                                          
  rtems_rfs_buffer_handle_close (fs, &buffer);                                            
  rtems_rfs_block_map_close (fs, &map);                                                   
    400358f0:   910203e1    add x1, sp, #0x80                                             
    400358f4:   aa1503e0    mov x0, x21                                                   
  handle->bnum  = 0;                                                                      
    400358f8:   b90077ff    str wzr, [sp, #116]                                           
  handle->buffer = NULL;                                                                  
    400358fc:   f9003fff    str xzr, [sp, #120]                                           
    40035900:   97fff964    bl  40033e90 <rtems_rfs_block_map_close>                      
    40035904:   a94573fb    ldp x27, x28, [sp, #80]                                       
  return rc;                                                                              
}                                                                                         
    40035908:   2a1303e0    mov w0, w19                                                   
    4003590c:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40035910:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40035914:   a94363f7    ldp x23, x24, [sp, #48]                                       
    40035918:   a9446bf9    ldp x25, x26, [sp, #64]                                       
    4003591c:   a8ce7bfd    ldp x29, x30, [sp], #224                                      
    40035920:   d65f03c0    ret                                                           
      rc = ENOENT;                                                                        
    40035924:   7100181f    cmp w0, #0x6                                                  <== NOT EXECUTED
    40035928:   52800042    mov w2, #0x2                    // #2                         <== NOT EXECUTED
    rtems_rfs_block_map_close (fs, &map);                                                 
    4003592c:   910203e1    add x1, sp, #0x80                                             <== NOT EXECUTED
      rc = ENOENT;                                                                        
    40035930:   1a821273    csel    w19, w19, w2, ne  // ne = any                         <== NOT EXECUTED
    rtems_rfs_block_map_close (fs, &map);                                                 
    40035934:   aa1503e0    mov x0, x21                                                   <== NOT EXECUTED
    40035938:   97fff956    bl  40033e90 <rtems_rfs_block_map_close>                      <== NOT EXECUTED
}                                                                                         
    4003593c:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40035940:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40035944:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40035948:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    4003594c:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    40035950:   a8ce7bfd    ldp x29, x30, [sp], #224                                      <== NOT EXECUTED
    40035954:   d65f03c0    ret                                                           <== NOT EXECUTED
    printf ("rtems-rfs: dir-read: dir=%" PRId32 " offset=%" PRId64 "\n",                  
    40035958:   b9401301    ldr w1, [x24, #16]                                            <== NOT EXECUTED
    4003595c:   aa1703e2    mov x2, x23                                                   <== NOT EXECUTED
    40035960:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40035964:   912d4000    add x0, x0, #0xb50                                            <== NOT EXECUTED
    40035968:   97ffb2aa    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    4003596c:   17ffff94    b   400357bc <rtems_rfs_dir_read+0x3c>                        <== NOT EXECUTED
    40035970:   39400382    ldrb    w2, [x28]                                             
      if (rtems_rfs_dir_entry_valid (fs, elength, eino))                                  
    40035974:   71002a9f    cmp w20, #0xa                                                 
    40035978:   39400781    ldrb    w1, [x28, #1]                                         
    4003597c:   39400b80    ldrb    w0, [x28, #2]                                         
    40035980:   39400f97    ldrb    w23, [x28, #3]                                        
    40035984:   aa012041    orr x1, x2, x1, lsl #8                                        
    40035988:   aa004020    orr x0, x1, x0, lsl #16                                       
    4003598c:   aa176017    orr x23, x0, x23, lsl #24                                     
    40035990:   5ac00af7    rev w23, w23                                                  
    40035994:   540000ad    b.le    400359a8 <rtems_rfs_dir_read+0x228>                   <== NEVER TAKEN
    40035998:   b94032a0    ldr w0, [x21, #48]                                            
    4003599c:   710002ff    cmp w23, #0x0                                                 
    400359a0:   7a541000    ccmp    w0, w20, #0x0, ne  // ne = any                        
    400359a4:   540001c8    b.hi    400359dc <rtems_rfs_dir_read+0x25c>  // b.pmore       <== ALWAYS TAKEN
        if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))                                   
    400359a8:   d2b00000    mov x0, #0x80000000             // #2147483648                <== NOT EXECUTED
        rc = EIO;                                                                         
    400359ac:   528000b3    mov w19, #0x5                       // #5                     <== NOT EXECUTED
        if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))                                   
    400359b0:   97ffd428    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400359b4:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400359b8:   54fff940    b.eq    400358e0 <rtems_rfs_dir_read+0x160>  // b.none        <== NOT EXECUTED
          printf ("rtems-rfs: dir-read: "                                                 
    400359bc:   b9401301    ldr w1, [x24, #16]                                            <== NOT EXECUTED
    400359c0:   2a1703e3    mov w3, w23                                                   <== NOT EXECUTED
    400359c4:   b9409fe4    ldr w4, [sp, #156]                                            <== NOT EXECUTED
    400359c8:   2a1403e2    mov w2, w20                                                   <== NOT EXECUTED
    400359cc:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    400359d0:   912de000    add x0, x0, #0xb78                                            <== NOT EXECUTED
    400359d4:   97ffb28f    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    400359d8:   17ffffc2    b   400358e0 <rtems_rfs_dir_read+0x160>                       <== NOT EXECUTED
      if (rtems_rfs_dir_entry_valid (fs, elength, eino))                                  
    400359dc:   b9402aa0    ldr w0, [x21, #40]                                            
    400359e0:   6b17001f    cmp w0, w23                                                   
    400359e4:   54fffe23    b.cc    400359a8 <rtems_rfs_dir_read+0x228>  // b.lo, b.ul, b.last<== NEVER TAKEN
      memset (dirent, 0, sizeof (struct dirent));                                         
    400359e8:   d2802318    mov x24, #0x118                     // #280                   
    400359ec:   aa1803e2    mov x2, x24                                                   
    400359f0:   52800001    mov w1, #0x0                    // #0                         
    400359f4:   aa1a03e0    mov x0, x26                                                   
    400359f8:   9400216d    bl  4003dfac <memset>                                         
      memcpy (dirent->d_name, entry + RTEMS_RFS_DIR_ENTRY_SIZE, elength);                 
    400359fc:   91005b57    add x23, x26, #0x16                                           
      dirent->d_off = rtems_rfs_block_get_pos (fs, &map.bpos);                            
    40035a00:   910263e1    add x1, sp, #0x98                                             
    40035a04:   aa1503e0    mov x0, x21                                                   
    40035a08:   97fff8ae    bl  40033cc0 <rtems_rfs_block_get_pos>                        
    40035a0c:   f9000740    str x0, [x26, #8]                                             
      dirent->d_reclen = sizeof (struct dirent);                                          
    40035a10:   79002358    strh    w24, [x26, #16]                                       
      elength -= RTEMS_RFS_DIR_ENTRY_SIZE;                                                
    40035a14:   51002a84    sub w4, w20, #0xa                                             
      *length += elength;                                                                 
    40035a18:   f94002c2    ldr x2, [x22]                                                 
    40035a1c:   52801fe3    mov w3, #0xff                   // #255                       
      remaining = rtems_rfs_fs_block_size (fs) - (map.bpos.boff + elength);               
    40035a20:   b9409fe6    ldr w6, [sp, #156]                                            
      memcpy (dirent->d_name, entry + RTEMS_RFS_DIR_ENTRY_SIZE, elength);                 
    40035a24:   91002b81    add x1, x28, #0xa                                             
    40035a28:   aa1703e0    mov x0, x23                                                   
      *length += elength;                                                                 
    40035a2c:   8b342045    add x5, x2, w20, uxth                                         
    40035a30:   f90002c5    str x5, [x22]                                                 
      remaining = rtems_rfs_fs_block_size (fs) - (map.bpos.boff + elength);               
    40035a34:   f9400aa2    ldr x2, [x21, #16]                                            
    40035a38:   4b060042    sub w2, w2, w6                                                
    40035a3c:   4b140054    sub w20, w2, w20                                              
        *length += remaining;                                                             
    40035a40:   71002e9f    cmp w20, #0xb                                                 
    40035a44:   8b34c0b4    add x20, x5, w20, sxtw                                        
    40035a48:   9a85b282    csel    x2, x20, x5, lt  // lt = tstop                        
    40035a4c:   6b03009f    cmp w4, w3                                                    
    40035a50:   1a83d094    csel    w20, w4, w3, le                                       
    40035a54:   f90002c2    str x2, [x22]                                                 
      memcpy (dirent->d_name, entry + RTEMS_RFS_DIR_ENTRY_SIZE, elength);                 
    40035a58:   93407e82    sxtw    x2, w20                                               
    40035a5c:   940020fe    bl  4003de54 <memcpy>                                         
      dirent->d_ino = rtems_rfs_dir_entry_ino (entry);                                    
    40035a60:   39400383    ldrb    w3, [x28]                                             
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))                                     
    40035a64:   d2b00000    mov x0, #0x80000000             // #2147483648                
    40035a68:   39400784    ldrb    w4, [x28, #1]                                         
    40035a6c:   39400b82    ldrb    w2, [x28, #2]                                         
    40035a70:   39400f81    ldrb    w1, [x28, #3]                                         
    40035a74:   aa042064    orr x4, x3, x4, lsl #8                                        
      dirent->d_namlen = elength;                                                         
    40035a78:   79002b54    strh    w20, [x26, #20]                                       
    40035a7c:   aa024082    orr x2, x4, x2, lsl #16                                       
    40035a80:   aa016041    orr x1, x2, x1, lsl #24                                       
      dirent->d_ino = rtems_rfs_dir_entry_ino (entry);                                    
    40035a84:   5ac00821    rev w1, w1                                                    
    40035a88:   f9000341    str x1, [x26]                                                 
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))                                     
    40035a8c:   97ffd3f1    bl  4002aa50 <rtems_rfs_trace>                                
    40035a90:   72001c1f    tst w0, #0xff                                                 
    40035a94:   54fff260    b.eq    400358e0 <rtems_rfs_dir_read+0x160>  // b.none        <== ALWAYS TAKEN
        printf ("rtems-rfs: dir-read: found off:%" PRIooff_t                              
    40035a98:   a9400742    ldp x2, x1, [x26]                                             <== NOT EXECUTED
    40035a9c:   aa1703e3    mov x3, x23                                                   <== NOT EXECUTED
    40035aa0:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40035aa4:   912f0000    add x0, x0, #0xbc0                                            <== NOT EXECUTED
    40035aa8:   97ffb25a    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40035aac:   17ffff8d    b   400358e0 <rtems_rfs_dir_read+0x160>                       <== NOT EXECUTED
                                                                                          

0000000040036240 <rtems_rfs_file_close>: {
    40036240:   a9bc7bfd    stp x29, x30, [sp, #-64]!                                     
    40036244:   910003fd    mov x29, sp                                                   
    40036248:   a90153f3    stp x19, x20, [sp, #16]                                       
    4003624c:   aa0103f3    mov x19, x1                                                   
    40036250:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40036254:   aa0003f5    mov x21, x0                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_CLOSE))                                       
    40036258:   d2c00200    mov x0, #0x1000000000           // #68719476736               
    4003625c:   97ffd1fd    bl  4002aa50 <rtems_rfs_trace>                                
    40036260:   72001c1f    tst w0, #0xff                                                 
    40036264:   54000e21    b.ne    40036428 <rtems_rfs_file_close+0x1e8>  // b.any       <== NEVER TAKEN
  if (handle->shared->references > 0)                                                     
    40036268:   f9401660    ldr x0, [x19, #40]                                            
    4003626c:   b9401014    ldr w20, [x0, #16]                                            
    40036270:   7100029f    cmp w20, #0x0                                                 
    40036274:   5400006d    b.le    40036280 <rtems_rfs_file_close+0x40>                  <== NEVER TAKEN
    handle->shared->references--;                                                         
    40036278:   51000694    sub w20, w20, #0x1                                            
    4003627c:   b9001014    str w20, [x0, #16]                                            
  rc = rtems_rfs_buffer_handle_close (fs, &handle->buffer);                               
    40036280:   91002276    add x22, x19, #0x8                                            
  if (handle->shared->references == 0)                                                    
    40036284:   34000194    cbz w20, 400362b4 <rtems_rfs_file_close+0x74>                 <== ALWAYS TAKEN
    40036288:   aa1603e1    mov x1, x22                                                   <== NOT EXECUTED
    4003628c:   aa1503e0    mov x0, x21                                                   <== NOT EXECUTED
    40036290:   97ffc400    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  rrc = 0;                                                                                
    40036294:   52800014    mov w20, #0x0                       // #0                     <== NOT EXECUTED
  free (handle);                                                                          
    40036298:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    4003629c:   97ffb145    bl  400227b0 <free>                                           <== NOT EXECUTED
}                                                                                         
    400362a0:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    400362a4:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    400362a8:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    400362ac:   a8c47bfd    ldp x29, x30, [sp], #64                                       <== NOT EXECUTED
    400362b0:   d65f03c0    ret                                                           <== NOT EXECUTED
    if (!rtems_rfs_inode_is_loaded (&handle->shared->inode))                              
    400362b4:   f9401802    ldr x2, [x0, #48]                                             
    400362b8:   a90363f7    stp x23, x24, [sp, #48]                                       
    400362bc:   91006001    add x1, x0, #0x18                                             
    400362c0:   b4001162    cbz x2, 400364ec <rtems_rfs_file_close+0x2ac>                 <== ALWAYS TAKEN
      rtems_rfs_inode_set_atime (&handle->shared->inode,                                  
    400362c4:   b940c000    ldr w0, [x0, #192]                                            
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    400362c8:   52800023    mov w3, #0x1                    // #1                         
  rtems_rfs_write_u32 (&handle->node->atime, atime);                                      
    400362cc:   53187c04    lsr w4, w0, #24                                               
    400362d0:   39004044    strb    w4, [x2, #16]                                         
    400362d4:   53107c05    lsr w5, w0, #16                                               
    400362d8:   53087c04    lsr w4, w0, #8                                                
    400362dc:   f9400c22    ldr x2, [x1, #24]                                             
    400362e0:   39004445    strb    w5, [x2, #17]                                         
    400362e4:   f9400c22    ldr x2, [x1, #24]                                             
    400362e8:   39004844    strb    w4, [x2, #18]                                         
    400362ec:   f9400c22    ldr x2, [x1, #24]                                             
    400362f0:   39004c40    strb    w0, [x2, #19]                                         
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    400362f4:   39008023    strb    w3, [x1, #32]                                         
      rtems_rfs_inode_set_mtime (&handle->shared->inode,                                  
    400362f8:   f9401661    ldr x1, [x19, #40]                                            
  rtems_rfs_write_u32 (&handle->node->mtime, mtime);                                      
    400362fc:   91006020    add x0, x1, #0x18                                             
    40036300:   f9400c02    ldr x2, [x0, #24]                                             
    40036304:   b940c421    ldr w1, [x1, #196]                                            
    40036308:   53187c26    lsr w6, w1, #24                                               
    4003630c:   39005046    strb    w6, [x2, #20]                                         
    40036310:   53107c25    lsr w5, w1, #16                                               
    40036314:   53087c24    lsr w4, w1, #8                                                
    40036318:   f9400c02    ldr x2, [x0, #24]                                             
    4003631c:   39005445    strb    w5, [x2, #21]                                         
    40036320:   f9400c02    ldr x2, [x0, #24]                                             
    40036324:   39005844    strb    w4, [x2, #22]                                         
    40036328:   f9400c02    ldr x2, [x0, #24]                                             
    4003632c:   39005c41    strb    w1, [x2, #23]                                         
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40036330:   39008003    strb    w3, [x0, #32]                                         
      rtems_rfs_inode_set_ctime (&handle->shared->inode,                                  
    40036334:   f9401661    ldr x1, [x19, #40]                                            
  rtems_rfs_write_u32 (&handle->node->ctime, ctime);                                      
    40036338:   91006020    add x0, x1, #0x18                                             
    4003633c:   f9400c02    ldr x2, [x0, #24]                                             
    40036340:   b940c821    ldr w1, [x1, #200]                                            
    40036344:   53187c26    lsr w6, w1, #24                                               
    40036348:   39006046    strb    w6, [x2, #24]                                         
    4003634c:   53107c25    lsr w5, w1, #16                                               
    40036350:   53087c24    lsr w4, w1, #8                                                
    40036354:   f9400c02    ldr x2, [x0, #24]                                             
    40036358:   39006445    strb    w5, [x2, #25]                                         
    4003635c:   f9400c02    ldr x2, [x0, #24]                                             
    40036360:   39006844    strb    w4, [x2, #26]                                         
    40036364:   f9400c02    ldr x2, [x0, #24]                                             
    40036368:   39006c41    strb    w1, [x2, #27]                                         
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    4003636c:   39008003    strb    w3, [x0, #32]                                         
      if (!rtems_rfs_block_size_equal (&handle->shared->size,                             
    40036370:   f9401662    ldr x2, [x19, #40]                                            
    40036374:   91016041    add x1, x2, #0x58                                             
    40036378:   f9405c44    ldr x4, [x2, #184]                                            
    4003637c:   f9403440    ldr x0, [x2, #104]                                            
    40036380:   eb00009f    cmp x4, x0                                                    
    40036384:   54000080    b.eq    40036394 <rtems_rfs_file_close+0x154>  // b.none      <== ALWAYS TAKEN
 */                                                                                       
static inline void                                                                        
rtems_rfs_block_map_set_size (rtems_rfs_block_map*  map,                                  
                              rtems_rfs_block_size* size)                                 
{                                                                                         
  rtems_rfs_block_copy_size (&map->size, size);                                           
    40036388:   29570044    ldp w4, w0, [x2, #184]                                        <== NOT EXECUTED
    4003638c:   29020024    stp w4, w0, [x1, #16]                                         <== NOT EXECUTED
  map->dirty = true;                                                                      
    40036390:   39016043    strb    w3, [x2, #88]                                         <== NOT EXECUTED
    rc = rtems_rfs_block_map_close (fs, &handle->shared->map);                            
    40036394:   aa1503e0    mov x0, x21                                                   
    40036398:   97fff6be    bl  40033e90 <rtems_rfs_block_map_close>                      
    4003639c:   2a0003f7    mov w23, w0                                                   
    if (rc > 0)                                                                           
    400363a0:   7100001f    cmp w0, #0x0                                                  
    400363a4:   5400096c    b.gt    400364d0 <rtems_rfs_file_close+0x290>                 <== NEVER TAKEN
    rc = rtems_rfs_inode_close (fs, &handle->shared->inode);                              
    400363a8:   f9401661    ldr x1, [x19, #40]                                            
    400363ac:   aa1503e0    mov x0, x21                                                   
    400363b0:   91006021    add x1, x1, #0x18                                             
    400363b4:   97ffcadb    bl  40028f20 <rtems_rfs_inode_close>                          
    400363b8:   2a0003f7    mov w23, w0                                                   
    if (rc > 0)                                                                           
    400363bc:   7100001f    cmp w0, #0x0                                                  
    400363c0:   5400040c    b.gt    40036440 <rtems_rfs_file_close+0x200>                 <== NEVER TAKEN
    rtems_chain_extract_unprotected (&handle->shared->link);                              
    400363c4:   f9401660    ldr x0, [x19, #40]                                            
  previous       = the_node->previous;                                                    
    400363c8:   a9400402    ldp x2, x1, [x0]                                              
  next->previous = previous;                                                              
    400363cc:   f9000441    str x1, [x2, #8]                                              
  previous->next = next;                                                                  
    400363d0:   f9000022    str x2, [x1]                                                  
    free (handle->shared);                                                                
    400363d4:   97ffb0f7    bl  400227b0 <free>                                           
    400363d8:   aa1603e1    mov x1, x22                                                   
    400363dc:   aa1503e0    mov x0, x21                                                   
    400363e0:   97ffc3ac    bl  40027290 <rtems_rfs_buffer_handle_release>                
  handle->dirty = false;                                                                  
    400363e4:   3900227f    strb    wzr, [x19, #8]                                        
  handle->bnum  = 0;                                                                      
    400363e8:   b90006df    str wzr, [x22, #4]                                            
  if (rrc > 0)                                                                            
    400363ec:   7100029f    cmp w20, #0x0                                                 
  handle->buffer = NULL;                                                                  
    400363f0:   f90006df    str xzr, [x22, #8]                                            
    400363f4:   540000ad    b.le    40036408 <rtems_rfs_file_close+0x1c8>                 <== ALWAYS TAKEN
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_CLOSE))                                     
    400363f8:   d2c00200    mov x0, #0x1000000000           // #68719476736               <== NOT EXECUTED
    400363fc:   97ffd195    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40036400:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40036404:   54000481    b.ne    40036494 <rtems_rfs_file_close+0x254>  // b.any       <== NOT EXECUTED
  free (handle);                                                                          
    40036408:   aa1303e0    mov x0, x19                                                   
    4003640c:   a94363f7    ldp x23, x24, [sp, #48]                                       
    40036410:   97ffb0e8    bl  400227b0 <free>                                           
}                                                                                         
    40036414:   2a1403e0    mov w0, w20                                                   
    40036418:   a94153f3    ldp x19, x20, [sp, #16]                                       
    4003641c:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40036420:   a8c47bfd    ldp x29, x30, [sp], #64                                       
    40036424:   d65f03c0    ret                                                           
    printf ("rtems-rfs: file-close: entry: ino=%" PRId32 "\n",                            
    40036428:   f9401661    ldr x1, [x19, #40]                                            <== NOT EXECUTED
    4003642c:   900000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40036430:   91360000    add x0, x0, #0xd80                                            <== NOT EXECUTED
    40036434:   b9402821    ldr w1, [x1, #40]                                             <== NOT EXECUTED
    40036438:   97ffaff6    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    4003643c:   17ffff8b    b   40036268 <rtems_rfs_file_close+0x28>                      <== NOT EXECUTED
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_CLOSE))                                   
    40036440:   d2c00200    mov x0, #0x1000000000           // #68719476736               <== NOT EXECUTED
    40036444:   97ffd183    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40036448:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    4003644c:   540005e1    b.ne    40036508 <rtems_rfs_file_close+0x2c8>  // b.any       <== NOT EXECUTED
    rtems_chain_extract_unprotected (&handle->shared->link);                              
    40036450:   f9401660    ldr x0, [x19, #40]                                            <== NOT EXECUTED
  previous       = the_node->previous;                                                    
    40036454:   a9400402    ldp x2, x1, [x0]                                              <== NOT EXECUTED
      if (rrc == 0)                                                                       
    40036458:   35fffbb4    cbnz    w20, 400363cc <rtems_rfs_file_close+0x18c>            <== NOT EXECUTED
  next->previous = previous;                                                              
    4003645c:   f9000441    str x1, [x2, #8]                                              <== NOT EXECUTED
    40036460:   2a1703f4    mov w20, w23                                                  <== NOT EXECUTED
  previous->next = next;                                                                  
    40036464:   f9000022    str x2, [x1]                                                  <== NOT EXECUTED
    free (handle->shared);                                                                
    40036468:   97ffb0d2    bl  400227b0 <free>                                           <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    4003646c:   aa1603e1    mov x1, x22                                                   <== NOT EXECUTED
    40036470:   aa1503e0    mov x0, x21                                                   <== NOT EXECUTED
    40036474:   97ffc387    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40036478:   3900227f    strb    wzr, [x19, #8]                                        <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    4003647c:   b90006df    str wzr, [x22, #4]                                            <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_CLOSE))                                     
    40036480:   d2c00200    mov x0, #0x1000000000           // #68719476736               <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40036484:   f90006df    str xzr, [x22, #8]                                            <== NOT EXECUTED
    40036488:   97ffd172    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    4003648c:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40036490:   54fffbc0    b.eq    40036408 <rtems_rfs_file_close+0x1c8>  // b.none      <== NOT EXECUTED
      printf ("rtems-rfs: file-close: result: %d: %s\n", rrc, strerror (rrc));            
    40036494:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    40036498:   940021e1    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    4003649c:   900000a1    adrp    x1, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    400364a0:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    400364a4:   91388020    add x0, x1, #0xe20                                            <== NOT EXECUTED
    400364a8:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    400364ac:   97ffafd9    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  free (handle);                                                                          
    400364b0:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    400364b4:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    400364b8:   97ffb0be    bl  400227b0 <free>                                           <== NOT EXECUTED
}                                                                                         
    400364bc:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    400364c0:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    400364c4:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    400364c8:   a8c47bfd    ldp x29, x30, [sp], #64                                       <== NOT EXECUTED
    400364cc:   d65f03c0    ret                                                           <== NOT EXECUTED
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_CLOSE))                                   
    400364d0:   d2c00200    mov x0, #0x1000000000           // #68719476736               <== NOT EXECUTED
    400364d4:   97ffd15f    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400364d8:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400364dc:   540002c1    b.ne    40036534 <rtems_rfs_file_close+0x2f4>  // b.any       <== NOT EXECUTED
      if (rrc == 0)                                                                       
    400364e0:   7100029f    cmp w20, #0x0                                                 <== NOT EXECUTED
    400364e4:   1a971294    csel    w20, w20, w23, ne  // ne = any                        <== NOT EXECUTED
    400364e8:   17ffffb0    b   400363a8 <rtems_rfs_file_close+0x168>                     <== NOT EXECUTED
      rrc = rtems_rfs_inode_load (fs, &handle->shared->inode);                            
    400364ec:   aa1503e0    mov x0, x21                                                   
    400364f0:   97ffc9e4    bl  40028c80 <rtems_rfs_inode_load>                           
    if (rrc == 0)                                                                         
    400364f4:   34000360    cbz w0, 40036560 <rtems_rfs_file_close+0x320>                 <== ALWAYS TAKEN
    rc = rtems_rfs_block_map_close (fs, &handle->shared->map);                            
    400364f8:   f9401662    ldr x2, [x19, #40]                                            <== NOT EXECUTED
    400364fc:   2a0003f4    mov w20, w0                                                   <== NOT EXECUTED
    40036500:   91016041    add x1, x2, #0x58                                             <== NOT EXECUTED
    40036504:   17ffffa4    b   40036394 <rtems_rfs_file_close+0x154>                     <== NOT EXECUTED
        printf ("rtems-rfs: file-close: inode close error: ino=%" PRId32 ": %d: %s\n",    
    40036508:   f9401661    ldr x1, [x19, #40]                                            <== NOT EXECUTED
    4003650c:   2a1703e0    mov w0, w23                                                   <== NOT EXECUTED
    40036510:   b9402838    ldr w24, [x1, #40]                                            <== NOT EXECUTED
    40036514:   940021c2    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40036518:   900000a2    adrp    x2, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    4003651c:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    40036520:   2a1803e1    mov w1, w24                                                   <== NOT EXECUTED
    40036524:   91378040    add x0, x2, #0xde0                                            <== NOT EXECUTED
    40036528:   2a1703e2    mov w2, w23                                                   <== NOT EXECUTED
    4003652c:   97ffafb9    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40036530:   17ffffc8    b   40036450 <rtems_rfs_file_close+0x210>                     <== NOT EXECUTED
        printf ("rtems-rfs: file-close: map close error: ino=%" PRId32 ": %d: %s\n",      
    40036534:   f9401661    ldr x1, [x19, #40]                                            <== NOT EXECUTED
    40036538:   2a1703e0    mov w0, w23                                                   <== NOT EXECUTED
    4003653c:   b9402838    ldr w24, [x1, #40]                                            <== NOT EXECUTED
    40036540:   940021b7    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40036544:   900000a2    adrp    x2, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40036548:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    4003654c:   2a1803e1    mov w1, w24                                                   <== NOT EXECUTED
    40036550:   9136a040    add x0, x2, #0xda8                                            <== NOT EXECUTED
    40036554:   2a1703e2    mov w2, w23                                                   <== NOT EXECUTED
    40036558:   97ffafae    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    4003655c:   17ffffe1    b   400364e0 <rtems_rfs_file_close+0x2a0>                     <== NOT EXECUTED
      rtems_rfs_inode_set_atime (&handle->shared->inode,                                  
    40036560:   f9401660    ldr x0, [x19, #40]                                            
  rtems_rfs_write_u32 (&handle->node->atime, atime);                                      
    40036564:   91006001    add x1, x0, #0x18                                             
    40036568:   f9401802    ldr x2, [x0, #48]                                             
    4003656c:   17ffff56    b   400362c4 <rtems_rfs_file_close+0x84>                      
                                                                                          

0000000040036e40 <rtems_rfs_file_get_shared>: return &the_chain->Tail.Node;
    40036e40:   9103a003    add x3, x0, #0xe8                                             
  return _Chain_Immutable_head( the_chain )->next;                                        
    40036e44:   f9407000    ldr x0, [x0, #224]                                            
  while (!rtems_chain_is_tail (&fs->file_shares, node))                                   
    40036e48:   eb03001f    cmp x0, x3                                                    
    40036e4c:   540000a1    b.ne    40036e60 <rtems_rfs_file_get_shared+0x20>  // b.any   
    40036e50:   14000008    b   40036e70 <rtems_rfs_file_get_shared+0x30>                 
  return the_node->next;                                                                  
    40036e54:   f9400000    ldr x0, [x0]                                                  <== NOT EXECUTED
    40036e58:   eb03001f    cmp x0, x3                                                    <== NOT EXECUTED
    40036e5c:   540000a0    b.eq    40036e70 <rtems_rfs_file_get_shared+0x30>  // b.none  <== NOT EXECUTED
    if (shared->inode.ino == ino)                                                         
    40036e60:   b9402802    ldr w2, [x0, #40]                                             
    40036e64:   6b01005f    cmp w2, w1                                                    
    40036e68:   54ffff61    b.ne    40036e54 <rtems_rfs_file_get_shared+0x14>  // b.any   <== NEVER TAKEN
      return shared;                                                                      
    node = rtems_chain_next (node);                                                       
  }                                                                                       
  return NULL;                                                                            
}                                                                                         
    40036e6c:   d65f03c0    ret                                                           
  return NULL;                                                                            
    40036e70:   d2800000    mov x0, #0x0                    // #0                         
}                                                                                         
    40036e74:   d65f03c0    ret                                                           
    ...                                                                                   
                                                                                          

0000000040036810 <rtems_rfs_file_io_end>: {
    40036810:   a9bb7bfd    stp x29, x30, [sp, #-80]!                                     
    40036814:   910003fd    mov x29, sp                                                   
    40036818:   a90153f3    stp x19, x20, [sp, #16]                                       
    4003681c:   aa0003f3    mov x19, x0                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                          
    40036820:   d2c00400    mov x0, #0x2000000000           // #137438953472              
{                                                                                         
    40036824:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40036828:   aa0103f5    mov x21, x1                                                   
    4003682c:   12001c56    and w22, w2, #0xff                                            
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                          
    40036830:   97ffd088    bl  4002aa50 <rtems_rfs_trace>                                
    40036834:   72001c1f    tst w0, #0xff                                                 
    40036838:   54000160    b.eq    40036864 <rtems_rfs_file_io_end+0x54>  // b.none      <== ALWAYS TAKEN
    printf ("rtems-rfs: file-io:   end: %s size=%zu\n",                                   
    4003683c:   710002df    cmp w22, #0x0                                                 <== NOT EXECUTED
    40036840:   900000a1    adrp    x1, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40036844:   91392021    add x1, x1, #0xe48                                            <== NOT EXECUTED
    40036848:   d0000082    adrp    x2, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    4003684c:   912bc042    add x2, x2, #0xaf0                                            <== NOT EXECUTED
    40036850:   900000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40036854:   9a811041    csel    x1, x2, x1, ne  // ne = any                           <== NOT EXECUTED
    40036858:   913c2000    add x0, x0, #0xf08                                            <== NOT EXECUTED
    4003685c:   aa1503e2    mov x2, x21                                                   <== NOT EXECUTED
    40036860:   97ffaeec    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  if (rtems_rfs_buffer_handle_has_block (&handle->buffer))                                
    40036864:   f9400a61    ldr x1, [x19, #16]                                            
    rc = rtems_rfs_buffer_handle_release (rtems_rfs_file_fs (handle),                     
    40036868:   f9401662    ldr x2, [x19, #40]                                            
    4003686c:   f9406840    ldr x0, [x2, #208]                                            
  if (rtems_rfs_buffer_handle_has_block (&handle->buffer))                                
    40036870:   b4000f01    cbz x1, 40036a50 <rtems_rfs_file_io_end+0x240>                <== NEVER TAKEN
    rc = rtems_rfs_buffer_handle_release (rtems_rfs_file_fs (handle),                     
    40036874:   91002261    add x1, x19, #0x8                                             
    if (!read)                                                                            
    40036878:   340008d6    cbz w22, 40036990 <rtems_rfs_file_io_end+0x180>               
    rc = rtems_rfs_buffer_handle_release (rtems_rfs_file_fs (handle),                     
    4003687c:   97ffc285    bl  40027290 <rtems_rfs_buffer_handle_release>                
    40036880:   2a0003f4    mov w20, w0                                                   
    if (rc > 0)                                                                           
    40036884:   7100001f    cmp w0, #0x0                                                  
    40036888:   54000f2c    b.gt    40036a6c <rtems_rfs_file_io_end+0x25c>                <== NEVER TAKEN
      rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle)))                               
    4003688c:   f9401662    ldr x2, [x19, #40]                                            
    40036890:   a90363f7    stp x23, x24, [sp, #48]                                       
    40036894:   f9406840    ldr x0, [x2, #208]                                            
    40036898:   f90023f9    str x25, [sp, #64]                                            
    4003689c:   f9400803    ldr x3, [x0, #16]                                             
  handle->bpos.boff += size;                                                              
    400368a0:   b9401e60    ldr w0, [x19, #28]                                            
    400368a4:   0b150001    add w1, w0, w21                                               
    400368a8:   b9001e61    str w1, [x19, #28]                                            
  if (handle->bpos.boff >=                                                                
    400368ac:   eb21407f    cmp x3, w1, uxtw                                              
    400368b0:   540000a8    b.hi    400368c4 <rtems_rfs_file_io_end+0xb4>  // b.pmore     
    handle->bpos.bno++;                                                                   
    400368b4:   b9401a60    ldr w0, [x19, #24]                                            
    handle->bpos.boff -= rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle));            
    400368b8:   4b030021    sub w1, w1, w3                                                
    handle->bpos.bno++;                                                                   
    400368bc:   11000400    add w0, w0, #0x1                                              
    handle->bpos.boff -= rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle));            
    400368c0:   29030660    stp w0, w1, [x19, #24]                                        
  mtime = !read;                                                                          
    400368c4:   520002c4    eor w4, w22, #0x1                                             
  length = false;                                                                         
    400368c8:   52800003    mov w3, #0x0                    // #0                         
  if (!read &&                                                                            
    400368cc:   35000156    cbnz    w22, 400368f4 <rtems_rfs_file_io_end+0xe4>            
      rtems_rfs_block_map_past_end (rtems_rfs_file_map (handle),                          
    400368d0:   b9401a61    ldr w1, [x19, #24]                                            
    400368d4:   b9406840    ldr w0, [x2, #104]                                            
  if (!read &&                                                                            
    400368d8:   34000881    cbz w1, 400369e8 <rtems_rfs_file_io_end+0x1d8>                
      rtems_rfs_block_map_past_end (rtems_rfs_file_map (handle),                          
    400368dc:   35000860    cbnz    w0, 400369e8 <rtems_rfs_file_io_end+0x1d8>            <== ALWAYS TAKEN
    400368e0:   b9401e60    ldr w0, [x19, #28]                                            
  map->dirty = true;                                                                      
    400368e4:   52800021    mov w1, #0x1                    // #1                         
    length = true;                                                                        
    400368e8:   52800023    mov w3, #0x1                    // #1                         
    400368ec:   39016041    strb    w1, [x2, #88]                                         
  map->size.offset = offset;                                                              
    400368f0:   b9006c40    str w0, [x2, #108]                                            
  atime  = rtems_rfs_file_update_atime (handle);                                          
    400368f4:   b9400261    ldr w1, [x19]                                                 
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                          
    400368f8:   d2c00400    mov x0, #0x2000000000           // #137438953472              
  mtime  = rtems_rfs_file_update_mtime (handle) && mtime;                                 
    400368fc:   d27f0037    eor x23, x1, #0x2                                             
  length = rtems_rfs_file_update_length (handle) && length;                               
    40036900:   d27e0038    eor x24, x1, #0x4                                             
  atime  = rtems_rfs_file_update_atime (handle);                                          
    40036904:   12000035    and w21, w1, #0x1                                             
  mtime  = rtems_rfs_file_update_mtime (handle) && mtime;                                 
    40036908:   d34106e1    ubfx    x1, x23, #1, #1                                       
  length = rtems_rfs_file_update_length (handle) && length;                               
    4003690c:   0a580878    and w24, w3, w24, lsr #2                                      
  mtime  = rtems_rfs_file_update_mtime (handle) && mtime;                                 
    40036910:   0a010097    and w23, w4, w1                                               
    40036914:   520002b9    eor w25, w21, #0x1                                            
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                          
    40036918:   97ffd04e    bl  4002aa50 <rtems_rfs_trace>                                
    4003691c:   72001c1f    tst w0, #0xff                                                 
    40036920:   540001e0    b.eq    4003695c <rtems_rfs_file_io_end+0x14c>  // b.none     <== ALWAYS TAKEN
    printf ("rtems-rfs: file-io:   end: pos=%" PRIu32 ":%" PRIu32 " %c %c %c\n",          
    40036924:   710002bf    cmp w21, #0x0                                                 <== NOT EXECUTED
    40036928:   528005a5    mov w5, #0x2d                   // #45                        <== NOT EXECUTED
    4003692c:   52800823    mov w3, #0x41                   // #65                        <== NOT EXECUTED
    40036930:   1a850063    csel    w3, w3, w5, eq  // eq = none                          <== NOT EXECUTED
    40036934:   29430a61    ldp w1, w2, [x19, #24]                                        <== NOT EXECUTED
    40036938:   710002ff    cmp w23, #0x0                                                 <== NOT EXECUTED
    4003693c:   528009a4    mov w4, #0x4d                   // #77                        <== NOT EXECUTED
    40036940:   1a851084    csel    w4, w4, w5, ne  // ne = any                           <== NOT EXECUTED
    40036944:   7100031f    cmp w24, #0x0                                                 <== NOT EXECUTED
    40036948:   52800986    mov w6, #0x4c                   // #76                        <== NOT EXECUTED
    4003694c:   900000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40036950:   1a8510c5    csel    w5, w6, w5, ne  // ne = any                           <== NOT EXECUTED
    40036954:   913de000    add x0, x0, #0xf78                                            <== NOT EXECUTED
    40036958:   97ffaeae    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  if (atime || mtime)                                                                     
    4003695c:   2a170320    orr w0, w25, w23                                              
    40036960:   350005a0    cbnz    w0, 40036a14 <rtems_rfs_file_io_end+0x204>            <== ALWAYS TAKEN
  if (length)                                                                             
    40036964:   34000698    cbz w24, 40036a34 <rtems_rfs_file_io_end+0x224>               <== ALWAYS TAKEN
      rtems_rfs_block_map_count (rtems_rfs_file_map (handle));                            
    40036968:   f9401660    ldr x0, [x19, #40]                                            
    handle->shared->size.offset =                                                         
    4003696c:   a94363f7    ldp x23, x24, [sp, #48]                                       
    handle->shared->size.count =                                                          
    40036970:   f9403401    ldr x1, [x0, #104]                                            
    40036974:   f94023f9    ldr x25, [sp, #64]                                            
    40036978:   f9005c01    str x1, [x0, #184]                                            
}                                                                                         
    4003697c:   2a1403e0    mov w0, w20                                                   
    40036980:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40036984:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40036988:   a8c57bfd    ldp x29, x30, [sp], #80                                       
    4003698c:   d65f03c0    ret                                                           
      rtems_rfs_buffer_mark_dirty (rtems_rfs_file_buffer (handle));                       
    40036990:   52800022    mov w2, #0x1                    // #1                         
    40036994:   39002262    strb    w2, [x19, #8]                                         
    rc = rtems_rfs_buffer_handle_release (rtems_rfs_file_fs (handle),                     
    40036998:   97ffc23e    bl  40027290 <rtems_rfs_buffer_handle_release>                
    4003699c:   2a0003f4    mov w20, w0                                                   
    if (rc > 0)                                                                           
    400369a0:   7100001f    cmp w0, #0x0                                                  
    400369a4:   54fff74d    b.le    4003688c <rtems_rfs_file_io_end+0x7c>                 <== ALWAYS TAKEN
      printf (                                                                            
    400369a8:   900000b3    adrp    x19, 4004a000 <status_code_text+0x38>                 <== NOT EXECUTED
    400369ac:   91392273    add x19, x19, #0xe48                                          <== NOT EXECUTED
    400369b0:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    400369b4:   9400209a    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    400369b8:   aa1503e2    mov x2, x21                                                   <== NOT EXECUTED
    400369bc:   aa0003e4    mov x4, x0                                                    <== NOT EXECUTED
    400369c0:   aa1303e1    mov x1, x19                                                   <== NOT EXECUTED
    400369c4:   2a1403e3    mov w3, w20                                                   <== NOT EXECUTED
    400369c8:   900000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    400369cc:   913cc000    add x0, x0, #0xf30                                            <== NOT EXECUTED
    400369d0:   97ffae90    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
}                                                                                         
    400369d4:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    400369d8:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    400369dc:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    400369e0:   a8c57bfd    ldp x29, x30, [sp], #80                                       <== NOT EXECUTED
    400369e4:   d65f03c0    ret                                                           <== NOT EXECUTED
      rtems_rfs_block_map_past_end (rtems_rfs_file_map (handle),                          
    400369e8:   6b00003f    cmp w1, w0                                                    
    400369ec:   54fff7a2    b.cs    400368e0 <rtems_rfs_file_io_end+0xd0>  // b.hs, b.nlast
    400369f0:   51000400    sub w0, w0, #0x1                                              
  length = false;                                                                         
    400369f4:   52800003    mov w3, #0x0                    // #0                         
      rtems_rfs_block_map_past_end (rtems_rfs_file_map (handle),                          
    400369f8:   6b00003f    cmp w1, w0                                                    
    400369fc:   54fff7c1    b.ne    400368f4 <rtems_rfs_file_io_end+0xe4>  // b.any       <== NEVER TAKEN
    40036a00:   b9406c41    ldr w1, [x2, #108]                                            
    40036a04:   b9401e60    ldr w0, [x19, #28]                                            
    40036a08:   6b01001f    cmp w0, w1                                                    
    40036a0c:   54fff749    b.ls    400368f4 <rtems_rfs_file_io_end+0xe4>  // b.plast     <== NEVER TAKEN
    40036a10:   17ffffb5    b   400368e4 <rtems_rfs_file_io_end+0xd4>                     
    time_t now = time (NULL);                                                             
    40036a14:   d2800000    mov x0, #0x0                    // #0                         
    40036a18:   94002e7c    bl  40042408 <time>                                           
    if (read && atime)                                                                    
    40036a1c:   6a1902df    tst w22, w25                                                  
    40036a20:   54000201    b.ne    40036a60 <rtems_rfs_file_io_end+0x250>  // b.any      
    if (!read && mtime)                                                                   
    40036a24:   34fffa17    cbz w23, 40036964 <rtems_rfs_file_io_end+0x154>               <== NEVER TAKEN
      handle->shared->mtime = now;                                                        
    40036a28:   f9401661    ldr x1, [x19, #40]                                            
    40036a2c:   b900c420    str w0, [x1, #196]                                            
  if (length)                                                                             
    40036a30:   35fff9d8    cbnz    w24, 40036968 <rtems_rfs_file_io_end+0x158>           <== ALWAYS TAKEN
}                                                                                         
    40036a34:   2a1403e0    mov w0, w20                                                   
    40036a38:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40036a3c:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40036a40:   a94363f7    ldp x23, x24, [sp, #48]                                       
    40036a44:   f94023f9    ldr x25, [sp, #64]                                            
    40036a48:   a8c57bfd    ldp x29, x30, [sp], #80                                       
    40036a4c:   d65f03c0    ret                                                           
  int  rc = 0;                                                                            
    40036a50:   52800014    mov w20, #0x0                       // #0                     <== NOT EXECUTED
    40036a54:   a90363f7    stp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40036a58:   f90023f9    str x25, [sp, #64]                                            <== NOT EXECUTED
    40036a5c:   17ffff90    b   4003689c <rtems_rfs_file_io_end+0x8c>                     <== NOT EXECUTED
      handle->shared->atime = now;                                                        
    40036a60:   f9401661    ldr x1, [x19, #40]                                            
    40036a64:   b900c020    str w0, [x1, #192]                                            
    if (!read && mtime)                                                                   
    40036a68:   17ffffbf    b   40036964 <rtems_rfs_file_io_end+0x154>                    
      printf (                                                                            
    40036a6c:   d0000093    adrp    x19, 40048000 <_Scheduler_Table+0x60>                 <== NOT EXECUTED
    40036a70:   912bc273    add x19, x19, #0xaf0                                          <== NOT EXECUTED
    40036a74:   17ffffcf    b   400369b0 <rtems_rfs_file_io_end+0x1a0>                    <== NOT EXECUTED
    ...                                                                                   
                                                                                          

0000000040036570 <rtems_rfs_file_io_start>: {
    40036570:   a9bb7bfd    stp x29, x30, [sp, #-80]!                                     
    40036574:   910003fd    mov x29, sp                                                   
    40036578:   a90153f3    stp x19, x20, [sp, #16]                                       
    4003657c:   aa0003f3    mov x19, x0                                                   
    40036580:   aa0103f4    mov x20, x1                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                          
    40036584:   d2c00400    mov x0, #0x2000000000           // #137438953472              
{                                                                                         
    40036588:   a9025bf5    stp x21, x22, [sp, #32]                                       
    4003658c:   12001c56    and w22, w2, #0xff                                            
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                          
    40036590:   97ffd130    bl  4002aa50 <rtems_rfs_trace>                                
    40036594:   72001c1f    tst w0, #0xff                                                 
    40036598:   54000160    b.eq    400365c4 <rtems_rfs_file_io_start+0x54>  // b.none    <== ALWAYS TAKEN
    printf ("rtems-rfs: file-io: start: %s pos=%" PRIu32 ":%" PRIu32 "\n",                
    4003659c:   29430e62    ldp w2, w3, [x19, #24]                                        <== NOT EXECUTED
    400365a0:   710002df    cmp w22, #0x0                                                 <== NOT EXECUTED
    400365a4:   d0000084    adrp    x4, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    400365a8:   912bc084    add x4, x4, #0xaf0                                            <== NOT EXECUTED
    400365ac:   900000a1    adrp    x1, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    400365b0:   91392021    add x1, x1, #0xe48                                            <== NOT EXECUTED
    400365b4:   900000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    400365b8:   9a811081    csel    x1, x4, x1, ne  // ne = any                           <== NOT EXECUTED
    400365bc:   91394000    add x0, x0, #0xe50                                            <== NOT EXECUTED
    400365c0:   97ffaf94    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  if (!rtems_rfs_buffer_handle_has_block (&handle->buffer))                               
    400365c4:   f9400a60    ldr x0, [x19, #16]                                            
    rc = rtems_rfs_block_map_find (rtems_rfs_file_fs (handle),                            
    400365c8:   f9401661    ldr x1, [x19, #40]                                            
  if (!rtems_rfs_buffer_handle_has_block (&handle->buffer))                               
    400365cc:   b40005c0    cbz x0, 40036684 <rtems_rfs_file_io_start+0x114>              <== ALWAYS TAKEN
  if (read                                                                                
    400365d0:   35000216    cbnz    w22, 40036610 <rtems_rfs_file_io_start+0xa0>          <== NOT EXECUTED
    size = rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle));                          
    400365d4:   f9406820    ldr x0, [x1, #208]                                            
  return 0;                                                                               
    400365d8:   52800015    mov w21, #0x0                       // #0                     
  *available = size - rtems_rfs_file_block_offset (handle);                               
    400365dc:   b9401e61    ldr w1, [x19, #28]                                            
    size = rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle));                          
    400365e0:   f9400816    ldr x22, [x0, #16]                                            
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                          
    400365e4:   d2c00400    mov x0, #0x2000000000           // #137438953472              
  *available = size - rtems_rfs_file_block_offset (handle);                               
    400365e8:   cb0102c1    sub x1, x22, x1                                               
    400365ec:   f9000281    str x1, [x20]                                                 
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                          
    400365f0:   97ffd118    bl  4002aa50 <rtems_rfs_trace>                                
    400365f4:   72001c1f    tst w0, #0xff                                                 
    400365f8:   540002a1    b.ne    4003664c <rtems_rfs_file_io_start+0xdc>  // b.any     <== NEVER TAKEN
}                                                                                         
    400365fc:   2a1503e0    mov w0, w21                                                   
    40036600:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40036604:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40036608:   a8c57bfd    ldp x29, x30, [sp], #80                                       
    4003660c:   d65f03c0    ret                                                           
      && rtems_rfs_block_map_last (rtems_rfs_file_map (handle))                           
    40036610:   b9406820    ldr w0, [x1, #104]                                            
    40036614:   b9407022    ldr w2, [x1, #112]                                            
    40036618:   2a000043    orr w3, w2, w0                                                
    4003661c:   350002c3    cbnz    w3, 40036674 <rtems_rfs_file_io_start+0x104>          <== ALWAYS TAKEN
      && rtems_rfs_block_map_size_offset (rtems_rfs_file_map (handle)))                   
    40036620:   b9406c36    ldr w22, [x1, #108]                                           
    40036624:   34fffd96    cbz w22, 400365d4 <rtems_rfs_file_io_start+0x64>              <== NEVER TAKEN
  *available = size - rtems_rfs_file_block_offset (handle);                               
    40036628:   b9401e61    ldr w1, [x19, #28]                                            
    size = rtems_rfs_block_map_size_offset (rtems_rfs_file_map (handle));                 
    4003662c:   2a1603f6    mov w22, w22                                                  
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                          
    40036630:   d2c00400    mov x0, #0x2000000000           // #137438953472              
  return 0;                                                                               
    40036634:   52800015    mov w21, #0x0                       // #0                     
  *available = size - rtems_rfs_file_block_offset (handle);                               
    40036638:   cb0102c1    sub x1, x22, x1                                               
    4003663c:   f9000281    str x1, [x20]                                                 
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                          
    40036640:   97ffd104    bl  4002aa50 <rtems_rfs_trace>                                
    40036644:   72001c1f    tst w0, #0xff                                                 
    40036648:   54fffda0    b.eq    400365fc <rtems_rfs_file_io_start+0x8c>  // b.none    <== ALWAYS TAKEN
    printf ("rtems-rfs: file-io: start: available=%zu (%zu)\n",                           
    4003664c:   f9400281    ldr x1, [x20]                                                 <== NOT EXECUTED
    40036650:   aa1603e2    mov x2, x22                                                   <== NOT EXECUTED
    40036654:   900000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40036658:   913b6000    add x0, x0, #0xed8                                            <== NOT EXECUTED
    4003665c:   97ffaf6d    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
}                                                                                         
    40036660:   2a1503e0    mov w0, w21                                                   <== NOT EXECUTED
    40036664:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40036668:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    4003666c:   a8c57bfd    ldp x29, x30, [sp], #80                                       <== NOT EXECUTED
    40036670:   d65f03c0    ret                                                           <== NOT EXECUTED
      && rtems_rfs_block_map_last (rtems_rfs_file_map (handle))                           
    40036674:   51000400    sub w0, w0, #0x1                                              
    40036678:   6b00005f    cmp w2, w0                                                    
    4003667c:   54fffac1    b.ne    400365d4 <rtems_rfs_file_io_start+0x64>  // b.any     <== NEVER TAKEN
    40036680:   17ffffe8    b   40036620 <rtems_rfs_file_io_start+0xb0>                   
    rc = rtems_rfs_block_map_find (rtems_rfs_file_fs (handle),                            
    40036684:   f9406820    ldr x0, [x1, #208]                                            
    40036688:   910133e3    add x3, sp, #0x4c                                             
    4003668c:   91006262    add x2, x19, #0x18                                            
    40036690:   91016021    add x1, x1, #0x58                                             
    40036694:   f9001bf7    str x23, [sp, #48]                                            
    40036698:   97fff676    bl  40034070 <rtems_rfs_block_map_find>                       
    4003669c:   2a0003f5    mov w21, w0                                                   
    if (rc > 0)                                                                           
    400366a0:   7100001f    cmp w0, #0x0                                                  
    400366a4:   5400012d    b.le    400366c8 <rtems_rfs_file_io_start+0x158>              
      if (read && (rc == ENXIO))                                                          
    400366a8:   7100181f    cmp w0, #0x6                                                  
    400366ac:   1a9f17e0    cset    w0, eq  // eq = none                                  
    400366b0:   6a0002d7    ands    w23, w22, w0                                          
    400366b4:   54000861    b.ne    400367c0 <rtems_rfs_file_io_start+0x250>  // b.any    <== NEVER TAKEN
      if (rc != ENXIO)                                                                    
    400366b8:   71001abf    cmp w21, #0x6                                                 
    400366bc:   54000580    b.eq    4003676c <rtems_rfs_file_io_start+0x1fc>  // b.none   <== ALWAYS TAKEN
    400366c0:   f9401bf7    ldr x23, [sp, #48]                                            
    400366c4:   17ffffce    b   400365fc <rtems_rfs_file_io_start+0x8c>                   
      if (!read &&                                                                        
    400366c8:   34000316    cbz w22, 40036728 <rtems_rfs_file_io_start+0x1b8>             
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                        
    400366cc:   d2c00400    mov x0, #0x2000000000           // #137438953472              
    400366d0:   97ffd0e0    bl  4002aa50 <rtems_rfs_trace>                                
    400366d4:   72001c17    ands    w23, w0, #0xff                                        
    400366d8:   540007c0    b.eq    400367d0 <rtems_rfs_file_io_start+0x260>  // b.none   <== ALWAYS TAKEN
      printf ("rtems-rfs: file-io: start: block=%" PRIu32 " request-read=%s\n",           
    400366dc:   b9404fe1    ldr w1, [sp, #76]                                             <== NOT EXECUTED
    400366e0:   f0000082    adrp    x2, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400366e4:   91250042    add x2, x2, #0x940                                            <== NOT EXECUTED
    400366e8:   900000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    400366ec:   913a8000    add x0, x0, #0xea0                                            <== NOT EXECUTED
    400366f0:   97ffaf48    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    rc = rtems_rfs_buffer_handle_request (rtems_rfs_file_fs (handle),                     
    400366f4:   f9401660    ldr x0, [x19, #40]                                            
    400366f8:   2a1703e3    mov w3, w23                                                   
    400366fc:   b9404fe2    ldr w2, [sp, #76]                                             
    40036700:   91002261    add x1, x19, #0x8                                             
    40036704:   f9406800    ldr x0, [x0, #208]                                            
    40036708:   97ffc232    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
    4003670c:   2a0003f5    mov w21, w0                                                   
    if (rc > 0)                                                                           
    40036710:   7100001f    cmp w0, #0x0                                                  
    40036714:   54fffd6c    b.gt    400366c0 <rtems_rfs_file_io_start+0x150>              <== NEVER TAKEN
      && rtems_rfs_block_map_last (rtems_rfs_file_map (handle))                           
    40036718:   f9401661    ldr x1, [x19, #40]                                            
    4003671c:   f9401bf7    ldr x23, [sp, #48]                                            
  if (read                                                                                
    40036720:   34fff5b6    cbz w22, 400365d4 <rtems_rfs_file_io_start+0x64>              
    40036724:   17ffffbb    b   40036610 <rtems_rfs_file_io_start+0xa0>                   
      if (!read &&                                                                        
    40036728:   b9401e60    ldr w0, [x19, #28]                                            
    4003672c:   35000560    cbnz    w0, 400367d8 <rtems_rfs_file_io_start+0x268>          <== ALWAYS TAKEN
           (*available < rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle)))))          
    40036730:   f9401660    ldr x0, [x19, #40]                                            <== NOT EXECUTED
          (rtems_rfs_file_block_offset (handle) ||                                        
    40036734:   f9400281    ldr x1, [x20]                                                 <== NOT EXECUTED
           (*available < rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle)))))          
    40036738:   f9406800    ldr x0, [x0, #208]                                            <== NOT EXECUTED
          (rtems_rfs_file_block_offset (handle) ||                                        
    4003673c:   f9400800    ldr x0, [x0, #16]                                             <== NOT EXECUTED
    40036740:   eb00003f    cmp x1, x0                                                    <== NOT EXECUTED
    40036744:   540004a3    b.cc    400367d8 <rtems_rfs_file_io_start+0x268>  // b.lo, b.ul, b.last<== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                        
    40036748:   d2c00400    mov x0, #0x2000000000           // #137438953472              <== NOT EXECUTED
    4003674c:   97ffd0c1    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40036750:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40036754:   54000520    b.eq    400367f8 <rtems_rfs_file_io_start+0x288>  // b.none   <== NOT EXECUTED
      printf ("rtems-rfs: file-io: start: block=%" PRIu32 " request-read=%s\n",           
    40036758:   f0000082    adrp    x2, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    4003675c:   91252042    add x2, x2, #0x948                                            <== NOT EXECUTED
    40036760:   b9404fe1    ldr w1, [sp, #76]                                             <== NOT EXECUTED
    40036764:   52800017    mov w23, #0x0                       // #0                     <== NOT EXECUTED
    40036768:   17ffffe0    b   400366e8 <rtems_rfs_file_io_start+0x178>                  <== NOT EXECUTED
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                      
    4003676c:   d2c00400    mov x0, #0x2000000000           // #137438953472              
    40036770:   97ffd0b8    bl  4002aa50 <rtems_rfs_trace>                                
    40036774:   72001c1f    tst w0, #0xff                                                 
    40036778:   54000441    b.ne    40036800 <rtems_rfs_file_io_start+0x290>  // b.any    <== NEVER TAKEN
      rc = rtems_rfs_block_map_grow (rtems_rfs_file_fs (handle),                          
    4003677c:   f9401660    ldr x0, [x19, #40]                                            
    40036780:   910133e3    add x3, sp, #0x4c                                             
    40036784:   d2800022    mov x2, #0x1                    // #1                         
    40036788:   91016001    add x1, x0, #0x58                                             
    4003678c:   f9406800    ldr x0, [x0, #208]                                            
    40036790:   97fff6a8    bl  40034230 <rtems_rfs_block_map_grow>                       
    40036794:   2a0003f5    mov w21, w0                                                   
      if (rc > 0)                                                                         
    40036798:   7100001f    cmp w0, #0x0                                                  
    4003679c:   54fff92c    b.gt    400366c0 <rtems_rfs_file_io_start+0x150>              
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                        
    400367a0:   d2c00400    mov x0, #0x2000000000           // #137438953472              
    400367a4:   97ffd0ab    bl  4002aa50 <rtems_rfs_trace>                                
    400367a8:   72001c1f    tst w0, #0xff                                                 
    400367ac:   54000260    b.eq    400367f8 <rtems_rfs_file_io_start+0x288>  // b.none   <== ALWAYS TAKEN
      printf ("rtems-rfs: file-io: start: block=%" PRIu32 " request-read=%s\n",           
    400367b0:   f0000082    adrp    x2, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400367b4:   91252042    add x2, x2, #0x948                                            <== NOT EXECUTED
    400367b8:   b9404fe1    ldr w1, [sp, #76]                                             <== NOT EXECUTED
    400367bc:   17ffffcb    b   400366e8 <rtems_rfs_file_io_start+0x178>                  <== NOT EXECUTED
        return 0;                                                                         
    400367c0:   52800015    mov w21, #0x0                       // #0                     <== NOT EXECUTED
    400367c4:   f9401bf7    ldr x23, [sp, #48]                                            <== NOT EXECUTED
        *available = 0;                                                                   
    400367c8:   f900029f    str xzr, [x20]                                                <== NOT EXECUTED
        return 0;                                                                         
    400367cc:   17ffff8c    b   400365fc <rtems_rfs_file_io_start+0x8c>                   <== NOT EXECUTED
        request_read = true;                                                              
    400367d0:   52800037    mov w23, #0x1                       // #1                     
    400367d4:   17ffffc8    b   400366f4 <rtems_rfs_file_io_start+0x184>                  
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                        
    400367d8:   d2c00400    mov x0, #0x2000000000           // #137438953472              
    400367dc:   97ffd09d    bl  4002aa50 <rtems_rfs_trace>                                
    400367e0:   72001c17    ands    w23, w0, #0xff                                        
    400367e4:   54ffff60    b.eq    400367d0 <rtems_rfs_file_io_start+0x260>  // b.none   <== ALWAYS TAKEN
      printf ("rtems-rfs: file-io: start: block=%" PRIu32 " request-read=%s\n",           
    400367e8:   f0000082    adrp    x2, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400367ec:   91250042    add x2, x2, #0x940                                            <== NOT EXECUTED
    400367f0:   b9404fe1    ldr w1, [sp, #76]                                             <== NOT EXECUTED
    400367f4:   17ffffbd    b   400366e8 <rtems_rfs_file_io_start+0x178>                  <== NOT EXECUTED
      request_read = false;                                                               
    400367f8:   52800017    mov w23, #0x0                       // #0                     
    400367fc:   17ffffbe    b   400366f4 <rtems_rfs_file_io_start+0x184>                  
        printf ("rtems-rfs: file-io: start: grow\n");                                     
    40036800:   900000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40036804:   913a0000    add x0, x0, #0xe80                                            <== NOT EXECUTED
    40036808:   97ffaf26    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
    4003680c:   17ffffdc    b   4003677c <rtems_rfs_file_io_start+0x20c>                  <== NOT EXECUTED
                                                                                          

0000000040035f20 <rtems_rfs_file_open>: int rtems_rfs_file_open (rtems_rfs_file_system* fs, rtems_rfs_ino ino, int oflag, rtems_rfs_file_handle** file) {
    40035f20:   a9ba7bfd    stp x29, x30, [sp, #-96]!                                     
    40035f24:   910003fd    mov x29, sp                                                   
    40035f28:   a90153f3    stp x19, x20, [sp, #16]                                       
    40035f2c:   2a0103f4    mov w20, w1                                                   
    40035f30:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40035f34:   aa0003f6    mov x22, x0                                                   
  rtems_rfs_file_handle* handle;                                                          
  rtems_rfs_file_shared* shared;                                                          
  int                    rc;                                                              
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_OPEN))                                        
    40035f38:   d2c00100    mov x0, #0x800000000            // #34359738368               
{                                                                                         
    40035f3c:   a90363f7    stp x23, x24, [sp, #48]                                       
    40035f40:   aa0303f7    mov x23, x3                                                   
    40035f44:   a9046bf9    stp x25, x26, [sp, #64]                                       
    40035f48:   2a0203f9    mov w25, w2                                                   
    40035f4c:   a90573fb    stp x27, x28, [sp, #80]                                       
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_OPEN))                                        
    40035f50:   97ffd2c0    bl  4002aa50 <rtems_rfs_trace>                                
    40035f54:   72001c1f    tst w0, #0xff                                                 
    40035f58:   54000541    b.ne    40036000 <rtems_rfs_file_open+0xe0>  // b.any         <== NEVER TAKEN
    printf ("rtems-rfs: file-open: ino=%" PRId32 "\n", ino);                              
                                                                                          
  *file = NULL;                                                                           
    40035f5c:   f90002ff    str xzr, [x23]                                                
  /*                                                                                      
   * Allocate a new handle and initialise it. Do this before we deal with the             
   * shared node data so we do not have to be concerned with reference                    
   * counting.                                                                            
   */                                                                                     
  handle = malloc (sizeof (rtems_rfs_file_handle));                                       
    40035f60:   d2800021    mov x1, #0x1                    // #1                         
    40035f64:   d2800600    mov x0, #0x30                   // #48                        
    40035f68:   97fff19e    bl  400325e0 <calloc>                                         
    40035f6c:   aa0003fc    mov x28, x0                                                   
  if (!handle)                                                                            
    40035f70:   b4001540    cbz x0, 40036218 <rtems_rfs_file_open+0x2f8>                  <== NEVER TAKEN
  return _Chain_Immutable_head( the_chain )->next;                                        
    40035f74:   f94072d3    ldr x19, [x22, #224]                                          
  return &the_chain->Tail.Node;                                                           
    40035f78:   9103a2d5    add x21, x22, #0xe8                                           
rtems_rfs_file_get_shared (rtems_rfs_file_system* fs,                                     
                           rtems_rfs_ino          ino)                                    
{                                                                                         
  rtems_chain_node* node;                                                                 
  node = rtems_chain_first (&fs->file_shares);                                            
  while (!rtems_chain_is_tail (&fs->file_shares, node))                                   
    40035f7c:   eb15027f    cmp x19, x21                                                  
    40035f80:   540000a1    b.ne    40035f94 <rtems_rfs_file_open+0x74>  // b.any         <== NEVER TAKEN
    40035f84:   14000024    b   40036014 <rtems_rfs_file_open+0xf4>                       
  return the_node->next;                                                                  
    40035f88:   f9400273    ldr x19, [x19]                                                <== NOT EXECUTED
    40035f8c:   eb15027f    cmp x19, x21                                                  <== NOT EXECUTED
    40035f90:   54000420    b.eq    40036014 <rtems_rfs_file_open+0xf4>  // b.none        <== NOT EXECUTED
  {                                                                                       
    rtems_rfs_file_shared* shared;                                                        
    shared = (rtems_rfs_file_shared*) node;                                               
    if (shared->inode.ino == ino)                                                         
    40035f94:   b9402a64    ldr w4, [x19, #40]                                            <== NOT EXECUTED
    40035f98:   6b04029f    cmp w20, w4                                                   <== NOT EXECUTED
    40035f9c:   54ffff61    b.ne    40035f88 <rtems_rfs_file_open+0x68>  // b.any         <== NOT EXECUTED
    shared->references++;                                                                 
    40035fa0:   b9401261    ldr w1, [x19, #16]                                            <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_OPEN))                                      
    40035fa4:   d2c00100    mov x0, #0x800000000            // #34359738368               <== NOT EXECUTED
    shared->references++;                                                                 
    40035fa8:   11000421    add w1, w1, #0x1                                              <== NOT EXECUTED
    40035fac:   b9001261    str w1, [x19, #16]                                            <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_OPEN))                                      
    40035fb0:   97ffd2a8    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40035fb4:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40035fb8:   540001a1    b.ne    40035fec <rtems_rfs_file_open+0xcc>  // b.any         <== NOT EXECUTED
  return 0;                                                                               
    40035fbc:   52800018    mov w24, #0x0                       // #0                     
  *file = handle;                                                                         
    40035fc0:   f90002fc    str x28, [x23]                                                
  handle->flags  = oflag;                                                                 
    40035fc4:   b9000399    str w25, [x28]                                                
  handle->shared = shared;                                                                
    40035fc8:   f9001793    str x19, [x28, #40]                                           
}                                                                                         
    40035fcc:   2a1803e0    mov w0, w24                                                   
    40035fd0:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40035fd4:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40035fd8:   a94363f7    ldp x23, x24, [sp, #48]                                       
    40035fdc:   a9446bf9    ldp x25, x26, [sp, #64]                                       
    40035fe0:   a94573fb    ldp x27, x28, [sp, #80]                                       
    40035fe4:   a8c67bfd    ldp x29, x30, [sp], #96                                       
    40035fe8:   d65f03c0    ret                                                           
      printf ("rtems-rfs: file-open: ino=%" PRId32 " shared\n", ino);                     
    40035fec:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40035ff0:   b00000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40035ff4:   9132e000    add x0, x0, #0xcb8                                            <== NOT EXECUTED
    40035ff8:   97ffb106    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40035ffc:   17fffff0    b   40035fbc <rtems_rfs_file_open+0x9c>                       <== NOT EXECUTED
    printf ("rtems-rfs: file-open: ino=%" PRId32 "\n", ino);                              
    40036000:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40036004:   900000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40036008:   91326000    add x0, x0, #0xc98                                            <== NOT EXECUTED
    4003600c:   97ffb101    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40036010:   17ffffd3    b   40035f5c <rtems_rfs_file_open+0x3c>                       <== NOT EXECUTED
    shared = malloc (sizeof (rtems_rfs_file_shared));                                     
    40036014:   d2800021    mov x1, #0x1                    // #1                         
    40036018:   d2801b00    mov x0, #0xd8                   // #216                       
  rc = rtems_rfs_buffer_handle_open (fs, &handle->buffer);                                
    4003601c:   9100239a    add x26, x28, #0x8                                            
    shared = malloc (sizeof (rtems_rfs_file_shared));                                     
    40036020:   97fff170    bl  400325e0 <calloc>                                         
    40036024:   aa0003f3    mov x19, x0                                                   
    if (!shared)                                                                          
    40036028:   b4000fc0    cbz x0, 40036220 <rtems_rfs_file_open+0x300>                  <== NEVER TAKEN
    rc = rtems_rfs_inode_open (fs, ino, &shared->inode, true);                            
    4003602c:   9100627b    add x27, x19, #0x18                                           
    40036030:   2a1403e1    mov w1, w20                                                   
    40036034:   aa1b03e2    mov x2, x27                                                   
    40036038:   aa1603e0    mov x0, x22                                                   
    4003603c:   52800023    mov w3, #0x1                    // #1                         
    40036040:   97ffcb3c    bl  40028d30 <rtems_rfs_inode_open>                           
    40036044:   2a0003f8    mov w24, w0                                                   
    if (rc > 0)                                                                           
    40036048:   7100001f    cmp w0, #0x0                                                  
    4003604c:   5400090c    b.gt    4003616c <rtems_rfs_file_open+0x24c>                  <== NEVER TAKEN
    rc = rtems_rfs_block_map_open (fs, &shared->inode, &shared->map);                     
    40036050:   91016262    add x2, x19, #0x58                                            
    40036054:   aa1b03e1    mov x1, x27                                                   
    40036058:   aa1603e0    mov x0, x22                                                   
    4003605c:   97fff729    bl  40033d00 <rtems_rfs_block_map_open>                       
    40036060:   2a0003f8    mov w24, w0                                                   
    if (rc > 0)                                                                           
    40036064:   7100001f    cmp w0, #0x0                                                  
    40036068:   54000a8c    b.gt    400361b8 <rtems_rfs_file_open+0x298>                  <== NEVER TAKEN
    shared->references = 1;                                                               
    4003606c:   f9401a63    ldr x3, [x19, #48]                                            
    40036070:   52800020    mov w0, #0x1                    // #1                         
    40036074:   b9001260    str w0, [x19, #16]                                            
    rtems_rfs_inode_unload (fs, &shared->inode, false);                                   
    40036078:   aa1b03e1    mov x1, x27                                                   
  old_last = tail->previous;                                                              
    4003607c:   f94006a5    ldr x5, [x21, #8]                                             
    40036080:   52800002    mov w2, #0x0                    // #0                         
    40036084:   39403068    ldrb    w8, [x3, #12]                                         
    40036088:   aa1603e0    mov x0, x22                                                   
    4003608c:   39403467    ldrb    w7, [x3, #13]                                         
    40036090:   39403866    ldrb    w6, [x3, #14]                                         
    40036094:   39403c64    ldrb    w4, [x3, #15]                                         
    40036098:   aa072107    orr x7, x8, x7, lsl #8                                        
    4003609c:   aa0640e6    orr x6, x7, x6, lsl #16                                       
    400360a0:   aa0460c4    orr x4, x6, x4, lsl #24                                       
    400360a4:   5ac00884    rev w4, w4                                                    
    shared->size.count = rtems_rfs_inode_get_block_count (&shared->inode);                
    400360a8:   b900ba64    str w4, [x19, #184]                                           
    shared->size.offset = rtems_rfs_inode_get_block_offset (&shared->inode);              
    400360ac:   39402866    ldrb    w6, [x3, #10]                                         
    400360b0:   39402c64    ldrb    w4, [x3, #11]                                         
    400360b4:   aa0420c4    orr x4, x6, x4, lsl #8                                        
    400360b8:   5ac00484    rev16   w4, w4                                                
    400360bc:   12003c84    and w4, w4, #0xffff                                           
    400360c0:   b900be64    str w4, [x19, #188]                                           
  return rtems_rfs_read_u32 (&handle->node->atime);                                       
    400360c4:   39404068    ldrb    w8, [x3, #16]                                         
    400360c8:   39404467    ldrb    w7, [x3, #17]                                         
    400360cc:   39404866    ldrb    w6, [x3, #18]                                         
    400360d0:   39404c64    ldrb    w4, [x3, #19]                                         
    400360d4:   aa072107    orr x7, x8, x7, lsl #8                                        
    400360d8:   aa0640e6    orr x6, x7, x6, lsl #16                                       
    400360dc:   aa0460c4    orr x4, x6, x4, lsl #24                                       
    400360e0:   5ac00884    rev w4, w4                                                    
    shared->atime = rtems_rfs_inode_get_atime (&shared->inode);                           
    400360e4:   b900c264    str w4, [x19, #192]                                           
  return rtems_rfs_read_u32 (&handle->node->mtime);                                       
    400360e8:   39405068    ldrb    w8, [x3, #20]                                         
    400360ec:   39405467    ldrb    w7, [x3, #21]                                         
    400360f0:   39405866    ldrb    w6, [x3, #22]                                         
    400360f4:   39405c64    ldrb    w4, [x3, #23]                                         
    400360f8:   aa072107    orr x7, x8, x7, lsl #8                                        
    400360fc:   aa0640e6    orr x6, x7, x6, lsl #16                                       
    40036100:   aa0460c4    orr x4, x6, x4, lsl #24                                       
    40036104:   5ac00884    rev w4, w4                                                    
    shared->mtime = rtems_rfs_inode_get_mtime (&shared->inode);                           
    40036108:   b900c664    str w4, [x19, #196]                                           
  return rtems_rfs_read_u32 (&handle->node->ctime);                                       
    4003610c:   39406067    ldrb    w7, [x3, #24]                                         
    40036110:   39406466    ldrb    w6, [x3, #25]                                         
    40036114:   39406864    ldrb    w4, [x3, #26]                                         
    40036118:   39406c63    ldrb    w3, [x3, #27]                                         
    4003611c:   aa0620e6    orr x6, x7, x6, lsl #8                                        
  the_node->next = tail;                                                                  
    40036120:   f9000275    str x21, [x19]                                                
    40036124:   aa0440c4    orr x4, x6, x4, lsl #16                                       
  tail->previous = the_node;                                                              
    40036128:   f90006b3    str x19, [x21, #8]                                            
    4003612c:   aa036083    orr x3, x4, x3, lsl #24                                       
    shared->fs = fs;                                                                      
    40036130:   f9006a76    str x22, [x19, #208]                                          
    40036134:   5ac00863    rev w3, w3                                                    
    shared->ctime = rtems_rfs_inode_get_ctime (&shared->inode);                           
    40036138:   b900ca63    str w3, [x19, #200]                                           
  old_last->next = the_node;                                                              
    4003613c:   f90000b3    str x19, [x5]                                                 
  the_node->previous = old_last;                                                          
    40036140:   f9000665    str x5, [x19, #8]                                             
    rtems_rfs_inode_unload (fs, &shared->inode, false);                                   
    40036144:   97ffcb37    bl  40028e20 <rtems_rfs_inode_unload>                         
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_OPEN))                                      
    40036148:   d2c00100    mov x0, #0x800000000            // #34359738368               
    4003614c:   97ffd241    bl  4002aa50 <rtems_rfs_trace>                                
    40036150:   72001c1f    tst w0, #0xff                                                 
    40036154:   54fff340    b.eq    40035fbc <rtems_rfs_file_open+0x9c>  // b.none        <== ALWAYS TAKEN
      printf ("rtems-rfs: file-open: ino=%" PRId32 " share created\n", ino);              
    40036158:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    4003615c:   900000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40036160:   91354000    add x0, x0, #0xd50                                            <== NOT EXECUTED
    40036164:   97ffb0ab    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40036168:   17ffff95    b   40035fbc <rtems_rfs_file_open+0x9c>                       <== NOT EXECUTED
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_OPEN))                                    
    4003616c:   d2c00100    mov x0, #0x800000000            // #34359738368               <== NOT EXECUTED
    40036170:   97ffd238    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40036174:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40036178:   54000401    b.ne    400361f8 <rtems_rfs_file_open+0x2d8>  // b.any        <== NOT EXECUTED
      free (shared);                                                                      
    4003617c:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    40036180:   97ffb18c    bl  400227b0 <free>                                           <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40036184:   aa1a03e1    mov x1, x26                                                   <== NOT EXECUTED
    40036188:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    4003618c:   97ffc441    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
      free (handle);                                                                      
    40036190:   aa1c03e0    mov x0, x28                                                   <== NOT EXECUTED
    40036194:   97ffb187    bl  400227b0 <free>                                           <== NOT EXECUTED
}                                                                                         
    40036198:   2a1803e0    mov w0, w24                                                   <== NOT EXECUTED
    4003619c:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    400361a0:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    400361a4:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    400361a8:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    400361ac:   a94573fb    ldp x27, x28, [sp, #80]                                       <== NOT EXECUTED
    400361b0:   a8c67bfd    ldp x29, x30, [sp], #96                                       <== NOT EXECUTED
    400361b4:   d65f03c0    ret                                                           <== NOT EXECUTED
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_OPEN))                                    
    400361b8:   d2c00100    mov x0, #0x800000000            // #34359738368               <== NOT EXECUTED
    400361bc:   97ffd225    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400361c0:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400361c4:   540000a1    b.ne    400361d8 <rtems_rfs_file_open+0x2b8>  // b.any        <== NOT EXECUTED
      rtems_rfs_inode_close (fs, &shared->inode);                                         
    400361c8:   aa1b03e1    mov x1, x27                                                   <== NOT EXECUTED
    400361cc:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    400361d0:   97ffcb54    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
    400361d4:   17ffffea    b   4003617c <rtems_rfs_file_open+0x25c>                      <== NOT EXECUTED
        printf ("rtems-rfs: file-open: block map open failed: %d: %s\n",                  
    400361d8:   2a1803e0    mov w0, w24                                                   <== NOT EXECUTED
    400361dc:   94002290    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    400361e0:   900000a1    adrp    x1, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    400361e4:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    400361e8:   91346020    add x0, x1, #0xd18                                            <== NOT EXECUTED
    400361ec:   2a1803e1    mov w1, w24                                                   <== NOT EXECUTED
    400361f0:   97ffb088    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    400361f4:   17fffff5    b   400361c8 <rtems_rfs_file_open+0x2a8>                      <== NOT EXECUTED
        printf ("rtems-rfs: file-open: inode open failed: %d: %s\n",                      
    400361f8:   2a1803e0    mov w0, w24                                                   <== NOT EXECUTED
    400361fc:   94002288    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40036200:   900000a1    adrp    x1, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40036204:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40036208:   91338020    add x0, x1, #0xce0                                            <== NOT EXECUTED
    4003620c:   2a1803e1    mov w1, w24                                                   <== NOT EXECUTED
    40036210:   97ffb080    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
      free (shared);                                                                      
    40036214:   17ffffda    b   4003617c <rtems_rfs_file_open+0x25c>                      <== NOT EXECUTED
    return ENOMEM;                                                                        
    40036218:   52800198    mov w24, #0xc                       // #12                    <== NOT EXECUTED
    4003621c:   17ffff6c    b   40035fcc <rtems_rfs_file_open+0xac>                       <== NOT EXECUTED
    40036220:   aa1a03e1    mov x1, x26                                                   <== NOT EXECUTED
    40036224:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    40036228:   97ffc41a    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
      return ENOMEM;                                                                      
    4003622c:   52800198    mov w24, #0xc                       // #12                    <== NOT EXECUTED
      free (handle);                                                                      
    40036230:   aa1c03e0    mov x0, x28                                                   <== NOT EXECUTED
    40036234:   97ffb15f    bl  400227b0 <free>                                           <== NOT EXECUTED
      return ENOMEM;                                                                      
    40036238:   17ffff65    b   40035fcc <rtems_rfs_file_open+0xac>                       <== NOT EXECUTED
    4003623c:   00000000    udf #0                                                        
                                                                                          

0000000040036a80 <rtems_rfs_file_seek>: {
    40036a80:   a9bc7bfd    stp x29, x30, [sp, #-64]!                                     
    40036a84:   910003fd    mov x29, sp                                                   
    40036a88:   a90153f3    stp x19, x20, [sp, #16]                                       
    40036a8c:   aa0003f3    mov x19, x0                                                   
    40036a90:   aa0103f4    mov x20, x1                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                          
    40036a94:   d2c00400    mov x0, #0x2000000000           // #137438953472              
{                                                                                         
    40036a98:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40036a9c:   aa0203f5    mov x21, x2                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                          
    40036aa0:   97ffcfec    bl  4002aa50 <rtems_rfs_trace>                                
    40036aa4:   72001c1f    tst w0, #0xff                                                 
    40036aa8:   54000541    b.ne    40036b50 <rtems_rfs_file_seek+0xd0>  // b.any         <== NEVER TAKEN
  if (pos <= rtems_rfs_file_shared_get_size (rtems_rfs_file_fs (handle),                  
    40036aac:   f9401660    ldr x0, [x19, #40]                                            
    40036ab0:   9102e001    add x1, x0, #0xb8                                             
    40036ab4:   f9406800    ldr x0, [x0, #208]                                            
    40036ab8:   97fff486    bl  40033cd0 <rtems_rfs_block_get_size>                       
    40036abc:   eb00029f    cmp x20, x0                                                   
    40036ac0:   540001e9    b.ls    40036afc <rtems_rfs_file_seek+0x7c>  // b.plast       <== ALWAYS TAKEN
  if (rtems_rfs_buffer_handle_has_block (&handle->buffer))                                
    40036ac4:   f9400a60    ldr x0, [x19, #16]                                            <== NOT EXECUTED
    40036ac8:   b40000e0    cbz x0, 40036ae4 <rtems_rfs_file_seek+0x64>                   <== NOT EXECUTED
    rc = rtems_rfs_buffer_handle_release (rtems_rfs_file_fs (handle),                     
    40036acc:   f9401660    ldr x0, [x19, #40]                                            <== NOT EXECUTED
    40036ad0:   91002261    add x1, x19, #0x8                                             <== NOT EXECUTED
    40036ad4:   f9406800    ldr x0, [x0, #208]                                            <== NOT EXECUTED
    40036ad8:   97ffc1ee    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
    if (rc > 0)                                                                           
    40036adc:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40036ae0:   5400006c    b.gt    40036aec <rtems_rfs_file_seek+0x6c>                   <== NOT EXECUTED
  return 0;                                                                               
    40036ae4:   52800000    mov w0, #0x0                    // #0                         
  *new_pos = pos;                                                                         
    40036ae8:   f90002b4    str x20, [x21]                                                
}                                                                                         
    40036aec:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40036af0:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40036af4:   a8c47bfd    ldp x29, x30, [sp], #64                                       
    40036af8:   d65f03c0    ret                                                           
    rtems_rfs_file_set_bpos (handle, pos);                                                
    40036afc:   f9401660    ldr x0, [x19, #40]                                            
    40036b00:   91006276    add x22, x19, #0x18                                           
    40036b04:   aa1603e2    mov x2, x22                                                   
    40036b08:   aa1403e1    mov x1, x20                                                   
    40036b0c:   f9406800    ldr x0, [x0, #208]                                            
    40036b10:   97fff464    bl  40033ca0 <rtems_rfs_block_get_bpos>                       
    if (rtems_rfs_buffer_handle_has_block (&handle->buffer))                              
    40036b14:   f9400a60    ldr x0, [x19, #16]                                            
    40036b18:   b4fffe60    cbz x0, 40036ae4 <rtems_rfs_file_seek+0x64>                   <== ALWAYS TAKEN
      rc = rtems_rfs_block_map_find (rtems_rfs_file_fs (handle),                          
    40036b1c:   f9401660    ldr x0, [x19, #40]                                            <== NOT EXECUTED
    40036b20:   aa1603e2    mov x2, x22                                                   <== NOT EXECUTED
    40036b24:   9100f3e3    add x3, sp, #0x3c                                             <== NOT EXECUTED
    40036b28:   91016001    add x1, x0, #0x58                                             <== NOT EXECUTED
    40036b2c:   f9406800    ldr x0, [x0, #208]                                            <== NOT EXECUTED
    40036b30:   97fff550    bl  40034070 <rtems_rfs_block_map_find>                       <== NOT EXECUTED
      if (rc > 0)                                                                         
    40036b34:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40036b38:   54fffdac    b.gt    40036aec <rtems_rfs_file_seek+0x6c>                   <== NOT EXECUTED
      if (rtems_rfs_buffer_bnum (&handle->buffer) != block)                               
    40036b3c:   b9400e61    ldr w1, [x19, #12]                                            <== NOT EXECUTED
    40036b40:   b9403fe0    ldr w0, [sp, #60]                                             <== NOT EXECUTED
    40036b44:   6b00003f    cmp w1, w0                                                    <== NOT EXECUTED
    40036b48:   54fffce0    b.eq    40036ae4 <rtems_rfs_file_seek+0x64>  // b.none        <== NOT EXECUTED
    40036b4c:   17ffffe0    b   40036acc <rtems_rfs_file_seek+0x4c>                       <== NOT EXECUTED
    printf ("rtems-rfs: file-seek: new=%" PRIu64 "\n", pos);                              
    40036b50:   aa1403e1    mov x1, x20                                                   <== NOT EXECUTED
    40036b54:   900000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40036b58:   913ea000    add x0, x0, #0xfa8                                            <== NOT EXECUTED
    40036b5c:   97ffae2d    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40036b60:   17ffffd3    b   40036aac <rtems_rfs_file_seek+0x2c>                       <== NOT EXECUTED
    ...                                                                                   
                                                                                          

0000000040036b70 <rtems_rfs_file_set_size>: {
    40036b70:   a9b97bfd    stp x29, x30, [sp, #-112]!                                    <== NOT EXECUTED
    40036b74:   910003fd    mov x29, sp                                                   <== NOT EXECUTED
    40036b78:   a9046bf9    stp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    40036b7c:   aa0003f9    mov x25, x0                                                   <== NOT EXECUTED
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                          
    40036b80:   d2c00400    mov x0, #0x2000000000           // #137438953472              <== NOT EXECUTED
{                                                                                         
    40036b84:   a90153f3    stp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40036b88:   aa0103f3    mov x19, x1                                                   <== NOT EXECUTED
    40036b8c:   a9025bf5    stp x21, x22, [sp, #32]                                       <== NOT EXECUTED
  rtems_rfs_block_map* map  = rtems_rfs_file_map (handle);                                
    40036b90:   f9401736    ldr x22, [x25, #40]                                           <== NOT EXECUTED
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))                                          
    40036b94:   97ffcfaf    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40036b98:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40036b9c:   54000e81    b.ne    40036d6c <rtems_rfs_file_set_size+0x1fc>  // b.any    <== NOT EXECUTED
  size = rtems_rfs_file_size (handle);                                                    
    40036ba0:   f9401720    ldr x0, [x25, #40]                                            <== NOT EXECUTED
    40036ba4:   9102e001    add x1, x0, #0xb8                                             <== NOT EXECUTED
    40036ba8:   f9406800    ldr x0, [x0, #208]                                            <== NOT EXECUTED
    40036bac:   97fff449    bl  40033cd0 <rtems_rfs_block_get_size>                       <== NOT EXECUTED
    40036bb0:   aa0003f4    mov x20, x0                                                   <== NOT EXECUTED
  if (size != new_size)                                                                   
    40036bb4:   eb00027f    cmp x19, x0                                                   <== NOT EXECUTED
    40036bb8:   54000b20    b.eq    40036d1c <rtems_rfs_file_set_size+0x1ac>  // b.none   <== NOT EXECUTED
      rc = rtems_rfs_block_map_free_all (rtems_rfs_file_fs (handle), map);                
    40036bbc:   f9401721    ldr x1, [x25, #40]                                            <== NOT EXECUTED
  rtems_rfs_block_map* map  = rtems_rfs_file_map (handle);                                
    40036bc0:   910162da    add x26, x22, #0x58                                           <== NOT EXECUTED
      rc = rtems_rfs_block_map_free_all (rtems_rfs_file_fs (handle), map);                
    40036bc4:   f9406820    ldr x0, [x1, #208]                                            <== NOT EXECUTED
    if (new_size == 0)                                                                    
    40036bc8:   b4000993    cbz x19, 40036cf8 <rtems_rfs_file_set_size+0x188>             <== NOT EXECUTED
          rtems_rfs_block_map_count (map) -                                               
    40036bcc:   b9401345    ldr w5, [x26, #16]                                            <== NOT EXECUTED
        length = rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle));                    
    40036bd0:   f9400815    ldr x21, [x0, #16]                                            <== NOT EXECUTED
      if (size < new_size)                                                                
    40036bd4:   54000d69    b.ls    40036d80 <rtems_rfs_file_set_size+0x210>  // b.plast  <== NOT EXECUTED
        count = new_size - size;                                                          
    40036bd8:   cb140274    sub x20, x19, x20                                             <== NOT EXECUTED
  map->dirty = true;                                                                      
    40036bdc:   52800036    mov w22, #0x1                       // #1                     <== NOT EXECUTED
    40036be0:   a90363f7    stp x23, x24, [sp, #48]                                       <== NOT EXECUTED
          rc = rtems_rfs_buffer_handle_request (rtems_rfs_file_fs (handle),               
    40036be4:   91002337    add x23, x25, #0x8                                            <== NOT EXECUTED
        read_block = false;                                                               
    40036be8:   52800018    mov w24, #0x0                       // #0                     <== NOT EXECUTED
    40036bec:   14000024    b   40036c7c <rtems_rfs_file_set_size+0x10c>                  <== NOT EXECUTED
            length = count + bpos.boff;                                                   
    40036bf0:   0b140015    add w21, w0, w20                                              <== NOT EXECUTED
            read_block = true;                                                            
    40036bf4:   52800038    mov w24, #0x1                       // #1                     <== NOT EXECUTED
    40036bf8:   39000356    strb    w22, [x26]                                            <== NOT EXECUTED
  map->size.offset = offset;                                                              
    40036bfc:   b9001755    str w21, [x26, #20]                                           <== NOT EXECUTED
          rc = rtems_rfs_buffer_handle_request (rtems_rfs_file_fs (handle),               
    40036c00:   f9401720    ldr x0, [x25, #40]                                            <== NOT EXECUTED
    40036c04:   2a1803e3    mov w3, w24                                                   <== NOT EXECUTED
    40036c08:   b9405fe2    ldr w2, [sp, #92]                                             <== NOT EXECUTED
    40036c0c:   aa1703e1    mov x1, x23                                                   <== NOT EXECUTED
    40036c10:   f9406800    ldr x0, [x0, #208]                                            <== NOT EXECUTED
    40036c14:   97ffc0ef    bl  40026fd0 <rtems_rfs_buffer_handle_request>                <== NOT EXECUTED
    40036c18:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
          if (rc > 0)                                                                     
    40036c1c:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40036c20:   54000fac    b.gt    40036e14 <rtems_rfs_file_set_size+0x2a4>              <== NOT EXECUTED
          dst = rtems_rfs_buffer_data (&handle->buffer);                                  
    40036c24:   f9400b22    ldr x2, [x25, #16]                                            <== NOT EXECUTED
          memset (dst + bpos.boff, 0, length - bpos.boff);                                
    40036c28:   52800001    mov w1, #0x0                    // #0                         <== NOT EXECUTED
    40036c2c:   b94067e0    ldr w0, [sp, #100]                                            <== NOT EXECUTED
    40036c30:   f9401c43    ldr x3, [x2, #56]                                             <== NOT EXECUTED
    40036c34:   4b0002a2    sub w2, w21, w0                                               <== NOT EXECUTED
    40036c38:   8b204060    add x0, x3, w0, uxtw                                          <== NOT EXECUTED
    40036c3c:   94001cdc    bl  4003dfac <memset>                                         <== NOT EXECUTED
          rc = rtems_rfs_buffer_handle_release (rtems_rfs_file_fs (handle),               
    40036c40:   f9401720    ldr x0, [x25, #40]                                            <== NOT EXECUTED
          rtems_rfs_buffer_mark_dirty (rtems_rfs_file_buffer (handle));                   
    40036c44:   39002336    strb    w22, [x25, #8]                                        <== NOT EXECUTED
          rc = rtems_rfs_buffer_handle_release (rtems_rfs_file_fs (handle),               
    40036c48:   aa1703e1    mov x1, x23                                                   <== NOT EXECUTED
    40036c4c:   f9406800    ldr x0, [x0, #208]                                            <== NOT EXECUTED
    40036c50:   97ffc190    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
    40036c54:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
          if (rc > 0)                                                                     
    40036c58:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40036c5c:   54000dcc    b.gt    40036e14 <rtems_rfs_file_set_size+0x2a4>              <== NOT EXECUTED
          count -= length - bpos.boff;                                                    
    40036c60:   b94067e0    ldr w0, [sp, #100]                                            <== NOT EXECUTED
    handle->shared->size.count  = rtems_rfs_block_map_count (map);                        
    40036c64:   b9401345    ldr w5, [x26, #16]                                            <== NOT EXECUTED
          count -= length - bpos.boff;                                                    
    40036c68:   4b0002a0    sub w0, w21, w0                                               <== NOT EXECUTED
        while (count)                                                                     
    40036c6c:   eb000294    subs    x20, x20, x0                                          <== NOT EXECUTED
    handle->shared->size.count  = rtems_rfs_block_map_count (map);                        
    40036c70:   f9401721    ldr x1, [x25, #40]                                            <== NOT EXECUTED
        while (count)                                                                     
    40036c74:   54000de0    b.eq    40036e30 <rtems_rfs_file_set_size+0x2c0>  // b.none   <== NOT EXECUTED
          rc = rtems_rfs_block_map_find (rtems_rfs_file_fs (handle),                      
    40036c78:   f9406820    ldr x0, [x1, #208]                                            <== NOT EXECUTED
          rtems_rfs_block_size_get_bpos (rtems_rfs_block_map_size (map), &bpos);          
    40036c7c:   510004a4    sub w4, w5, #0x1                                              <== NOT EXECUTED
    40036c80:   b9401746    ldr w6, [x26, #20]                                            <== NOT EXECUTED
          rc = rtems_rfs_block_map_find (rtems_rfs_file_fs (handle),                      
    40036c84:   910173e3    add x3, sp, #0x5c                                             <== NOT EXECUTED
    40036c88:   910183e2    add x2, sp, #0x60                                             <== NOT EXECUTED
    40036c8c:   aa1a03e1    mov x1, x26                                                   <== NOT EXECUTED
          rtems_rfs_block_size_get_bpos (rtems_rfs_block_map_size (map), &bpos);          
    40036c90:   710000df    cmp w6, #0x0                                                  <== NOT EXECUTED
    40036c94:   b9006bff    str wzr, [sp, #104]                                           <== NOT EXECUTED
    40036c98:   1a851084    csel    w4, w4, w5, ne  // ne = any                           <== NOT EXECUTED
    40036c9c:   290c1be4    stp w4, w6, [sp, #96]                                         <== NOT EXECUTED
          rc = rtems_rfs_block_map_find (rtems_rfs_file_fs (handle),                      
    40036ca0:   97fff4f4    bl  40034070 <rtems_rfs_block_map_find>                       <== NOT EXECUTED
    40036ca4:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
          if (rc > 0)                                                                     
    40036ca8:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40036cac:   5400018d    b.le    40036cdc <rtems_rfs_file_set_size+0x16c>              <== NOT EXECUTED
            if (rc != ENXIO)                                                              
    40036cb0:   7100181f    cmp w0, #0x6                                                  <== NOT EXECUTED
    40036cb4:   54000b01    b.ne    40036e14 <rtems_rfs_file_set_size+0x2a4>  // b.any    <== NOT EXECUTED
            rc = rtems_rfs_block_map_grow (rtems_rfs_file_fs (handle),                    
    40036cb8:   f9401720    ldr x0, [x25, #40]                                            <== NOT EXECUTED
    40036cbc:   910173e3    add x3, sp, #0x5c                                             <== NOT EXECUTED
    40036cc0:   aa1a03e1    mov x1, x26                                                   <== NOT EXECUTED
    40036cc4:   d2800022    mov x2, #0x1                    // #1                         <== NOT EXECUTED
    40036cc8:   f9406800    ldr x0, [x0, #208]                                            <== NOT EXECUTED
    40036ccc:   97fff559    bl  40034230 <rtems_rfs_block_map_grow>                       <== NOT EXECUTED
    40036cd0:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
            if (rc > 0)                                                                   
    40036cd4:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40036cd8:   540009ec    b.gt    40036e14 <rtems_rfs_file_set_size+0x2a4>              <== NOT EXECUTED
          if (count < (length - bpos.boff))                                               
    40036cdc:   b94067e0    ldr w0, [sp, #100]                                            <== NOT EXECUTED
    40036ce0:   4b0002a1    sub w1, w21, w0                                               <== NOT EXECUTED
    40036ce4:   eb14003f    cmp x1, x20                                                   <== NOT EXECUTED
    40036ce8:   54fff848    b.hi    40036bf0 <rtems_rfs_file_set_size+0x80>  // b.pmore   <== NOT EXECUTED
  map->dirty = true;                                                                      
    40036cec:   39000356    strb    w22, [x26]                                            <== NOT EXECUTED
  map->size.offset = offset;                                                              
    40036cf0:   b900175f    str wzr, [x26, #20]                                           <== NOT EXECUTED
}                                                                                         
    40036cf4:   17ffffc3    b   40036c00 <rtems_rfs_file_set_size+0x90>                   <== NOT EXECUTED
      rc = rtems_rfs_block_map_free_all (rtems_rfs_file_fs (handle), map);                
    40036cf8:   aa1a03e1    mov x1, x26                                                   <== NOT EXECUTED
    40036cfc:   97fff6f9    bl  400348e0 <rtems_rfs_block_map_free_all>                   <== NOT EXECUTED
    40036d00:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
      if (rc > 0)                                                                         
    40036d04:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40036d08:   5400012c    b.gt    40036d2c <rtems_rfs_file_set_size+0x1bc>              <== NOT EXECUTED
    handle->shared->size.count  = rtems_rfs_block_map_count (map);                        
    40036d0c:   b9401345    ldr w5, [x26, #16]                                            <== NOT EXECUTED
    40036d10:   f9401721    ldr x1, [x25, #40]                                            <== NOT EXECUTED
    handle->shared->size.offset = rtems_rfs_block_map_size_offset (map);                  
    40036d14:   b9401740    ldr w0, [x26, #20]                                            <== NOT EXECUTED
    40036d18:   29170025    stp w5, w0, [x1, #184]                                        <== NOT EXECUTED
  if (rtems_rfs_file_update_mtime (handle))                                               
    40036d1c:   b9400320    ldr w0, [x25]                                                 <== NOT EXECUTED
    40036d20:   121f0013    and w19, w0, #0x2                                             <== NOT EXECUTED
    40036d24:   36080100    tbz w0, #1, 40036d44 <rtems_rfs_file_set_size+0x1d4>          <== NOT EXECUTED
  return 0;                                                                               
    40036d28:   52800013    mov w19, #0x0                       // #0                     <== NOT EXECUTED
}                                                                                         
    40036d2c:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40036d30:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40036d34:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40036d38:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    40036d3c:   a8c77bfd    ldp x29, x30, [sp], #112                                      <== NOT EXECUTED
    40036d40:   d65f03c0    ret                                                           <== NOT EXECUTED
    handle->shared->mtime = time (NULL);                                                  
    40036d44:   d2800000    mov x0, #0x0                    // #0                         <== NOT EXECUTED
    40036d48:   94002db0    bl  40042408 <time>                                           <== NOT EXECUTED
    40036d4c:   f9401721    ldr x1, [x25, #40]                                            <== NOT EXECUTED
}                                                                                         
    40036d50:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    handle->shared->mtime = time (NULL);                                                  
    40036d54:   b900c420    str w0, [x1, #196]                                            <== NOT EXECUTED
}                                                                                         
    40036d58:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40036d5c:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40036d60:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    40036d64:   a8c77bfd    ldp x29, x30, [sp], #112                                      <== NOT EXECUTED
    40036d68:   d65f03c0    ret                                                           <== NOT EXECUTED
    printf ("rtems-rfs: file-set-size: size=%" PRIu64 "\n", new_size);                    
    40036d6c:   aa1303e1    mov x1, x19                                                   <== NOT EXECUTED
    40036d70:   900000a0    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    40036d74:   913f2000    add x0, x0, #0xfc8                                            <== NOT EXECUTED
    40036d78:   97ffada6    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40036d7c:   17ffff89    b   40036ba0 <rtems_rfs_file_set_size+0x30>                   <== NOT EXECUTED
          (((new_size - 1) /                                                              
    40036d80:   d1000663    sub x3, x19, #0x1                                             <== NOT EXECUTED
        blocks =                                                                          
    40036d84:   510004a2    sub w2, w5, #0x1                                              <== NOT EXECUTED
          new_size % rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle));                
    40036d88:   9ad50a74    udiv    x20, x19, x21                                         <== NOT EXECUTED
          (((new_size - 1) /                                                              
    40036d8c:   9ad50863    udiv    x3, x3, x21                                           <== NOT EXECUTED
          new_size % rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle));                
    40036d90:   9b15ce95    msub    x21, x20, x21, x19                                    <== NOT EXECUTED
        if (blocks)                                                                       
    40036d94:   6b030042    subs    w2, w2, w3                                            <== NOT EXECUTED
    40036d98:   540002c1    b.ne    40036df0 <rtems_rfs_file_set_size+0x280>  // b.any    <== NOT EXECUTED
        if (rtems_rfs_block_pos_past_end (rtems_rfs_file_bpos (handle),                   
    40036d9c:   b9401b20    ldr w0, [x25, #24]                                            <== NOT EXECUTED
  map->dirty = true;                                                                      
    40036da0:   52800022    mov w2, #0x1                    // #1                         <== NOT EXECUTED
  map->size.offset = offset;                                                              
    40036da4:   b9001755    str w21, [x26, #20]                                           <== NOT EXECUTED
  map->dirty = true;                                                                      
    40036da8:   390162c2    strb    w2, [x22, #88]                                        <== NOT EXECUTED
    40036dac:   34000040    cbz w0, 40036db4 <rtems_rfs_file_set_size+0x244>              <== NOT EXECUTED
    40036db0:   34000145    cbz w5, 40036dd8 <rtems_rfs_file_set_size+0x268>              <== NOT EXECUTED
    40036db4:   6b05001f    cmp w0, w5                                                    <== NOT EXECUTED
    40036db8:   54000102    b.cs    40036dd8 <rtems_rfs_file_set_size+0x268>  // b.hs, b.nlast<== NOT EXECUTED
    40036dbc:   510004a2    sub w2, w5, #0x1                                              <== NOT EXECUTED
    40036dc0:   6b02001f    cmp w0, w2                                                    <== NOT EXECUTED
    40036dc4:   54fffa81    b.ne    40036d14 <rtems_rfs_file_set_size+0x1a4>  // b.any    <== NOT EXECUTED
    40036dc8:   b9401f20    ldr w0, [x25, #28]                                            <== NOT EXECUTED
    40036dcc:   6b15001f    cmp w0, w21                                                   <== NOT EXECUTED
    40036dd0:   54fffa29    b.ls    40036d14 <rtems_rfs_file_set_size+0x1a4>  // b.plast  <== NOT EXECUTED
    40036dd4:   d503201f    nop                                                           <== NOT EXECUTED
          rtems_rfs_block_size_get_bpos (rtems_rfs_block_map_size (map),                  
    40036dd8:   710002bf    cmp w21, #0x0                                                 <== NOT EXECUTED
    40036ddc:   510004a0    sub w0, w5, #0x1                                              <== NOT EXECUTED
    40036de0:   1a851000    csel    w0, w0, w5, ne  // ne = any                           <== NOT EXECUTED
    40036de4:   29035720    stp w0, w21, [x25, #24]                                       <== NOT EXECUTED
    40036de8:   b900233f    str wzr, [x25, #32]                                           <== NOT EXECUTED
    40036dec:   17ffffca    b   40036d14 <rtems_rfs_file_set_size+0x1a4>                  <== NOT EXECUTED
          rc = rtems_rfs_block_map_shrink (rtems_rfs_file_fs (handle),                    
    40036df0:   2a0203e2    mov w2, w2                                                    <== NOT EXECUTED
    40036df4:   91016021    add x1, x1, #0x58                                             <== NOT EXECUTED
    40036df8:   97fff5fe    bl  400345f0 <rtems_rfs_block_map_shrink>                     <== NOT EXECUTED
    40036dfc:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
          if (rc > 0)                                                                     
    40036e00:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40036e04:   54fff94c    b.gt    40036d2c <rtems_rfs_file_set_size+0x1bc>              <== NOT EXECUTED
        if (rtems_rfs_block_pos_past_end (rtems_rfs_file_bpos (handle),                   
    40036e08:   b9401345    ldr w5, [x26, #16]                                            <== NOT EXECUTED
    40036e0c:   f9401721    ldr x1, [x25, #40]                                            <== NOT EXECUTED
    40036e10:   17ffffe3    b   40036d9c <rtems_rfs_file_set_size+0x22c>                  <== NOT EXECUTED
}                                                                                         
    40036e14:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40036e18:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40036e1c:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40036e20:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40036e24:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    40036e28:   a8c77bfd    ldp x29, x30, [sp], #112                                      <== NOT EXECUTED
    40036e2c:   d65f03c0    ret                                                           <== NOT EXECUTED
    40036e30:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40036e34:   17ffffb8    b   40036d14 <rtems_rfs_file_set_size+0x1a4>                  <== NOT EXECUTED
    ...                                                                                   
                                                                                          

0000000040027790 <rtems_rfs_format>: return 0; } int rtems_rfs_format (const char* name, const rtems_rfs_format_config* config) {
    40027790:   a9a37bfd    stp x29, x30, [sp, #-464]!                                    
    40027794:   910003fd    mov x29, sp                                                   
    40027798:   f90033e0    str x0, [sp, #96]                                             
  rtems_rfs_file_system fs;                                                               
  int                   group;                                                            
  int                   rc;                                                               
                                                                                          
  if (config->verbose)                                                                    
    4002779c:   3940a420    ldrb    w0, [x1, #41]                                         
{                                                                                         
    400277a0:   a90153f3    stp x19, x20, [sp, #16]                                       
    400277a4:   a90363f7    stp x23, x24, [sp, #48]                                       
    400277a8:   aa0103f7    mov x23, x1                                                   
  if (config->verbose)                                                                    
    400277ac:   35004b80    cbnz    w0, 4002811c <rtems_rfs_format+0x98c>                 <== NEVER TAKEN
    printf ("rtems-rfs: format: %s\n", name);                                             
                                                                                          
  memset (&fs, 0, sizeof (rtems_rfs_file_system));                                        
    400277b0:   d2802002    mov x2, #0x100                  // #256                       
    400277b4:   52800001    mov w1, #0x0                    // #0                         
    400277b8:   910343e0    add x0, sp, #0xd0                                             
    400277bc:   940059fc    bl  4003dfac <memset>                                         
  fs.flags = RTEMS_RFS_FS_NO_LOCAL_CACHE;                                                 
                                                                                          
  /*                                                                                      
   * Open the buffer interface.                                                           
   */                                                                                     
  rc = rtems_rfs_buffer_open (name, &fs);                                                 
    400277c0:   f94033e0    ldr x0, [sp, #96]                                             
  head->next = tail;                                                                      
    400277c4:   910563e9    add x9, sp, #0x158                                            
  tail->previous = head;                                                                  
    400277c8:   910543e8    add x8, sp, #0x150                                            
  head->next = tail;                                                                      
    400277cc:   9105e3e7    add x7, sp, #0x178                                            
  tail->previous = head;                                                                  
    400277d0:   9105c3e6    add x6, sp, #0x170                                            
  head->next = tail;                                                                      
    400277d4:   910663e5    add x5, sp, #0x198                                            
  tail->previous = head;                                                                  
    400277d8:   910643e4    add x4, sp, #0x190                                            
  head->next = tail;                                                                      
    400277dc:   9106e3e3    add x3, sp, #0x1b8                                            
  tail->previous = head;                                                                  
    400277e0:   9106c3e2    add x2, sp, #0x1b0                                            
  fs.max_held_buffers = RTEMS_RFS_FS_MAX_HELD_BUFFERS;                                    
    400277e4:   528000aa    mov w10, #0x5                       // #5                     
  fs.flags = RTEMS_RFS_FS_NO_LOCAL_CACHE;                                                 
    400277e8:   5280004b    mov w11, #0x2                       // #2                     
  rc = rtems_rfs_buffer_open (name, &fs);                                                 
    400277ec:   910343e1    add x1, sp, #0xd0                                             
  fs.flags = RTEMS_RFS_FS_NO_LOCAL_CACHE;                                                 
    400277f0:   b900d3eb    str w11, [sp, #208]                                           
  fs.max_held_buffers = RTEMS_RFS_FS_MAX_HELD_BUFFERS;                                    
    400277f4:   b9014bea    str w10, [sp, #328]                                           
  head->next = tail;                                                                      
    400277f8:   f900abe9    str x9, [sp, #336]                                            
  tail->previous = head;                                                                  
    400277fc:   f900b3e8    str x8, [sp, #352]                                            
  head->next = tail;                                                                      
    40027800:   f900bbe7    str x7, [sp, #368]                                            
  tail->previous = head;                                                                  
    40027804:   f900c3e6    str x6, [sp, #384]                                            
  head->next = tail;                                                                      
    40027808:   f900cbe5    str x5, [sp, #400]                                            
  tail->previous = head;                                                                  
    4002780c:   f900d3e4    str x4, [sp, #416]                                            
  head->next = tail;                                                                      
    40027810:   f900dbe3    str x3, [sp, #432]                                            
  tail->previous = head;                                                                  
    40027814:   f900e3e2    str x2, [sp, #448]                                            
  rc = rtems_rfs_buffer_open (name, &fs);                                                 
    40027818:   97fffea6    bl  400272b0 <rtems_rfs_buffer_open>                          
    4002781c:   2a0003f3    mov w19, w0                                                   
  if (rc != 0)                                                                            
    40027820:   350067c0    cbnz    w0, 40028518 <rtems_rfs_format+0xd88>                 <== NEVER TAKEN
  }                                                                                       
                                                                                          
  /*                                                                                      
   * Check the media.                                                                     
   */                                                                                     
  if (rtems_rfs_fs_media_block_size (&fs) == 0)                                           
    40027824:   f9407be0    ldr x0, [sp, #240]                                            
    40027828:   b9402c02    ldr w2, [x0, #44]                                             
    4002782c:   34006502    cbz w2, 400284cc <rtems_rfs_format+0xd3c>                     <== NEVER TAKEN
  fs->block_size = config->block_size;                                                    
    40027830:   f94002e1    ldr x1, [x23]                                                 
    40027834:   f90073e1    str x1, [sp, #224]                                            
  if (!fs->block_size)                                                                    
    40027838:   b40047c1    cbz x1, 40028130 <rtems_rfs_format+0x9a0>                     
  if ((fs->block_size % rtems_rfs_fs_media_block_size (fs)) != 0)                         
    4002783c:   2a0203e3    mov w3, w2                                                    
    40027840:   9ac30820    udiv    x0, x1, x3                                            
    40027844:   9b038400    msub    x0, x0, x3, x1                                        
    40027848:   b5004b00    cbnz    x0, 400281a8 <rtems_rfs_format+0xa18>                 <== NEVER TAKEN
  fs->group_blocks = config->group_blocks;                                                
    4002784c:   f94006e0    ldr x0, [x23, #8]                                             
    40027850:   f9008fe0    str x0, [sp, #280]                                            
    fs->group_blocks = rtems_rfs_bitmap_numof_bits (fs->block_size);                      
    40027854:   d37df021    lsl x1, x1, #3                                                
  if (!fs->group_blocks)                                                                  
    40027858:   b5002960    cbnz    x0, 40027d84 <rtems_rfs_format+0x5f4>                 <== NEVER TAKEN
    fs->group_blocks = rtems_rfs_bitmap_numof_bits (fs->block_size);                      
    4002785c:   f9008fe1    str x1, [sp, #280]                                            
  fs->blocks = rtems_rfs_fs_media_size (fs) / fs->block_size;                             
    40027860:   910343e0    add x0, sp, #0xd0                                             
    40027864:   94003d8b    bl  40036e90 <rtems_rfs_fs_media_size>                        
    40027868:   f94073e3    ldr x3, [sp, #224]                                            
    return 1;                                                                             
    4002786c:   52800025    mov w5, #0x1                    // #1                         
  return rtems_rfs_bitmap_numof_bits (rtems_rfs_fs_block_size (fs));                      
    40027870:   2a0303e1    mov w1, w3                                                    
  fs->blocks = rtems_rfs_fs_media_size (fs) / fs->block_size;                             
    40027874:   9ac30800    udiv    x0, x0, x3                                            
    40027878:   f9006fe0    str x0, [sp, #216]                                            
  if (dividend == 0)                                                                      
    4002787c:   340000a0    cbz w0, 40027890 <rtems_rfs_format+0x100>                     <== NEVER TAKEN
  return ((dividend - 1) / divisor) + 1;                                                  
    40027880:   51000405    sub w5, w0, #0x1                                              
  return rtems_rfs_bitmap_numof_bits (rtems_rfs_fs_block_size (fs));                      
    40027884:   531d7062    lsl w2, w3, #3                                                
  return ((dividend - 1) / divisor) + 1;                                                  
    40027888:   1ac208a5    udiv    w5, w5, w2                                            
    4002788c:   110004a5    add w5, w5, #0x1                                              
  return blocks * (rtems_rfs_fs_block_size (fs) / RTEMS_RFS_INODE_SIZE);                  
    40027890:   d343fc64    lsr x4, x3, #3                                                
    40027894:   d2849266    mov x6, #0x2493                 // #9363                      
    40027898:   f2b24926    movk    x6, #0x9249, lsl #16                                  
  fs->group_count = rtems_rfs_rup_quotient (rtems_rfs_fs_blocks (fs),                     
    4002789c:   b90113e5    str w5, [sp, #272]                                            
  return blocks * (rtems_rfs_fs_block_size (fs) / RTEMS_RFS_INODE_SIZE);                  
    400278a0:   f2c92486    movk    x6, #0x4924, lsl #32                                  
    400278a4:   f2e49246    movk    x6, #0x2492, lsl #48                                  
  fs->group_inodes = config->group_inodes;                                                
    400278a8:   f9400ae2    ldr x2, [x23, #16]                                            
  return blocks * (rtems_rfs_fs_block_size (fs) / RTEMS_RFS_INODE_SIZE);                  
    400278ac:   9bc67c84    umulh   x4, x4, x6                                            
    400278b0:   2a0403e7    mov w7, w4                                                    
  if (!fs->group_inodes)                                                                  
    400278b4:   b50002e2    cbnz    x2, 40027910 <rtems_rfs_format+0x180>                 <== NEVER TAKEN
    if (config->inode_overhead)                                                           
    400278b8:   b9401ae6    ldr w6, [x23, #24]                                            
    400278bc:   52800028    mov w8, #0x1                    // #1                         
  blocks = ((rtems_rfs_fs_blocks (fs) -                                                   
    400278c0:   d1000400    sub x0, x0, #0x1                                              
             RTEMS_RFS_SUPERBLOCK_SIZE) * percentage) / 100;                              
    400278c4:   d29eb869    mov x9, #0xf5c3                 // #62915                     
    400278c8:   f2ab8509    movk    x9, #0x5c28, lsl #16                                  
    if (config->inode_overhead)                                                           
    400278cc:   710000df    cmp w6, #0x0                                                  
    400278d0:   1a8810c6    csel    w6, w6, w8, ne  // ne = any                           
             RTEMS_RFS_SUPERBLOCK_SIZE) * percentage) / 100;                              
    400278d4:   f2d851e9    movk    x9, #0xc28f, lsl #32                                  
    400278d8:   f2e51ea9    movk    x9, #0x28f5, lsl #48                                  
    400278dc:   2a0803e2    mov w2, w8                                                    
    400278e0:   93407cc6    sxtw    x6, w6                                                
    400278e4:   9b067c00    mul x0, x0, x6                                                
    400278e8:   d342fc00    lsr x0, x0, #2                                                
    400278ec:   9bc97c00    umulh   x0, x0, x9                                            
  if (dividend == 0)                                                                      
    400278f0:   f27e7c1f    tst x0, #0x3fffffffc                                          
             RTEMS_RFS_SUPERBLOCK_SIZE) * percentage) / 100;                              
    400278f4:   d342fc00    lsr x0, x0, #2                                                
  if (dividend == 0)                                                                      
    400278f8:   54000080    b.eq    40027908 <rtems_rfs_format+0x178>  // b.none          
  return ((dividend - 1) / divisor) + 1;                                                  
    400278fc:   51000400    sub w0, w0, #0x1                                              
    40027900:   1ac50800    udiv    w0, w0, w5                                            
    40027904:   0b080002    add w2, w0, w8                                                
  return blocks * (rtems_rfs_fs_block_size (fs) / RTEMS_RFS_INODE_SIZE);                  
    40027908:   1b077c42    mul w2, w2, w7                                                
    fs->group_inodes = rtems_rfs_inodes_from_percent (fs, inode_overhead);                
    4002790c:   93407c42    sxtw    x2, w2                                                
  fs->inodes_per_block = rtems_rfs_fs_block_size (fs) / RTEMS_RFS_INODE_SIZE;             
    40027910:   f90097e4    str x4, [sp, #296]                                            
  if (dividend == 0)                                                                      
    40027914:   340000c2    cbz w2, 4002792c <rtems_rfs_format+0x19c>                     <== NEVER TAKEN
  return ((dividend - 1) / divisor) + 1;                                                  
    40027918:   51000440    sub w0, w2, #0x1                                              
    4002791c:   1ac70800    udiv    w0, w0, w7                                            
    40027920:   11000400    add w0, w0, #0x1                                              
    rtems_rfs_rup_quotient (fs->group_inodes,                                             
    40027924:   93407c00    sxtw    x0, w0                                                
                            fs->inodes_per_block) * fs->inodes_per_block;                 
    40027928:   9b007c84    mul x4, x4, x0                                                
  fs->max_name_length = config->max_name_length;                                          
    4002792c:   f94012e0    ldr x0, [x23, #32]                                            
  if (fs->group_inodes > rtems_rfs_bitmap_numof_bits (fs->block_size))                    
    40027930:   d37df063    lsl x3, x3, #3                                                
  fs->group_inodes =                                                                      
    40027934:   eb04007f    cmp x3, x4                                                    
  {                                                                                       
    errno = EINVAL;                                                                       
    return -1;                                                                            
  }                                                                                       
                                                                                          
  if (config->verbose)                                                                    
    40027938:   3940a6e2    ldrb    w2, [x23, #41]                                        
  fs->group_inodes =                                                                      
    4002793c:   9a843063    csel    x3, x3, x4, cc  // cc = lo, ul, last                  
    fs->max_name_length = 512;                                                            
    40027940:   7100001f    cmp w0, #0x0                                                  
    40027944:   52804004    mov w4, #0x200                  // #512                       
    40027948:   1a841000    csel    w0, w0, w4, ne  // ne = any                           
    4002794c:   b90103e0    str w0, [sp, #256]                                            
  fs->group_inodes =                                                                      
    40027950:   f90093e3    str x3, [sp, #288]                                            
  if (config->verbose)                                                                    
    40027954:   35004322    cbnz    w2, 400281b8 <rtems_rfs_format+0xa28>                 <== NEVER TAKEN
    printf ("rtems-rfs: format: groups = %u\n", fs.group_count);                          
    printf ("rtems-rfs: format: group blocks = %zu\n", fs.group_blocks);                  
    printf ("rtems-rfs: format: group inodes = %zu\n", fs.group_inodes);                  
  }                                                                                       
                                                                                          
  rc = rtems_rfs_buffer_setblksize (&fs, rtems_rfs_fs_block_size (&fs));                  
    40027958:   910343e0    add x0, sp, #0xd0                                             
    4002795c:   97ffff09    bl  40027580 <rtems_rfs_buffer_setblksize>                    
    40027960:   2a0003f3    mov w19, w0                                                   
  if (rc != 0)                                                                            
    40027964:   35005c60    cbnz    w0, 400284f0 <rtems_rfs_format+0xd60>                 <== NEVER TAKEN
  rc = rtems_rfs_buffer_handle_request (fs, &handle, 0, false);                           
    40027968:   910243e1    add x1, sp, #0x90                                             
    4002796c:   910343e0    add x0, sp, #0xd0                                             
    40027970:   52800003    mov w3, #0x0                    // #0                         
    40027974:   52800002    mov w2, #0x0                    // #0                         
    40027978:   390243ff    strb    wzr, [sp, #144]                                       
  handle->bnum  = 0;                                                                      
    4002797c:   b90097ff    str wzr, [sp, #148]                                           
  handle->buffer = NULL;                                                                  
    40027980:   f9004fff    str xzr, [sp, #152]                                           
    40027984:   97fffd93    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
    40027988:   2a0003f4    mov w20, w0                                                   
  if (rc > 0)                                                                             
    4002798c:   7100001f    cmp w0, #0x0                                                  
    40027990:   540037cc    b.gt    40028088 <rtems_rfs_format+0x8f8>                     <== NEVER TAKEN
  sb = rtems_rfs_buffer_data (&handle);                                                   
    40027994:   f9404fe0    ldr x0, [sp, #152]                                            
  memset (sb, 0xff, rtems_rfs_fs_block_size (fs));                                        
    40027998:   52801fe1    mov w1, #0xff                   // #255                       
    4002799c:   f94073e2    ldr x2, [sp, #224]                                            
  sb = rtems_rfs_buffer_data (&handle);                                                   
    400279a0:   f9401c03    ldr x3, [x0, #56]                                             
  memset (sb, 0xff, rtems_rfs_fs_block_size (fs));                                        
    400279a4:   aa0303e0    mov x0, x3                                                    
    400279a8:   94005981    bl  4003dfac <memset>                                         
    400279ac:   aa0003e3    mov x3, x0                                                    
  write_sb (RTEMS_RFS_SB_OFFSET_MAGIC, RTEMS_RFS_SB_MAGIC);                               
    400279b0:   52800024    mov w4, #0x1                    // #1                         
    400279b4:   52800502    mov w2, #0x28                   // #40                        
    400279b8:   52800121    mov w1, #0x9                    // #9                         
    400279bc:   52800400    mov w0, #0x20                   // #32                        
    400279c0:   39000062    strb    w2, [x3]                                              
  write_sb (RTEMS_RFS_SB_OFFSET_INODE_SIZE, RTEMS_RFS_INODE_SIZE);                        
    400279c4:   52800705    mov w5, #0x38                   // #56                        
  write_sb (RTEMS_RFS_SB_OFFSET_MAGIC, RTEMS_RFS_SB_MAGIC);                               
    400279c8:   39000461    strb    w1, [x3, #1]                                          
  rc = rtems_rfs_buffer_handle_release (fs, &handle);                                     
    400279cc:   910243e1    add x1, sp, #0x90                                             
  write_sb (RTEMS_RFS_SB_OFFSET_MAGIC, RTEMS_RFS_SB_MAGIC);                               
    400279d0:   39000860    strb    w0, [x3, #2]                                          
  rc = rtems_rfs_buffer_handle_release (fs, &handle);                                     
    400279d4:   910343e0    add x0, sp, #0xd0                                             
  write_sb (RTEMS_RFS_SB_OFFSET_MAGIC, RTEMS_RFS_SB_MAGIC);                               
    400279d8:   39000c64    strb    w4, [x3, #3]                                          
  write_sb (RTEMS_RFS_SB_OFFSET_VERSION, RTEMS_RFS_VERSION);                              
    400279dc:   3900107f    strb    wzr, [x3, #4]                                         
    400279e0:   3900147f    strb    wzr, [x3, #5]                                         
    400279e4:   3900187f    strb    wzr, [x3, #6]                                         
    400279e8:   39001c7f    strb    wzr, [x3, #7]                                         
  write_sb (RTEMS_RFS_SB_OFFSET_BLOCKS, rtems_rfs_fs_blocks (fs));                        
    400279ec:   39436fe2    ldrb    w2, [sp, #219]                                        
    400279f0:   39003062    strb    w2, [x3, #12]                                         
    400279f4:   7941b7e2    ldrh    w2, [sp, #218]                                        
    400279f8:   39003462    strb    w2, [x3, #13]                                         
    400279fc:   f9406fe2    ldr x2, [sp, #216]                                            
    40027a00:   53087c42    lsr w2, w2, #8                                                
    40027a04:   39003862    strb    w2, [x3, #14]                                         
    40027a08:   f9406fe2    ldr x2, [sp, #216]                                            
    40027a0c:   39003c62    strb    w2, [x3, #15]                                         
  write_sb (RTEMS_RFS_SB_OFFSET_BLOCK_SIZE, rtems_rfs_fs_block_size (fs));                
    40027a10:   39438fe2    ldrb    w2, [sp, #227]                                        
    40027a14:   39002062    strb    w2, [x3, #8]                                          
    40027a18:   7941c7e2    ldrh    w2, [sp, #226]                                        
    40027a1c:   39002462    strb    w2, [x3, #9]                                          
    40027a20:   f94073e2    ldr x2, [sp, #224]                                            
    40027a24:   53087c42    lsr w2, w2, #8                                                
    40027a28:   39002862    strb    w2, [x3, #10]                                         
    40027a2c:   f94073e2    ldr x2, [sp, #224]                                            
    40027a30:   39002c62    strb    w2, [x3, #11]                                         
  write_sb (RTEMS_RFS_SB_OFFSET_BAD_BLOCKS, fs->bad_blocks);                              
    40027a34:   3943ffe2    ldrb    w2, [sp, #255]                                        
    40027a38:   39004062    strb    w2, [x3, #16]                                         
    40027a3c:   7941ffe2    ldrh    w2, [sp, #254]                                        
    40027a40:   39004462    strb    w2, [x3, #17]                                         
    40027a44:   b940ffe2    ldr w2, [sp, #252]                                            
    40027a48:   53087c42    lsr w2, w2, #8                                                
    40027a4c:   39004862    strb    w2, [x3, #18]                                         
    40027a50:   b940ffe2    ldr w2, [sp, #252]                                            
    40027a54:   39004c62    strb    w2, [x3, #19]                                         
  write_sb (RTEMS_RFS_SB_OFFSET_MAX_NAME_LENGTH, fs->max_name_length);                    
    40027a58:   39440fe2    ldrb    w2, [sp, #259]                                        
    40027a5c:   39005062    strb    w2, [x3, #20]                                         
    40027a60:   794207e2    ldrh    w2, [sp, #258]                                        
    40027a64:   39005462    strb    w2, [x3, #21]                                         
    40027a68:   b94103e2    ldr w2, [sp, #256]                                            
    40027a6c:   53087c42    lsr w2, w2, #8                                                
    40027a70:   39005862    strb    w2, [x3, #22]                                         
    40027a74:   b94103e2    ldr w2, [sp, #256]                                            
    40027a78:   39005c62    strb    w2, [x3, #23]                                         
  write_sb (RTEMS_RFS_SB_OFFSET_GROUPS, fs->group_count);                                 
    40027a7c:   39444fe2    ldrb    w2, [sp, #275]                                        
    40027a80:   39006062    strb    w2, [x3, #24]                                         
    40027a84:   794227e2    ldrh    w2, [sp, #274]                                        
    40027a88:   39006462    strb    w2, [x3, #25]                                         
    40027a8c:   b94113e2    ldr w2, [sp, #272]                                            
    40027a90:   53087c42    lsr w2, w2, #8                                                
    40027a94:   39006862    strb    w2, [x3, #26]                                         
    40027a98:   b94113e2    ldr w2, [sp, #272]                                            
    40027a9c:   39006c62    strb    w2, [x3, #27]                                         
  write_sb (RTEMS_RFS_SB_OFFSET_GROUP_BLOCKS, fs->group_blocks);                          
    40027aa0:   39446fe2    ldrb    w2, [sp, #283]                                        
    40027aa4:   39007062    strb    w2, [x3, #28]                                         
    40027aa8:   794237e2    ldrh    w2, [sp, #282]                                        
    40027aac:   39007462    strb    w2, [x3, #29]                                         
    40027ab0:   f9408fe2    ldr x2, [sp, #280]                                            
    40027ab4:   53087c42    lsr w2, w2, #8                                                
    40027ab8:   39007862    strb    w2, [x3, #30]                                         
    40027abc:   f9408fe2    ldr x2, [sp, #280]                                            
    40027ac0:   39007c62    strb    w2, [x3, #31]                                         
  write_sb (RTEMS_RFS_SB_OFFSET_GROUP_INODES, fs->group_inodes);                          
    40027ac4:   39448fe2    ldrb    w2, [sp, #291]                                        
    40027ac8:   39008062    strb    w2, [x3, #32]                                         
    40027acc:   794247e2    ldrh    w2, [sp, #290]                                        
    40027ad0:   39008462    strb    w2, [x3, #33]                                         
    40027ad4:   f94093e2    ldr x2, [sp, #288]                                            
    40027ad8:   53087c42    lsr w2, w2, #8                                                
    40027adc:   39008862    strb    w2, [x3, #34]                                         
    40027ae0:   f94093e2    ldr x2, [sp, #288]                                            
    40027ae4:   39008c62    strb    w2, [x3, #35]                                         
  write_sb (RTEMS_RFS_SB_OFFSET_INODE_SIZE, RTEMS_RFS_INODE_SIZE);                        
    40027ae8:   3900907f    strb    wzr, [x3, #36]                                        
    40027aec:   3900947f    strb    wzr, [x3, #37]                                        
    40027af0:   3900987f    strb    wzr, [x3, #38]                                        
    40027af4:   39009c65    strb    w5, [x3, #39]                                         
  rtems_rfs_buffer_mark_dirty (&handle);                                                  
    40027af8:   390243e4    strb    w4, [sp, #144]                                        
  rc = rtems_rfs_buffer_handle_release (fs, &handle);                                     
    40027afc:   97fffde5    bl  40027290 <rtems_rfs_buffer_handle_release>                
    40027b00:   2a0003f4    mov w20, w0                                                   
 */                                                                                       
static inline int                                                                         
rtems_rfs_buffer_handle_close (rtems_rfs_file_system*   fs,                               
                               rtems_rfs_buffer_handle* handle)                           
{                                                                                         
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40027b04:   910243e1    add x1, sp, #0x90                                             
    40027b08:   910343e0    add x0, sp, #0xd0                                             
  if (rc > 0)                                                                             
    40027b0c:   7100029f    cmp w20, #0x0                                                 
    40027b10:   54003fac    b.gt    40028304 <rtems_rfs_format+0xb74>                     <== NEVER TAKEN
    40027b14:   97fffddf    bl  40027290 <rtems_rfs_buffer_handle_release>                
                                                                                          
    errno = EIO;                                                                          
    return -1;                                                                            
  }                                                                                       
                                                                                          
  for (group = 0; group < fs.group_count; group++)                                        
    40027b18:   b94113e0    ldr w0, [sp, #272]                                            
    40027b1c:   7100001f    cmp w0, #0x0                                                  
    40027b20:   540015ad    b.le    40027dd4 <rtems_rfs_format+0x644>                     <== NEVER TAKEN
    40027b24:   a90573fb    stp x27, x28, [sp, #80]                                       
    printf ("\rrtems-rfs: format: group %3d: base = %" PRId32 ", size = %zd",             
    40027b28:   d000011c    adrp    x28, 40049000 <IMFS_node_control_sym_link+0x640>      
    40027b2c:   910be39c    add x28, x28, #0x2f8                                          
    printf (", blocks");                                                                  
    40027b30:   d000011b    adrp    x27, 40049000 <IMFS_node_control_sym_link+0x640>      
    40027b34:   910cc37b    add x27, x27, #0x330                                          
    40027b38:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40027b3c:   a9046bf9    stp x25, x26, [sp, #64]                                       
  group_base = rtems_rfs_fs_block (fs, group, 0);                                         
    40027b40:   f9408ff4    ldr x20, [sp, #280]                                           
  if (group_base > rtems_rfs_fs_blocks (fs))                                              
    40027b44:   f9406fe0    ldr x0, [sp, #216]                                            
  group_base = rtems_rfs_fs_block (fs, group, 0);                                         
    40027b48:   1b147e75    mul w21, w19, w20                                             
  if (group_base > rtems_rfs_fs_blocks (fs))                                              
    40027b4c:   110006a1    add w1, w21, #0x1                                             
  group_base = rtems_rfs_fs_block (fs, group, 0);                                         
    40027b50:   110006b6    add w22, w21, #0x1                                            
  if (group_base > rtems_rfs_fs_blocks (fs))                                              
    40027b54:   eb00003f    cmp x1, x0                                                    
    40027b58:   54002148    b.hi    40027f80 <rtems_rfs_format+0x7f0>  // b.pmore         <== NEVER TAKEN
    if (!rtems_rfs_write_group (&fs, group,                                               
    40027b5c:   3940a6f8    ldrb    w24, [x23, #41]                                       
  if ((group_base + group_size) > rtems_rfs_fs_blocks (fs))                               
    40027b60:   8b010282    add x2, x20, x1                                               
    group_size = rtems_rfs_fs_blocks (fs) - group_base;                                   
    40027b64:   eb02001f    cmp x0, x2                                                    
    40027b68:   cb010000    sub x0, x0, x1                                                
    if (!rtems_rfs_write_group (&fs, group,                                               
    40027b6c:   3940a2f9    ldrb    w25, [x23, #40]                                       
    group_size = rtems_rfs_fs_blocks (fs) - group_base;                                   
    40027b70:   9a943014    csel    x20, x0, x20, cc  // cc = lo, ul, last                
  if (verbose)                                                                            
    40027b74:   35001f18    cbnz    w24, 40027f54 <rtems_rfs_format+0x7c4>                <== NEVER TAKEN
  handle->dirty = false;                                                                  
    40027b78:   390203ff    strb    wzr, [sp, #128]                                       
  handle->bnum  = 0;                                                                      
    40027b7c:   b90087ff    str wzr, [sp, #132]                                           
  handle->buffer = NULL;                                                                  
    40027b80:   f90047ff    str xzr, [sp, #136]                                           
  rc = rtems_rfs_bitmap_open (&bitmap, fs, &handle, group_size,                           
    40027b84:   2a1603e4    mov w4, w22                                                   
    40027b88:   aa1403e3    mov x3, x20                                                   
    40027b8c:   910203e2    add x2, sp, #0x80                                             
    40027b90:   910343e1    add x1, sp, #0xd0                                             
    40027b94:   910243e0    add x0, sp, #0x90                                             
    40027b98:   97fffbee    bl  40026b50 <rtems_rfs_bitmap_open>                          
    40027b9c:   2a0003f6    mov w22, w0                                                   
  if (rc > 0)                                                                             
    40027ba0:   7100001f    cmp w0, #0x0                                                  
    40027ba4:   54001a4c    b.gt    40027eec <rtems_rfs_format+0x75c>                     <== NEVER TAKEN
  memset (rtems_rfs_buffer_data (&handle), 0xff, rtems_rfs_fs_block_size (fs));           
    40027ba8:   f94047e0    ldr x0, [sp, #136]                                            
    40027bac:   52801fe1    mov w1, #0xff                   // #255                       
    40027bb0:   f94073e2    ldr x2, [sp, #224]                                            
    40027bb4:   f9401c00    ldr x0, [x0, #56]                                             
    40027bb8:   940058fd    bl  4003dfac <memset>                                         
  rc = rtems_rfs_bitmap_map_clear_all (&bitmap);                                          
    40027bbc:   910243e0    add x0, sp, #0x90                                             
    40027bc0:   97fffb20    bl  40026840 <rtems_rfs_bitmap_map_clear_all>                 
    40027bc4:   2a0003f6    mov w22, w0                                                   
  if (rc > 0)                                                                             
    40027bc8:   7100001f    cmp w0, #0x0                                                  
    40027bcc:   54001e4c    b.gt    40027f94 <rtems_rfs_format+0x804>                     <== NEVER TAKEN
  rtems_rfs_bitmap_map_set (&bitmap, RTEMS_RFS_GROUP_BLOCK_BITMAP_BLOCK);                 
    40027bd0:   52800001    mov w1, #0x0                    // #0                         
    40027bd4:   910243e0    add x0, sp, #0x90                                             
    40027bd8:   97fffa52    bl  40026520 <rtems_rfs_bitmap_map_set>                       
  rtems_rfs_bitmap_map_set (&bitmap, RTEMS_RFS_GROUP_INODE_BITMAP_BLOCK);                 
    40027bdc:   910243e0    add x0, sp, #0x90                                             
    40027be0:   52800021    mov w1, #0x1                    // #1                         
    40027be4:   97fffa4f    bl  40026520 <rtems_rfs_bitmap_map_set>                       
  blocks = rtems_rfs_rup_quotient (fs->group_inodes, fs->inodes_per_block);               
    40027be8:   f94093e0    ldr x0, [sp, #288]                                            
  if (dividend == 0)                                                                      
    40027bec:   34001f60    cbz w0, 40027fd8 <rtems_rfs_format+0x848>                     <== NEVER TAKEN
  blocks = rtems_rfs_rup_quotient (fs->group_inodes, fs->inodes_per_block);               
    40027bf0:   f94097e1    ldr x1, [sp, #296]                                            
  return ((dividend - 1) / divisor) + 1;                                                  
    40027bf4:   51000416    sub w22, w0, #0x1                                             
    40027bf8:   1ac10ad6    udiv    w22, w22, w1                                          
    40027bfc:   110006c0    add w0, w22, #0x1                                             
    40027c00:   b9006fe0    str w0, [sp, #108]                                            
  for (b = 0; b < blocks; b++)                                                            
    40027c04:   7100001f    cmp w0, #0x0                                                  
    40027c08:   5400014d    b.le    40027c30 <rtems_rfs_format+0x4a0>                     <== NEVER TAKEN
    40027c0c:   11000ed6    add w22, w22, #0x3                                            
    40027c10:   5280005a    mov w26, #0x2                       // #2                     
    40027c14:   d503201f    nop                                                           
    rtems_rfs_bitmap_map_set (&bitmap, b + RTEMS_RFS_GROUP_INODE_BLOCK);                  
    40027c18:   2a1a03e1    mov w1, w26                                                   
    40027c1c:   910243e0    add x0, sp, #0x90                                             
  for (b = 0; b < blocks; b++)                                                            
    40027c20:   1100075a    add w26, w26, #0x1                                            
    rtems_rfs_bitmap_map_set (&bitmap, b + RTEMS_RFS_GROUP_INODE_BLOCK);                  
    40027c24:   97fffa3f    bl  40026520 <rtems_rfs_bitmap_map_set>                       
  for (b = 0; b < blocks; b++)                                                            
    40027c28:   6b1a02df    cmp w22, w26                                                  
    40027c2c:   54ffff61    b.ne    40027c18 <rtems_rfs_format+0x488>  // b.any           
  rc = rtems_rfs_bitmap_close (&bitmap);                                                  
    40027c30:   910243e0    add x0, sp, #0x90                                             
    40027c34:   97fffbdf    bl  40026bb0 <rtems_rfs_bitmap_close>                         
    40027c38:   2a0003f6    mov w22, w0                                                   
  if (rc > 0)                                                                             
    40027c3c:   7100001f    cmp w0, #0x0                                                  
    40027c40:   54001e0c    b.gt    40028000 <rtems_rfs_format+0x870>                     <== NEVER TAKEN
  rtems_rfs_buffer_mark_dirty (&handle);                                                  
    40027c44:   52800020    mov w0, #0x1                    // #1                         
    40027c48:   390203e0    strb    w0, [sp, #128]                                        
  if (verbose)                                                                            
    40027c4c:   35002178    cbnz    w24, 40028078 <rtems_rfs_format+0x8e8>                <== NEVER TAKEN
  rc = rtems_rfs_bitmap_open (&bitmap, fs, &handle, group_size,                           
    40027c50:   aa1403e3    mov x3, x20                                                   
    40027c54:   11000aa4    add w4, w21, #0x2                                             
    40027c58:   910203e2    add x2, sp, #0x80                                             
    40027c5c:   910343e1    add x1, sp, #0xd0                                             
    40027c60:   910243e0    add x0, sp, #0x90                                             
    40027c64:   97fffbbb    bl  40026b50 <rtems_rfs_bitmap_open>                          
    40027c68:   2a0003f4    mov w20, w0                                                   
  if (rc > 0)                                                                             
    40027c6c:   7100001f    cmp w0, #0x0                                                  
    40027c70:   54001e6c    b.gt    4002803c <rtems_rfs_format+0x8ac>                     <== NEVER TAKEN
  memset (rtems_rfs_buffer_data (&handle), 0x00, rtems_rfs_fs_block_size (fs));           
    40027c74:   f94047e0    ldr x0, [sp, #136]                                            
    40027c78:   52800001    mov w1, #0x0                    // #0                         
    40027c7c:   f94073e2    ldr x2, [sp, #224]                                            
    40027c80:   f9401c00    ldr x0, [x0, #56]                                             
    40027c84:   940058ca    bl  4003dfac <memset>                                         
  rc = rtems_rfs_bitmap_map_clear_all (&bitmap);                                          
    40027c88:   910243e0    add x0, sp, #0x90                                             
    40027c8c:   97fffaed    bl  40026840 <rtems_rfs_bitmap_map_clear_all>                 
    40027c90:   2a0003f4    mov w20, w0                                                   
    rtems_rfs_bitmap_close (&bitmap);                                                     
    40027c94:   910243e0    add x0, sp, #0x90                                             
  if (rc > 0)                                                                             
    40027c98:   7100029f    cmp w20, #0x0                                                 
    40027c9c:   5400220c    b.gt    400280dc <rtems_rfs_format+0x94c>                     <== NEVER TAKEN
  rc = rtems_rfs_bitmap_close (&bitmap);                                                  
    40027ca0:   97fffbc4    bl  40026bb0 <rtems_rfs_bitmap_close>                         
    40027ca4:   2a0003f4    mov w20, w0                                                   
  if (rc > 0)                                                                             
    40027ca8:   7100001f    cmp w0, #0x0                                                  
    40027cac:   5400396c    b.gt    400283d8 <rtems_rfs_format+0xc48>                     <== NEVER TAKEN
  rtems_rfs_buffer_mark_dirty (&handle);                                                  
    40027cb0:   52800034    mov w20, #0x1                       // #1                     
    40027cb4:   390203f4    strb    w20, [sp, #128]                                       
  if (initialise_inodes)                                                                  
    40027cb8:   340007b9    cbz w25, 40027dac <rtems_rfs_format+0x61c>                    <== ALWAYS TAKEN
    for (b = 0; b < blocks; b++)                                                          
    40027cbc:   b9406fe0    ldr w0, [sp, #108]                                            <== NOT EXECUTED
    40027cc0:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40027cc4:   5400074d    b.le    40027dac <rtems_rfs_format+0x61c>                     <== NOT EXECUTED
    40027cc8:   11000eb5    add w21, w21, #0x3                                            <== NOT EXECUTED
    40027ccc:   0b150018    add w24, w0, w21                                              <== NOT EXECUTED
    40027cd0:   14000009    b   40027cf4 <rtems_rfs_format+0x564>                         <== NOT EXECUTED
      memset (rtems_rfs_buffer_data (&handle), 0xff, rtems_rfs_fs_block_size (fs));       
    40027cd4:   f94047e0    ldr x0, [sp, #136]                                            <== NOT EXECUTED
    for (b = 0; b < blocks; b++)                                                          
    40027cd8:   110006b5    add w21, w21, #0x1                                            <== NOT EXECUTED
      memset (rtems_rfs_buffer_data (&handle), 0xff, rtems_rfs_fs_block_size (fs));       
    40027cdc:   f94073e2    ldr x2, [sp, #224]                                            <== NOT EXECUTED
    40027ce0:   f9401c00    ldr x0, [x0, #56]                                             <== NOT EXECUTED
    40027ce4:   940058b2    bl  4003dfac <memset>                                         <== NOT EXECUTED
      rtems_rfs_buffer_mark_dirty (&handle);                                              
    40027ce8:   390203f4    strb    w20, [sp, #128]                                       <== NOT EXECUTED
    for (b = 0; b < blocks; b++)                                                          
    40027cec:   6b15031f    cmp w24, w21                                                  <== NOT EXECUTED
    40027cf0:   540005e0    b.eq    40027dac <rtems_rfs_format+0x61c>  // b.none          <== NOT EXECUTED
      rc = rtems_rfs_buffer_handle_request (fs, &handle,                                  
    40027cf4:   910203e1    add x1, sp, #0x80                                             <== NOT EXECUTED
    40027cf8:   2a1503e2    mov w2, w21                                                   <== NOT EXECUTED
    40027cfc:   910343e0    add x0, sp, #0xd0                                             <== NOT EXECUTED
    40027d00:   52800003    mov w3, #0x0                    // #0                         <== NOT EXECUTED
    40027d04:   97fffcb3    bl  40026fd0 <rtems_rfs_buffer_handle_request>                <== NOT EXECUTED
    40027d08:   2a0003f6    mov w22, w0                                                   <== NOT EXECUTED
      if (rc > 0)                                                                         
    40027d0c:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
      memset (rtems_rfs_buffer_data (&handle), 0xff, rtems_rfs_fs_block_size (fs));       
    40027d10:   52801fe1    mov w1, #0xff                   // #255                       <== NOT EXECUTED
      if (rc > 0)                                                                         
    40027d14:   54fffe0d    b.le    40027cd4 <rtems_rfs_format+0x544>                     <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40027d18:   910203e1    add x1, sp, #0x80                                             <== NOT EXECUTED
    40027d1c:   910343e0    add x0, sp, #0xd0                                             <== NOT EXECUTED
    40027d20:   97fffd5c    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40027d24:   390203ff    strb    wzr, [sp, #128]                                       <== NOT EXECUTED
        printf ("\nrtems-rfs: write-group: group %3d: block %" PRId32 " request failed: %d: %s\n",
    40027d28:   2a1603e0    mov w0, w22                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    40027d2c:   b90087ff    str wzr, [sp, #132]                                           <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40027d30:   f90047ff    str xzr, [sp, #136]                                           <== NOT EXECUTED
    40027d34:   94005bba    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40027d38:   2a1603e3    mov w3, w22                                                   <== NOT EXECUTED
    40027d3c:   aa0003e4    mov x4, x0                                                    <== NOT EXECUTED
    40027d40:   2a1503e2    mov w2, w21                                                   <== NOT EXECUTED
    40027d44:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40027d48:   d0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40027d4c:   91144000    add x0, x0, #0x510                                            <== NOT EXECUTED
    40027d50:   97ffe9b0    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
                                config->initialise_inodes, config->verbose))              
      {                                                                                   
        errno = EIO;                                                                      
        return -1;                                                                        
    40027d54:   12800014    mov w20, #0xffffffff                // #-1                    <== NOT EXECUTED
        errno = EIO;                                                                      
    40027d58:   940056cd    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    40027d5c:   528000a1    mov w1, #0x5                    // #5                         <== NOT EXECUTED
        return -1;                                                                        
    40027d60:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40027d64:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    40027d68:   a94573fb    ldp x27, x28, [sp, #80]                                       <== NOT EXECUTED
        errno = EIO;                                                                      
    40027d6c:   b9000001    str w1, [x0]                                                  <== NOT EXECUTED
    errno = rc;                                                                           
    return -1;                                                                            
  }                                                                                       
                                                                                          
  return 0;                                                                               
}                                                                                         
    40027d70:   2a1403e0    mov w0, w20                                                   
    40027d74:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40027d78:   a94363f7    ldp x23, x24, [sp, #48]                                       
    40027d7c:   a8dd7bfd    ldp x29, x30, [sp], #464                                      
    40027d80:   d65f03c0    ret                                                           
  if (fs->group_blocks > rtems_rfs_bitmap_numof_bits (fs->block_size))                    
    40027d84:   eb01001f    cmp x0, x1                                                    <== NOT EXECUTED
    40027d88:   54ffd6c9    b.ls    40027860 <rtems_rfs_format+0xd0>  // b.plast          <== NOT EXECUTED
    printf ("group block count is higher than bits in block\n");                          
    40027d8c:   b0000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40027d90:   913f2000    add x0, x0, #0xfc8                                            <== NOT EXECUTED
    40027d94:   97ffe9c3    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
    errno = EINVAL;                                                                       
    40027d98:   940056bd    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    return -1;                                                                            
    40027d9c:   12800014    mov w20, #0xffffffff                // #-1                    <== NOT EXECUTED
    errno = EINVAL;                                                                       
    40027da0:   528002c1    mov w1, #0x16                   // #22                        <== NOT EXECUTED
    40027da4:   b9000001    str w1, [x0]                                                  <== NOT EXECUTED
    return -1;                                                                            
    40027da8:   17fffff2    b   40027d70 <rtems_rfs_format+0x5e0>                         <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40027dac:   910203e1    add x1, sp, #0x80                                             
    40027db0:   910343e0    add x0, sp, #0xd0                                             
    40027db4:   97fffd37    bl  40027290 <rtems_rfs_buffer_handle_release>                
  for (group = 0; group < fs.group_count; group++)                                        
    40027db8:   11000673    add w19, w19, #0x1                                            
    40027dbc:   b94113e0    ldr w0, [sp, #272]                                            
    40027dc0:   6b13001f    cmp w0, w19                                                   
    40027dc4:   54ffebec    b.gt    40027b40 <rtems_rfs_format+0x3b0>                     <== NEVER TAKEN
    40027dc8:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40027dcc:   a9446bf9    ldp x25, x26, [sp, #64]                                       
    40027dd0:   a94573fb    ldp x27, x28, [sp, #80]                                       
  if (config->verbose)                                                                    
    40027dd4:   3940a6e0    ldrb    w0, [x23, #41]                                        
    40027dd8:   35002fa0    cbnz    w0, 400283cc <rtems_rfs_format+0xc3c>                 <== NEVER TAKEN
  rc = rtems_rfs_buffer_close (&fs);                                                      
    40027ddc:   910343e0    add x0, sp, #0xd0                                             
    40027de0:   97fffe34    bl  400276b0 <rtems_rfs_buffer_close>                         
    40027de4:   2a0003f3    mov w19, w0                                                   
  if (rc != 0)                                                                            
    40027de8:   35003ac0    cbnz    w0, 40028540 <rtems_rfs_format+0xdb0>                 <== NEVER TAKEN
  rc = rtems_rfs_fs_open (name, NULL,                                                     
    40027dec:   f94033e0    ldr x0, [sp, #96]                                             
    40027df0:   910203e4    add x4, sp, #0x80                                             
    40027df4:   52800003    mov w3, #0x0                    // #0                         
    40027df8:   528000c2    mov w2, #0x6                    // #6                         
    40027dfc:   d2800001    mov x1, #0x0                    // #0                         
    40027e00:   94003c28    bl  40036ea0 <rtems_rfs_fs_open>                              
  if (rc != 0)                                                                            
    40027e04:   35002ce0    cbnz    w0, 400283a0 <rtems_rfs_format+0xc10>                 <== NEVER TAKEN
  rc = rtems_rfs_inode_alloc (fs, RTEMS_RFS_ROOT_INO, &ino);                              
    40027e08:   f94043e0    ldr x0, [sp, #128]                                            
    40027e0c:   9101f3e2    add x2, sp, #0x7c                                             
    40027e10:   52800021    mov w1, #0x1                    // #1                         
    40027e14:   9400038f    bl  40028c50 <rtems_rfs_inode_alloc>                          
    40027e18:   2a0003f4    mov w20, w0                                                   
  if (rc != 0)                                                                            
    40027e1c:   35002fc0    cbnz    w0, 40028414 <rtems_rfs_format+0xc84>                 <== NEVER TAKEN
  if (ino != RTEMS_RFS_ROOT_INO)                                                          
    40027e20:   b9407ff3    ldr w19, [sp, #124]                                           
    40027e24:   7100067f    cmp w19, #0x1                                                 
    40027e28:   54002981    b.ne    40028358 <rtems_rfs_format+0xbc8>  // b.any           <== NEVER TAKEN
  rc = rtems_rfs_inode_open (fs, ino, &inode, true);                                      
    40027e2c:   f94043e0    ldr x0, [sp, #128]                                            
    40027e30:   2a1303e3    mov w3, w19                                                   
    40027e34:   910243e2    add x2, sp, #0x90                                             
    40027e38:   2a1303e1    mov w1, w19                                                   
    40027e3c:   940003bd    bl  40028d30 <rtems_rfs_inode_open>                           
    40027e40:   2a0003f4    mov w20, w0                                                   
  if (rc != 0)                                                                            
    40027e44:   35003000    cbnz    w0, 40028444 <rtems_rfs_format+0xcb4>                 <== NEVER TAKEN
  rc = rtems_rfs_inode_initialise (&inode, 0,                                             
    40027e48:   910243e0    add x0, sp, #0x90                                             
    40027e4c:   52800004    mov w4, #0x0                    // #0                         
    40027e50:   52800003    mov w3, #0x0                    // #0                         
    40027e54:   52883922    mov w2, #0x41c9                 // #16841                     
    40027e58:   52800001    mov w1, #0x0                    // #0                         
    40027e5c:   940004e1    bl  400291e0 <rtems_rfs_inode_initialise>                     
    40027e60:   2a0003f3    mov w19, w0                                                   
  if (rc != 0)                                                                            
    40027e64:   35003260    cbnz    w0, 400284b0 <rtems_rfs_format+0xd20>                 <== NEVER TAKEN
  rc = rtems_rfs_dir_add_entry (fs, &inode, ".", 1, ino);                                 
    40027e68:   b9407fe4    ldr w4, [sp, #124]                                            
    40027e6c:   910243e1    add x1, sp, #0x90                                             
    40027e70:   f94043e0    ldr x0, [sp, #128]                                            
    40027e74:   b0000102    adrp    x2, 40048000 <_Scheduler_Table+0x60>                  
    40027e78:   910a8042    add x2, x2, #0x2a0                                            
    40027e7c:   d2800023    mov x3, #0x1                    // #1                         
    40027e80:   94003438    bl  40034f60 <rtems_rfs_dir_add_entry>                        
    40027e84:   2a0003f3    mov w19, w0                                                   
  if (rc != 0)                                                                            
    40027e88:   35003060    cbnz    w0, 40028494 <rtems_rfs_format+0xd04>                 <== NEVER TAKEN
  rc = rtems_rfs_inode_close (fs, &inode);                                                
    40027e8c:   f94043e0    ldr x0, [sp, #128]                                            
    40027e90:   910243e1    add x1, sp, #0x90                                             
    40027e94:   94000423    bl  40028f20 <rtems_rfs_inode_close>                          
    40027e98:   2a0003f3    mov w19, w0                                                   
  if (rc != 0)                                                                            
    40027e9c:   35002ee0    cbnz    w0, 40028478 <rtems_rfs_format+0xce8>                 <== NEVER TAKEN
  rc = rtems_rfs_fs_close (fs);                                                           
    40027ea0:   f94043e0    ldr x0, [sp, #128]                                            
    40027ea4:   94003de3    bl  40037630 <rtems_rfs_fs_close>                             
    40027ea8:   2a0003f4    mov w20, w0                                                   
  if (rc != 0)                                                                            
    40027eac:   34fff620    cbz w0, 40027d70 <rtems_rfs_format+0x5e0>                     <== ALWAYS TAKEN
    rc = errno;                                                                           
    40027eb0:   94005677    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    40027eb4:   b9400014    ldr w20, [x0]                                                 <== NOT EXECUTED
    printf ("rtems-rfs: format: file system close failed: %d: %s\n",                      
    40027eb8:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    40027ebc:   94005b58    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40027ec0:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40027ec4:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40027ec8:   d0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40027ecc:   911c0000    add x0, x0, #0x700                                            <== NOT EXECUTED
    40027ed0:   97ffe950    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  if (rc != 0)                                                                            
    40027ed4:   35002514    cbnz    w20, 40028374 <rtems_rfs_format+0xbe4>                <== NOT EXECUTED
}                                                                                         
    40027ed8:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    40027edc:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40027ee0:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40027ee4:   a8dd7bfd    ldp x29, x30, [sp], #464                                      <== NOT EXECUTED
    40027ee8:   d65f03c0    ret                                                           <== NOT EXECUTED
    40027eec:   910203e1    add x1, sp, #0x80                                             <== NOT EXECUTED
    40027ef0:   910343e0    add x0, sp, #0xd0                                             <== NOT EXECUTED
    40027ef4:   97fffce7    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40027ef8:   390203ff    strb    wzr, [sp, #128]                                       <== NOT EXECUTED
    printf ("\nrtems-rfs: write-group: group %3d: open block bitmap failed: %d: %s\n",    
    40027efc:   2a1603e0    mov w0, w22                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    40027f00:   b90087ff    str wzr, [sp, #132]                                           <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40027f04:   f90047ff    str xzr, [sp, #136]                                           <== NOT EXECUTED
    40027f08:   94005b45    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40027f0c:   2a1603e2    mov w2, w22                                                   <== NOT EXECUTED
    40027f10:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    40027f14:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40027f18:   d0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40027f1c:   910d0000    add x0, x0, #0x340                                            <== NOT EXECUTED
    40027f20:   97ffe93c    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
        errno = EIO;                                                                      
    40027f24:   9400565a    bl  4003d88c <__errno>                                        <== NOT EXECUTED
        return -1;                                                                        
    40027f28:   12800014    mov w20, #0xffffffff                // #-1                    <== NOT EXECUTED
        errno = EIO;                                                                      
    40027f2c:   528000a1    mov w1, #0x5                    // #5                         <== NOT EXECUTED
        return -1;                                                                        
    40027f30:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40027f34:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    40027f38:   a94573fb    ldp x27, x28, [sp, #80]                                       <== NOT EXECUTED
        errno = EIO;                                                                      
    40027f3c:   b9000001    str w1, [x0]                                                  <== NOT EXECUTED
}                                                                                         
    40027f40:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    40027f44:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40027f48:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40027f4c:   a8dd7bfd    ldp x29, x30, [sp], #464                                      <== NOT EXECUTED
    40027f50:   d65f03c0    ret                                                           <== NOT EXECUTED
    printf ("\rrtems-rfs: format: group %3d: base = %" PRId32 ", size = %zd",             
    40027f54:   aa1403e3    mov x3, x20                                                   <== NOT EXECUTED
    40027f58:   2a1603e2    mov w2, w22                                                   <== NOT EXECUTED
    40027f5c:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40027f60:   aa1c03e0    mov x0, x28                                                   <== NOT EXECUTED
    40027f64:   97ffe92b    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40027f68:   390203ff    strb    wzr, [sp, #128]                                       <== NOT EXECUTED
    printf (", blocks");                                                                  
    40027f6c:   aa1b03e0    mov x0, x27                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    40027f70:   b90087ff    str wzr, [sp, #132]                                           <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40027f74:   f90047ff    str xzr, [sp, #136]                                           <== NOT EXECUTED
    40027f78:   97ffe926    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40027f7c:   17ffff02    b   40027b84 <rtems_rfs_format+0x3f4>                         <== NOT EXECUTED
    printf ("rtems-rfs: write-group: group %d base beyond disk limit\n",                  
    40027f80:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40027f84:   d0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40027f88:   910ae000    add x0, x0, #0x2b8                                            <== NOT EXECUTED
    40027f8c:   97ffe921    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    return false;                                                                         
    40027f90:   17ffffe5    b   40027f24 <rtems_rfs_format+0x794>                         <== NOT EXECUTED
    rtems_rfs_bitmap_close (&bitmap);                                                     
    40027f94:   910243e0    add x0, sp, #0x90                                             <== NOT EXECUTED
    40027f98:   97fffb06    bl  40026bb0 <rtems_rfs_bitmap_close>                         <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40027f9c:   910203e1    add x1, sp, #0x80                                             <== NOT EXECUTED
    40027fa0:   910343e0    add x0, sp, #0xd0                                             <== NOT EXECUTED
    40027fa4:   97fffcbb    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40027fa8:   390203ff    strb    wzr, [sp, #128]                                       <== NOT EXECUTED
    printf ("\nrtems-rfs: write-group: group %3d: block bitmap clear all failed: %d: %s\n",
    40027fac:   2a1603e0    mov w0, w22                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    40027fb0:   b90087ff    str wzr, [sp, #132]                                           <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40027fb4:   f90047ff    str xzr, [sp, #136]                                           <== NOT EXECUTED
    40027fb8:   94005b19    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40027fbc:   2a1603e2    mov w2, w22                                                   <== NOT EXECUTED
    40027fc0:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    40027fc4:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40027fc8:   d0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40027fcc:   910e2000    add x0, x0, #0x388                                            <== NOT EXECUTED
    40027fd0:   97ffe910    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    return false;                                                                         
    40027fd4:   17ffffd4    b   40027f24 <rtems_rfs_format+0x794>                         <== NOT EXECUTED
    return 1;                                                                             
    40027fd8:   52800022    mov w2, #0x1                    // #1                         <== NOT EXECUTED
    rtems_rfs_bitmap_map_set (&bitmap, b + RTEMS_RFS_GROUP_INODE_BLOCK);                  
    40027fdc:   52800041    mov w1, #0x2                    // #2                         <== NOT EXECUTED
    40027fe0:   910243e0    add x0, sp, #0x90                                             <== NOT EXECUTED
    return 1;                                                                             
    40027fe4:   b9006fe2    str w2, [sp, #108]                                            <== NOT EXECUTED
    rtems_rfs_bitmap_map_set (&bitmap, b + RTEMS_RFS_GROUP_INODE_BLOCK);                  
    40027fe8:   97fff94e    bl  40026520 <rtems_rfs_bitmap_map_set>                       <== NOT EXECUTED
  rc = rtems_rfs_bitmap_close (&bitmap);                                                  
    40027fec:   910243e0    add x0, sp, #0x90                                             <== NOT EXECUTED
    40027ff0:   97fffaf0    bl  40026bb0 <rtems_rfs_bitmap_close>                         <== NOT EXECUTED
    40027ff4:   2a0003f6    mov w22, w0                                                   <== NOT EXECUTED
  if (rc > 0)                                                                             
    40027ff8:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40027ffc:   54ffe24d    b.le    40027c44 <rtems_rfs_format+0x4b4>                     <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40028000:   910203e1    add x1, sp, #0x80                                             <== NOT EXECUTED
    40028004:   910343e0    add x0, sp, #0xd0                                             <== NOT EXECUTED
    40028008:   97fffca2    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    4002800c:   390203ff    strb    wzr, [sp, #128]                                       <== NOT EXECUTED
    printf ("\nrtems-rfs: write-group: group %3d: close block bitmap failed: %d: %s\n",   
    40028010:   2a1603e0    mov w0, w22                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    40028014:   b90087ff    str wzr, [sp, #132]                                           <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40028018:   f90047ff    str xzr, [sp, #136]                                           <== NOT EXECUTED
    4002801c:   94005b00    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40028020:   2a1603e2    mov w2, w22                                                   <== NOT EXECUTED
    40028024:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    40028028:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    4002802c:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028030:   910f6000    add x0, x0, #0x3d8                                            <== NOT EXECUTED
    40028034:   97ffe8f7    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    return false;                                                                         
    40028038:   17ffffbb    b   40027f24 <rtems_rfs_format+0x794>                         <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    4002803c:   910203e1    add x1, sp, #0x80                                             <== NOT EXECUTED
    40028040:   910343e0    add x0, sp, #0xd0                                             <== NOT EXECUTED
    40028044:   97fffc93    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40028048:   390203ff    strb    wzr, [sp, #128]                                       <== NOT EXECUTED
    printf ("\nrtems-rfs: write-group: group %3d: open inode bitmap failed: %d: %s\n",    
    4002804c:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    40028050:   b90087ff    str wzr, [sp, #132]                                           <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40028054:   f90047ff    str xzr, [sp, #136]                                           <== NOT EXECUTED
    40028058:   94005af1    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    4002805c:   2a1403e2    mov w2, w20                                                   <== NOT EXECUTED
    40028060:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    40028064:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40028068:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    4002806c:   9110c000    add x0, x0, #0x430                                            <== NOT EXECUTED
    40028070:   97ffe8e8    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    return false;                                                                         
    40028074:   17ffffac    b   40027f24 <rtems_rfs_format+0x794>                         <== NOT EXECUTED
    printf (", inodes");                                                                  
    40028078:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    4002807c:   91108000    add x0, x0, #0x420                                            <== NOT EXECUTED
    40028080:   97ffe8e4    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40028084:   17fffef3    b   40027c50 <rtems_rfs_format+0x4c0>                         <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40028088:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
    4002808c:   910343e0    add x0, sp, #0xd0                                             <== NOT EXECUTED
    40028090:   97fffc80    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40028094:   390243ff    strb    wzr, [sp, #144]                                       <== NOT EXECUTED
    printf ("rtems-rfs: write-superblock: request failed: %d: %s\n",                      
    40028098:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    4002809c:   b90097ff    str wzr, [sp, #148]                                           <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    400280a0:   f9004fff    str xzr, [sp, #152]                                           <== NOT EXECUTED
    400280a4:   94005ade    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    400280a8:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    400280ac:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    400280b0:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400280b4:   91084000    add x0, x0, #0x210                                            <== NOT EXECUTED
    400280b8:   97ffe8d6    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    printf ("rtems-rfs: format: superblock write failed\n");                              
    400280bc:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400280c0:   910a2000    add x0, x0, #0x288                                            <== NOT EXECUTED
    400280c4:   97ffe8f7    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
    return -1;                                                                            
    400280c8:   12800014    mov w20, #0xffffffff                // #-1                    <== NOT EXECUTED
    errno = EIO;                                                                          
    400280cc:   940055f0    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    400280d0:   528000a1    mov w1, #0x5                    // #5                         <== NOT EXECUTED
    400280d4:   b9000001    str w1, [x0]                                                  <== NOT EXECUTED
    return -1;                                                                            
    400280d8:   17ffff26    b   40027d70 <rtems_rfs_format+0x5e0>                         <== NOT EXECUTED
    rtems_rfs_bitmap_close (&bitmap);                                                     
    400280dc:   97fffab5    bl  40026bb0 <rtems_rfs_bitmap_close>                         <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    400280e0:   910203e1    add x1, sp, #0x80                                             <== NOT EXECUTED
    400280e4:   910343e0    add x0, sp, #0xd0                                             <== NOT EXECUTED
    400280e8:   97fffc6a    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    400280ec:   390203ff    strb    wzr, [sp, #128]                                       <== NOT EXECUTED
    printf ("\nrtems-rfs: write-group: group %3d: inode bitmap" \                         
    400280f0:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    400280f4:   b90087ff    str wzr, [sp, #132]                                           <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    400280f8:   f90047ff    str xzr, [sp, #136]                                           <== NOT EXECUTED
    400280fc:   94005ac8    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40028100:   2a1403e2    mov w2, w20                                                   <== NOT EXECUTED
    40028104:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    40028108:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    4002810c:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028110:   9111e000    add x0, x0, #0x478                                            <== NOT EXECUTED
    40028114:   97ffe8bf    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    return false;                                                                         
    40028118:   17ffff83    b   40027f24 <rtems_rfs_format+0x794>                         <== NOT EXECUTED
    printf ("rtems-rfs: format: %s\n", name);                                             
    4002811c:   f94033e1    ldr x1, [sp, #96]                                             <== NOT EXECUTED
    40028120:   90000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40028124:   913c6000    add x0, x0, #0xf18                                            <== NOT EXECUTED
    40028128:   97ffe8ba    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    4002812c:   17fffda1    b   400277b0 <rtems_rfs_format+0x20>                          <== NOT EXECUTED
    uint64_t total_size = rtems_rfs_fs_media_size (fs);                                   
    40028130:   910343e0    add x0, sp, #0xd0                                             
    40028134:   94003b57    bl  40036e90 <rtems_rfs_fs_media_size>                        
    if (total_size >= GIGS (1))                                                           
    40028138:   b2404fe1    mov x1, #0xfffff                // #1048575                   
    4002813c:   eb01001f    cmp x0, x1                                                    
    40028140:   54000fa9    b.ls    40028334 <rtems_rfs_format+0xba4>  // b.plast         <== ALWAYS TAKEN
      uint32_t gigs = (total_size + GIGS (1)) / GIGS (1);                                 
    40028144:   91440002    add x2, x0, #0x100, lsl #12                                   <== NOT EXECUTED
        if ((gigs & (1 << b)) != 0)                                                       
    40028148:   52800023    mov w3, #0x1                    // #1                         <== NOT EXECUTED
      for (b = 31; b > 0; b--)                                                            
    4002814c:   528003e0    mov w0, #0x1f                   // #31                        <== NOT EXECUTED
      uint32_t gigs = (total_size + GIGS (1)) / GIGS (1);                                 
    40028150:   d354cc42    ubfx    x2, x2, #20, #32                                      <== NOT EXECUTED
      for (b = 31; b > 0; b--)                                                            
    40028154:   14000003    b   40028160 <rtems_rfs_format+0x9d0>                         <== NOT EXECUTED
    40028158:   71000400    subs    w0, w0, #0x1                                          <== NOT EXECUTED
    4002815c:   540016e0    b.eq    40028438 <rtems_rfs_format+0xca8>  // b.none          <== NOT EXECUTED
        if ((gigs & (1 << b)) != 0)                                                       
    40028160:   1ac02061    lsl w1, w3, w0                                                <== NOT EXECUTED
    40028164:   6a02003f    tst w1, w2                                                    <== NOT EXECUTED
    40028168:   54ffff80    b.eq    40028158 <rtems_rfs_format+0x9c8>  // b.none          <== NOT EXECUTED
      fs->block_size = 1 << b;                                                            
    4002816c:   93407c21    sxtw    x1, w1                                                <== NOT EXECUTED
    40028170:   f90073e1    str x1, [sp, #224]                                            <== NOT EXECUTED
  if ((fs->block_size % rtems_rfs_fs_media_block_size (fs)) != 0)                         
    40028174:   f9407be0    ldr x0, [sp, #240]                                            <== NOT EXECUTED
    if (fs->block_size < 512)                                                             
    40028178:   f107fc3f    cmp x1, #0x1ff                                                <== NOT EXECUTED
  if ((fs->block_size % rtems_rfs_fs_media_block_size (fs)) != 0)                         
    4002817c:   b9402c02    ldr w2, [x0, #44]                                             <== NOT EXECUTED
    if (fs->block_size < 512)                                                             
    40028180:   54000e49    b.ls    40028348 <rtems_rfs_format+0xbb8>  // b.plast         <== NOT EXECUTED
    if (fs->block_size > (4 * 1024))                                                      
    40028184:   f140043f    cmp x1, #0x1, lsl #12                                         <== NOT EXECUTED
    40028188:   54ffb5a9    b.ls    4002783c <rtems_rfs_format+0xac>  // b.plast          <== NOT EXECUTED
      fs->block_size = (4 * 1024);                                                        
    4002818c:   d2820000    mov x0, #0x1000                 // #4096                      <== NOT EXECUTED
  if ((fs->block_size % rtems_rfs_fs_media_block_size (fs)) != 0)                         
    40028190:   2a0203e3    mov w3, w2                                                    <== NOT EXECUTED
      fs->block_size = (4 * 1024);                                                        
    40028194:   aa0003e1    mov x1, x0                                                    <== NOT EXECUTED
    40028198:   f90073e0    str x0, [sp, #224]                                            <== NOT EXECUTED
  if ((fs->block_size % rtems_rfs_fs_media_block_size (fs)) != 0)                         
    4002819c:   9ac30820    udiv    x0, x1, x3                                            <== NOT EXECUTED
    400281a0:   9b038400    msub    x0, x0, x3, x1                                        <== NOT EXECUTED
    400281a4:   b4ffb540    cbz x0, 4002784c <rtems_rfs_format+0xbc>                      <== NOT EXECUTED
    printf ("block size (%zd) is not a multiple of media block size (%" PRId32 ")\n",     
    400281a8:   90000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    400281ac:   913e2000    add x0, x0, #0xf88                                            <== NOT EXECUTED
    400281b0:   97ffe898    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    return false;                                                                         
    400281b4:   17fffef9    b   40027d98 <rtems_rfs_format+0x608>                         <== NOT EXECUTED
    printf ("rtems-rfs: format: media size = %" PRIu64 "\n",                              
    400281b8:   910343e0    add x0, sp, #0xd0                                             <== NOT EXECUTED
    400281bc:   94003b35    bl  40036e90 <rtems_rfs_fs_media_size>                        <== NOT EXECUTED
    400281c0:   90000102    adrp    x2, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    400281c4:   aa0003e1    mov x1, x0                                                    <== NOT EXECUTED
    400281c8:   913fe040    add x0, x2, #0xff8                                            <== NOT EXECUTED
    400281cc:   97ffe891    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    printf ("rtems-rfs: format: media blocks = %" PRIu32 "\n",                            
    400281d0:   f9407be1    ldr x1, [sp, #240]                                            <== NOT EXECUTED
    400281d4:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400281d8:   91008000    add x0, x0, #0x20                                             <== NOT EXECUTED
    400281dc:   b9402821    ldr w1, [x1, #40]                                             <== NOT EXECUTED
    400281e0:   97ffe88c    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    printf ("rtems-rfs: format: media block size = %" PRIu32 "\n",                        
    400281e4:   f9407be1    ldr x1, [sp, #240]                                            <== NOT EXECUTED
    400281e8:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400281ec:   91012000    add x0, x0, #0x48                                             <== NOT EXECUTED
    400281f0:   b9402c21    ldr w1, [x1, #44]                                             <== NOT EXECUTED
    400281f4:   97ffe887    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    printf ("rtems-rfs: format: size = %" PRIu64 "\n",                                    
    400281f8:   910343e0    add x0, sp, #0xd0                                             <== NOT EXECUTED
    400281fc:   94003b21    bl  40036e80 <rtems_rfs_fs_size>                              <== NOT EXECUTED
    40028200:   aa0003e1    mov x1, x0                                                    <== NOT EXECUTED
    40028204:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028208:   9101e000    add x0, x0, #0x78                                             <== NOT EXECUTED
    4002820c:   97ffe881    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    printf ("rtems-rfs: format: blocks = %zu\n",                                          
    40028210:   f9406fe1    ldr x1, [sp, #216]                                            <== NOT EXECUTED
    40028214:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028218:   91026000    add x0, x0, #0x98                                             <== NOT EXECUTED
    4002821c:   97ffe87d    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    printf ("rtems-rfs: format: block size = %zu\n",                                      
    40028220:   f94073e1    ldr x1, [sp, #224]                                            <== NOT EXECUTED
    40028224:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028228:   91030000    add x0, x0, #0xc0                                             <== NOT EXECUTED
    4002822c:   97ffe879    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  return rtems_rfs_bitmap_numof_bits (rtems_rfs_fs_block_size (fs));                      
    40028230:   f94073e1    ldr x1, [sp, #224]                                            <== NOT EXECUTED
    printf ("rtems-rfs: format: bits per block = %u\n",                                   
    40028234:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028238:   9103a000    add x0, x0, #0xe8                                             <== NOT EXECUTED
    4002823c:   531d7021    lsl w1, w1, #3                                                <== NOT EXECUTED
    40028240:   97ffe874    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    printf ("rtems-rfs: format: inode size = %zu\n", RTEMS_RFS_INODE_SIZE);               
    40028244:   d2800701    mov x1, #0x38                   // #56                        <== NOT EXECUTED
    40028248:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    4002824c:   91044000    add x0, x0, #0x110                                            <== NOT EXECUTED
    40028250:   97ffe870    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
            fs.group_inodes * fs.group_count,                                             
    40028254:   f94093e2    ldr x2, [sp, #288]                                            <== NOT EXECUTED
  blocks = rtems_rfs_rup_quotient(fs->group_inodes * RTEMS_RFS_INODE_SIZE,                
    40028258:   52800700    mov w0, #0x38                   // #56                        <== NOT EXECUTED
            fs.group_inodes * fs.group_count,                                             
    4002825c:   b98113e1    ldrsw   x1, [sp, #272]                                        <== NOT EXECUTED
    40028260:   5280fa03    mov w3, #0x7d0                  // #2000                      <== NOT EXECUTED
  blocks = rtems_rfs_rup_quotient(fs->group_inodes * RTEMS_RFS_INODE_SIZE,                
    40028264:   f94073e4    ldr x4, [sp, #224]                                            <== NOT EXECUTED
    40028268:   1b007c40    mul w0, w2, w0                                                <== NOT EXECUTED
    printf ("rtems-rfs: format: inodes = %zu (%d.%d%%)\n",                                
    4002826c:   9b027c21    mul x1, x1, x2                                                <== NOT EXECUTED
  if (dividend == 0)                                                                      
    40028270:   340000c0    cbz w0, 40028288 <rtems_rfs_format+0xaf8>                     <== NOT EXECUTED
  return ((dividend - 1) / divisor) + 1;                                                  
    40028274:   51000400    sub w0, w0, #0x1                                              <== NOT EXECUTED
  return ((blocks + 1) * 100 * 10) / bits_per_block;                                      
    40028278:   52807d03    mov w3, #0x3e8                  // #1000                      <== NOT EXECUTED
  return ((dividend - 1) / divisor) + 1;                                                  
    4002827c:   1ac40800    udiv    w0, w0, w4                                            <== NOT EXECUTED
  return ((blocks + 1) * 100 * 10) / bits_per_block;                                      
    40028280:   11000800    add w0, w0, #0x2                                              <== NOT EXECUTED
    40028284:   1b037c03    mul w3, w0, w3                                                <== NOT EXECUTED
  if (bits_per_block > (rtems_rfs_fs_blocks (fs) - RTEMS_RFS_SUPERBLOCK_SIZE))            
    40028288:   f9406fe0    ldr x0, [sp, #216]                                            <== NOT EXECUTED
  return rtems_rfs_bitmap_numof_bits (rtems_rfs_fs_block_size (fs));                      
    4002828c:   531d7084    lsl w4, w4, #3                                                <== NOT EXECUTED
    printf ("rtems-rfs: format: inodes = %zu (%d.%d%%)\n",                                
    40028290:   528ccce2    mov w2, #0x6667                 // #26215                     <== NOT EXECUTED
    40028294:   72acccc2    movk    w2, #0x6666, lsl #16                                  <== NOT EXECUTED
  if (bits_per_block > (rtems_rfs_fs_blocks (fs) - RTEMS_RFS_SUPERBLOCK_SIZE))            
    40028298:   d1000406    sub x6, x0, #0x1                                              <== NOT EXECUTED
    bits_per_block = rtems_rfs_fs_blocks (fs) - RTEMS_RFS_SUPERBLOCK_SIZE;                
    4002829c:   51000400    sub w0, w0, #0x1                                              <== NOT EXECUTED
    400282a0:   eb24c0df    cmp x6, w4, sxtw                                              <== NOT EXECUTED
    printf ("rtems-rfs: format: inodes = %zu (%d.%d%%)\n",                                
    400282a4:   52800145    mov w5, #0xa                    // #10                        <== NOT EXECUTED
    bits_per_block = rtems_rfs_fs_blocks (fs) - RTEMS_RFS_SUPERBLOCK_SIZE;                
    400282a8:   1a802084    csel    w4, w4, w0, cs  // cs = hs, nlast                     <== NOT EXECUTED
    printf ("rtems-rfs: format: inodes = %zu (%d.%d%%)\n",                                
    400282ac:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400282b0:   9104e000    add x0, x0, #0x138                                            <== NOT EXECUTED
  return ((blocks + 1) * 100 * 10) / bits_per_block;                                      
    400282b4:   1ac40c63    sdiv    w3, w3, w4                                            <== NOT EXECUTED
    printf ("rtems-rfs: format: inodes = %zu (%d.%d%%)\n",                                
    400282b8:   9b227c62    smull   x2, w3, w2                                            <== NOT EXECUTED
    400282bc:   9362fc42    asr x2, x2, #34                                               <== NOT EXECUTED
    400282c0:   4b837c42    sub w2, w2, w3, asr #31                                       <== NOT EXECUTED
    400282c4:   1b058c43    msub    w3, w2, w5, w3                                        <== NOT EXECUTED
    400282c8:   97ffe852    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    printf ("rtems-rfs: format: groups = %u\n", fs.group_count);                          
    400282cc:   b94113e1    ldr w1, [sp, #272]                                            <== NOT EXECUTED
    400282d0:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400282d4:   9105a000    add x0, x0, #0x168                                            <== NOT EXECUTED
    400282d8:   97ffe84e    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    printf ("rtems-rfs: format: group blocks = %zu\n", fs.group_blocks);                  
    400282dc:   f9408fe1    ldr x1, [sp, #280]                                            <== NOT EXECUTED
    400282e0:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400282e4:   91062000    add x0, x0, #0x188                                            <== NOT EXECUTED
    400282e8:   97ffe84a    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    printf ("rtems-rfs: format: group inodes = %zu\n", fs.group_inodes);                  
    400282ec:   f94093e1    ldr x1, [sp, #288]                                            <== NOT EXECUTED
    400282f0:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400282f4:   9106c000    add x0, x0, #0x1b0                                            <== NOT EXECUTED
    400282f8:   97ffe846    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  rc = rtems_rfs_buffer_setblksize (&fs, rtems_rfs_fs_block_size (&fs));                  
    400282fc:   b940e3e1    ldr w1, [sp, #224]                                            <== NOT EXECUTED
    40028300:   17fffd96    b   40027958 <rtems_rfs_format+0x1c8>                         <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40028304:   97fffbe3    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40028308:   390243ff    strb    wzr, [sp, #144]                                       <== NOT EXECUTED
    printf ("rtems-rfs: write-superblock: buffer release failed: %d: %s\n",               
    4002830c:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    40028310:   b90097ff    str wzr, [sp, #148]                                           <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40028314:   f9004fff    str xzr, [sp, #152]                                           <== NOT EXECUTED
    40028318:   94005a41    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    4002831c:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40028320:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40028324:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028328:   91092000    add x0, x0, #0x248                                            <== NOT EXECUTED
    4002832c:   97ffe839    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    return false;                                                                         
    40028330:   17ffff63    b   400280bc <rtems_rfs_format+0x92c>                         <== NOT EXECUTED
  if ((fs->block_size % rtems_rfs_fs_media_block_size (fs)) != 0)                         
    40028334:   f9407be0    ldr x0, [sp, #240]                                            
    if (fs->block_size < 512)                                                             
    40028338:   f94073e1    ldr x1, [sp, #224]                                            
  if ((fs->block_size % rtems_rfs_fs_media_block_size (fs)) != 0)                         
    4002833c:   b9402c02    ldr w2, [x0, #44]                                             
    if (fs->block_size < 512)                                                             
    40028340:   f107fc3f    cmp x1, #0x1ff                                                
    40028344:   54fff208    b.hi    40028184 <rtems_rfs_format+0x9f4>  // b.pmore         <== NEVER TAKEN
      fs->block_size = 512;                                                               
    40028348:   d2804000    mov x0, #0x200                  // #512                       
    4002834c:   aa0003e1    mov x1, x0                                                    
    40028350:   f90073e0    str x0, [sp, #224]                                            
    if (fs->block_size > (4 * 1024))                                                      
    40028354:   17fffd3a    b   4002783c <rtems_rfs_format+0xac>                          
    printf ("rtems-rfs: format: allocated inode not root ino: %" PRId32 "\n", ino);       
    40028358:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    4002835c:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028360:   9117e000    add x0, x0, #0x5f8                                            <== NOT EXECUTED
    40028364:   97ffe82b    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    rtems_rfs_fs_close (fs);                                                              
    40028368:   f94043e0    ldr x0, [sp, #128]                                            <== NOT EXECUTED
    return EINVAL;                                                                        
    4002836c:   528002d4    mov w20, #0x16                      // #22                    <== NOT EXECUTED
    rtems_rfs_fs_close (fs);                                                              
    40028370:   94003cb0    bl  40037630 <rtems_rfs_fs_close>                             <== NOT EXECUTED
    printf ("rtems-rfs: format: writing root dir failed: %d: %s\n",                       
    40028374:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    40028378:   94005a29    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    4002837c:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40028380:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40028384:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028388:   911ce000    add x0, x0, #0x738                                            <== NOT EXECUTED
    4002838c:   97ffe821    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    errno = rc;                                                                           
    40028390:   9400553f    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    40028394:   b9000014    str w20, [x0]                                                 <== NOT EXECUTED
    return -1;                                                                            
    40028398:   12800014    mov w20, #0xffffffff                // #-1                    <== NOT EXECUTED
    4002839c:   17fffe75    b   40027d70 <rtems_rfs_format+0x5e0>                         <== NOT EXECUTED
    rc = errno;                                                                           
    400283a0:   9400553b    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    400283a4:   b9400014    ldr w20, [x0]                                                 <== NOT EXECUTED
    printf ("rtems-rfs: format: file system open failed: %d: %s\n",                       
    400283a8:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    400283ac:   94005a1c    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    400283b0:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    400283b4:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    400283b8:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400283bc:   91162000    add x0, x0, #0x588                                            <== NOT EXECUTED
    400283c0:   97ffe814    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  if (rc != 0)                                                                            
    400283c4:   34ffd8b4    cbz w20, 40027ed8 <rtems_rfs_format+0x748>                    <== NOT EXECUTED
    400283c8:   17ffffeb    b   40028374 <rtems_rfs_format+0xbe4>                         <== NOT EXECUTED
    printf ("\n");                                                                        
    400283cc:   52800140    mov w0, #0xa                    // #10                        <== NOT EXECUTED
    400283d0:   9400570c    bl  4003e000 <putchar>                                        <== NOT EXECUTED
    400283d4:   17fffe82    b   40027ddc <rtems_rfs_format+0x64c>                         <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    400283d8:   910203e1    add x1, sp, #0x80                                             <== NOT EXECUTED
    400283dc:   910343e0    add x0, sp, #0xd0                                             <== NOT EXECUTED
    400283e0:   97fffbac    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    400283e4:   390203ff    strb    wzr, [sp, #128]                                       <== NOT EXECUTED
    printf ("\nrtems-rfs: write-group: group %3d: close inode" \                          
    400283e8:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    400283ec:   b90087ff    str wzr, [sp, #132]                                           <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    400283f0:   f90047ff    str xzr, [sp, #136]                                           <== NOT EXECUTED
    400283f4:   94005a0a    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    400283f8:   2a1403e2    mov w2, w20                                                   <== NOT EXECUTED
    400283fc:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    40028400:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40028404:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028408:   91132000    add x0, x0, #0x4c8                                            <== NOT EXECUTED
    4002840c:   97ffe801    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    return false;                                                                         
    40028410:   17fffec5    b   40027f24 <rtems_rfs_format+0x794>                         <== NOT EXECUTED
    printf ("rtems-rfs: format: inode allocation failed: %d: %s\n",                       
    40028414:   94005a02    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40028418:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    4002841c:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40028420:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028424:   91170000    add x0, x0, #0x5c0                                            <== NOT EXECUTED
    40028428:   97ffe7fa    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    rtems_rfs_fs_close (fs);                                                              
    4002842c:   f94043e0    ldr x0, [sp, #128]                                            <== NOT EXECUTED
    40028430:   94003c80    bl  40037630 <rtems_rfs_fs_close>                             <== NOT EXECUTED
    return rc;                                                                            
    40028434:   17ffffd0    b   40028374 <rtems_rfs_format+0xbe4>                         <== NOT EXECUTED
    40028438:   d2800021    mov x1, #0x1                    // #1                         <== NOT EXECUTED
      fs->block_size = 1 << b;                                                            
    4002843c:   f90073e1    str x1, [sp, #224]                                            <== NOT EXECUTED
    40028440:   17ffff4d    b   40028174 <rtems_rfs_format+0x9e4>                         <== NOT EXECUTED
    printf ("rtems-rfs: format: inode open failed: %d: %s\n",                             
    40028444:   940059f6    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40028448:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    4002844c:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40028450:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028454:   9118c000    add x0, x0, #0x630                                            <== NOT EXECUTED
    40028458:   97ffe7ee    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    rtems_rfs_group_bitmap_free (fs, true, ino);                                          
    4002845c:   b9407fe2    ldr w2, [sp, #124]                                            <== NOT EXECUTED
    40028460:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40028464:   f94043e0    ldr x0, [sp, #128]                                            <== NOT EXECUTED
    40028468:   9400019e    bl  40028ae0 <rtems_rfs_group_bitmap_free>                    <== NOT EXECUTED
    rtems_rfs_fs_close (fs);                                                              
    4002846c:   f94043e0    ldr x0, [sp, #128]                                            <== NOT EXECUTED
    40028470:   94003c70    bl  40037630 <rtems_rfs_fs_close>                             <== NOT EXECUTED
    return rc;                                                                            
    40028474:   17ffffc0    b   40028374 <rtems_rfs_format+0xbe4>                         <== NOT EXECUTED
    printf ("rtems-rfs: format: inode close failed: %d: %s\n",                            
    40028478:   940059e9    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    4002847c:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40028480:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40028484:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028488:   911b4000    add x0, x0, #0x6d0                                            <== NOT EXECUTED
    4002848c:   97ffe7e1    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40028490:   17fffe84    b   40027ea0 <rtems_rfs_format+0x710>                         <== NOT EXECUTED
    printf ("rtems-rfs: format: directory add failed: %d: %s\n",                          
    40028494:   940059e2    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40028498:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    4002849c:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    400284a0:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400284a4:   911a6000    add x0, x0, #0x698                                            <== NOT EXECUTED
    400284a8:   97ffe7da    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    400284ac:   17fffe78    b   40027e8c <rtems_rfs_format+0x6fc>                         <== NOT EXECUTED
    printf ("rtems-rfs: format: inode initialise failed: %d: %s\n",                       
    400284b0:   940059db    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    400284b4:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    400284b8:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    400284bc:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400284c0:   91198000    add x0, x0, #0x660                                            <== NOT EXECUTED
    400284c4:   97ffe7d3    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    400284c8:   17fffe68    b   40027e68 <rtems_rfs_format+0x6d8>                         <== NOT EXECUTED
    printf ("rtems-rfs: media block is invalid: %" PRIu32 "\n",                           
    400284cc:   52800001    mov w1, #0x0                    // #0                         <== NOT EXECUTED
    400284d0:   90000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    400284d4:   913d8000    add x0, x0, #0xf60                                            <== NOT EXECUTED
    400284d8:   97ffe7ce    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    errno = EINVAL;                                                                       
    400284dc:   940054ec    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    return -1;                                                                            
    400284e0:   12800014    mov w20, #0xffffffff                // #-1                    <== NOT EXECUTED
    errno = EINVAL;                                                                       
    400284e4:   528002c1    mov w1, #0x16                   // #22                        <== NOT EXECUTED
    400284e8:   b9000001    str w1, [x0]                                                  <== NOT EXECUTED
    return -1;                                                                            
    400284ec:   17fffe21    b   40027d70 <rtems_rfs_format+0x5e0>                         <== NOT EXECUTED
    printf ("rtems-rfs: format: setting block size failed: %d: %s\n",                     
    400284f0:   940059cb    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    400284f4:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    400284f8:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    400284fc:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028500:   91076000    add x0, x0, #0x1d8                                            <== NOT EXECUTED
    40028504:   97ffe7c3    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    return -1;                                                                            
    40028508:   12800014    mov w20, #0xffffffff                // #-1                    <== NOT EXECUTED
    errno = rc;                                                                           
    4002850c:   940054e0    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    40028510:   b9000013    str w19, [x0]                                                 <== NOT EXECUTED
    return -1;                                                                            
    40028514:   17fffe17    b   40027d70 <rtems_rfs_format+0x5e0>                         <== NOT EXECUTED
    printf ("rtems-rfs: format: buffer open failed: %d: %s\n",                            
    40028518:   940059c1    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    4002851c:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40028520:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40028524:   90000100    adrp    x0, 40048000 <_Scheduler_Table+0x60>                  <== NOT EXECUTED
    40028528:   913cc000    add x0, x0, #0xf30                                            <== NOT EXECUTED
    4002852c:   97ffe7b9    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    return -1;                                                                            
    40028530:   12800014    mov w20, #0xffffffff                // #-1                    <== NOT EXECUTED
    errno = rc;                                                                           
    40028534:   940054d6    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    40028538:   b9000013    str w19, [x0]                                                 <== NOT EXECUTED
    return -1;                                                                            
    4002853c:   17fffe0d    b   40027d70 <rtems_rfs_format+0x5e0>                         <== NOT EXECUTED
    printf ("rtems-rfs: format: buffer close failed: %d: %s\n",                           
    40028540:   940059b7    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40028544:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40028548:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    4002854c:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028550:   91156000    add x0, x0, #0x558                                            <== NOT EXECUTED
    40028554:   97ffe7af    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    return -1;                                                                            
    40028558:   12800014    mov w20, #0xffffffff                // #-1                    <== NOT EXECUTED
    errno = rc;                                                                           
    4002855c:   940054cc    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    40028560:   b9000013    str w19, [x0]                                                 <== NOT EXECUTED
    return -1;                                                                            
    40028564:   17fffe03    b   40027d70 <rtems_rfs_format+0x5e0>                         <== NOT EXECUTED
    ...                                                                                   
                                                                                          

0000000040037630 <rtems_rfs_fs_close>: int rtems_rfs_fs_close (rtems_rfs_file_system* fs) {
    40037630:   a9bd7bfd    stp x29, x30, [sp, #-48]!                                     
    40037634:   910003fd    mov x29, sp                                                   
    40037638:   a90153f3    stp x19, x20, [sp, #16]                                       
    4003763c:   aa0003f3    mov x19, x0                                                   
  int group;                                                                              
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_CLOSE))                                            
    40037640:   d2800040    mov x0, #0x2                    // #2                         
    40037644:   97ffcd03    bl  4002aa50 <rtems_rfs_trace>                                
    40037648:   72001c1f    tst w0, #0xff                                                 
    4003764c:   54000321    b.ne    400376b0 <rtems_rfs_fs_close+0x80>  // b.any          <== NEVER TAKEN
    printf ("rtems-rfs: close\n");                                                        
                                                                                          
  for (group = 0; group < fs->group_count; group++)                                       
    40037650:   b9404260    ldr w0, [x19, #64]                                            
    40037654:   7100001f    cmp w0, #0x0                                                  
    40037658:   540001cd    b.le    40037690 <rtems_rfs_fs_close+0x60>                    <== NEVER TAKEN
    4003765c:   52800014    mov w20, #0x0                       // #0                     
    40037660:   f90013f5    str x21, [sp, #32]                                            
    40037664:   d2800015    mov x21, #0x0                       // #0                     
    rtems_rfs_group_close (fs, &fs->groups[group]);                                       
    40037668:   f9401e61    ldr x1, [x19, #56]                                            
    4003766c:   aa1303e0    mov x0, x19                                                   
  for (group = 0; group < fs->group_count; group++)                                       
    40037670:   11000694    add w20, w20, #0x1                                            
    rtems_rfs_group_close (fs, &fs->groups[group]);                                       
    40037674:   8b150021    add x1, x1, x21                                               
    40037678:   97ffc456    bl  400287d0 <rtems_rfs_group_close>                          
  for (group = 0; group < fs->group_count; group++)                                       
    4003767c:   b9404260    ldr w0, [x19, #64]                                            
    40037680:   910242b5    add x21, x21, #0x90                                           
    40037684:   6b14001f    cmp w0, w20                                                   
    40037688:   54ffff0c    b.gt    40037668 <rtems_rfs_fs_close+0x38>                    <== NEVER TAKEN
    4003768c:   f94013f5    ldr x21, [sp, #32]                                            
                                                                                          
  rtems_rfs_buffer_close (fs);                                                            
    40037690:   aa1303e0    mov x0, x19                                                   
    40037694:   97ffc007    bl  400276b0 <rtems_rfs_buffer_close>                         
                                                                                          
  free (fs);                                                                              
    40037698:   aa1303e0    mov x0, x19                                                   
    4003769c:   97ffac45    bl  400227b0 <free>                                           
  return 0;                                                                               
}                                                                                         
    400376a0:   52800000    mov w0, #0x0                    // #0                         
    400376a4:   a94153f3    ldp x19, x20, [sp, #16]                                       
    400376a8:   a8c37bfd    ldp x29, x30, [sp], #48                                       
    400376ac:   d65f03c0    ret                                                           
    printf ("rtems-rfs: close\n");                                                        
    400376b0:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    400376b4:   910cc000    add x0, x0, #0x330                                            <== NOT EXECUTED
    400376b8:   97ffab7a    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
    400376bc:   17ffffe5    b   40037650 <rtems_rfs_fs_close+0x20>                        <== NOT EXECUTED
                                                                                          

0000000040036ea0 <rtems_rfs_fs_open>: rtems_rfs_fs_open (const char* name, void* user, uint32_t flags, uint32_t max_held_buffers, rtems_rfs_file_system** fs) {
    40036ea0:   a9b87bfd    stp x29, x30, [sp, #-128]!                                    
    40036ea4:   910003fd    mov x29, sp                                                   
    40036ea8:   a90153f3    stp x19, x20, [sp, #16]                                       
    40036eac:   aa0003f3    mov x19, x0                                                   
    40036eb0:   2a0303f4    mov w20, w3                                                   
#endif                                                                                    
  rtems_rfs_inode_handle inode;                                                           
  uint16_t               mode;                                                            
  int                    rc;                                                              
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                             
    40036eb4:   d2800020    mov x0, #0x1                    // #1                         
{                                                                                         
    40036eb8:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40036ebc:   2a0203f6    mov w22, w2                                                   
    40036ec0:   aa0403f5    mov x21, x4                                                   
    40036ec4:   f9001bf7    str x23, [sp, #48]                                            
    40036ec8:   aa0103f7    mov x23, x1                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                             
    40036ecc:   97ffcee1    bl  4002aa50 <rtems_rfs_trace>                                
    40036ed0:   72001c1f    tst w0, #0xff                                                 
    40036ed4:   54001c01    b.ne    40037254 <rtems_rfs_fs_open+0x3b4>  // b.any          <== NEVER TAKEN
    printf ("rtems-rfs: open: %s\n", name);                                               
                                                                                          
  *fs = malloc (sizeof (rtems_rfs_file_system));                                          
    40036ed8:   d2800021    mov x1, #0x1                    // #1                         
    40036edc:   d2802000    mov x0, #0x100                  // #256                       
    40036ee0:   97ffedc0    bl  400325e0 <calloc>                                         
    40036ee4:   f90002a0    str x0, [x21]                                                 
    40036ee8:   aa0003e1    mov x1, x0                                                    
  if (!*fs)                                                                               
    40036eec:   b40035e0    cbz x0, 400375a8 <rtems_rfs_fs_open+0x708>                    <== NEVER TAKEN
  return &the_chain->Tail.Node;                                                           
    40036ef0:   91022004    add x4, x0, #0x88                                             
    40036ef4:   9102a006    add x6, x0, #0xa8                                             
  head->next = tail;                                                                      
    40036ef8:   91020000    add x0, x0, #0x80                                             
  return &the_chain->Tail.Node;                                                           
    40036efc:   91032025    add x5, x1, #0xc8                                             
  head->next = tail;                                                                      
    40036f00:   91038022    add x2, x1, #0xe0                                             
    40036f04:   f9004024    str x4, [x1, #128]                                            
  return &the_chain->Tail.Node;                                                           
    40036f08:   9103a024    add x4, x1, #0xe8                                             
  tail->previous = head;                                                                  
    40036f0c:   f9004820    str x0, [x1, #144]                                            
  head->next = tail;                                                                      
    40036f10:   91028020    add x0, x1, #0xa0                                             
                                                                                          
  (*fs)->max_held_buffers = max_held_buffers;                                             
  (*fs)->buffers_count = 0;                                                               
  (*fs)->release_count = 0;                                                               
  (*fs)->release_modified_count = 0;                                                      
  (*fs)->flags = flags;                                                                   
    40036f14:   b9000036    str w22, [x1]                                                 
  (*fs)->max_held_buffers = max_held_buffers;                                             
    40036f18:   b9007834    str w20, [x1, #120]                                           
    40036f1c:   f9005026    str x6, [x1, #160]                                            
  tail->previous = head;                                                                  
    40036f20:   f9005820    str x0, [x1, #176]                                            
  head->next = tail;                                                                      
    40036f24:   91030020    add x0, x1, #0xc0                                             
    40036f28:   f9006025    str x5, [x1, #192]                                            
  tail->previous = head;                                                                  
    40036f2c:   f9006820    str x0, [x1, #208]                                            
#endif                                                                                    
                                                                                          
  /*                                                                                      
   * Open the buffer interface.                                                           
   */                                                                                     
  rc = rtems_rfs_buffer_open (name, *fs);                                                 
    40036f30:   aa1303e0    mov x0, x19                                                   
  head->next = tail;                                                                      
    40036f34:   f9007024    str x4, [x1, #224]                                            
  (*fs)->user = user;                                                                     
    40036f38:   a90f5c22    stp x2, x23, [x1, #240]                                       
  rc = rtems_rfs_buffer_open (name, *fs);                                                 
    40036f3c:   97ffc0dd    bl  400272b0 <rtems_rfs_buffer_open>                          
    40036f40:   2a0003f3    mov w19, w0                                                   
  if (rc > 0)                                                                             
    40036f44:   7100001f    cmp w0, #0x0                                                  
    40036f48:   54002a2c    b.gt    4003748c <rtems_rfs_fs_open+0x5ec>                    <== NEVER TAKEN
              rc, strerror (rc));                                                         
    errno = rc;                                                                           
    return -1;                                                                            
  }                                                                                       
                                                                                          
  rc = rtems_rfs_fs_read_superblock (*fs);                                                
    40036f4c:   f94002b3    ldr x19, [x21]                                                
  rc = rtems_rfs_buffer_handle_request (fs, &handle, 0, true);                            
    40036f50:   910103e1    add x1, sp, #0x40                                             
    40036f54:   52800023    mov w3, #0x1                    // #1                         
    40036f58:   52800002    mov w2, #0x0                    // #0                         
    40036f5c:   aa1303e0    mov x0, x19                                                   
  handle->dirty = false;                                                                  
    40036f60:   390103ff    strb    wzr, [sp, #64]                                        
  handle->bnum  = 0;                                                                      
    40036f64:   b90047ff    str wzr, [sp, #68]                                            
  handle->buffer = NULL;                                                                  
    40036f68:   f90027ff    str xzr, [sp, #72]                                            
    40036f6c:   97ffc019    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
    40036f70:   2a0003f4    mov w20, w0                                                   
  if (rc > 0)                                                                             
    40036f74:   7100001f    cmp w0, #0x0                                                  
    40036f78:   5400178c    b.gt    40037268 <rtems_rfs_fs_open+0x3c8>                    <== NEVER TAKEN
  sb = rtems_rfs_buffer_data (&handle);                                                   
    40036f7c:   f94027e0    ldr x0, [sp, #72]                                             
  if (read_sb (RTEMS_RFS_SB_OFFSET_MAGIC) != RTEMS_RFS_SB_MAGIC)                          
    40036f80:   52840023    mov w3, #0x2001                 // #8193                      
    40036f84:   72a50123    movk    w3, #0x2809, lsl #16                                  
  sb = rtems_rfs_buffer_data (&handle);                                                   
    40036f88:   f9401c14    ldr x20, [x0, #56]                                            
  if (read_sb (RTEMS_RFS_SB_OFFSET_MAGIC) != RTEMS_RFS_SB_MAGIC)                          
    40036f8c:   39400284    ldrb    w4, [x20]                                             
    40036f90:   39400682    ldrb    w2, [x20, #1]                                         
    40036f94:   39400a81    ldrb    w1, [x20, #2]                                         
    40036f98:   39400e80    ldrb    w0, [x20, #3]                                         
    40036f9c:   aa022082    orr x2, x4, x2, lsl #8                                        
    40036fa0:   aa014041    orr x1, x2, x1, lsl #16                                       
    40036fa4:   aa006020    orr x0, x1, x0, lsl #24                                       
    40036fa8:   5ac00800    rev w0, w0                                                    
    40036fac:   6b03001f    cmp w0, w3                                                    
    40036fb0:   54001f81    b.ne    400373a0 <rtems_rfs_fs_open+0x500>  // b.any          <== NEVER TAKEN
  fs->blocks     = read_sb (RTEMS_RFS_SB_OFFSET_BLOCKS);                                  
    40036fb4:   39403283    ldrb    w3, [x20, #12]                                        
    40036fb8:   39403682    ldrb    w2, [x20, #13]                                        
    40036fbc:   39403a81    ldrb    w1, [x20, #14]                                        
    40036fc0:   39403e80    ldrb    w0, [x20, #15]                                        
    40036fc4:   aa022062    orr x2, x3, x2, lsl #8                                        
    40036fc8:   aa014041    orr x1, x2, x1, lsl #16                                       
    40036fcc:   aa006020    orr x0, x1, x0, lsl #24                                       
    40036fd0:   5ac00801    rev w1, w0                                                    
    40036fd4:   f9000661    str x1, [x19, #8]                                             
  uint64_t media_blocks = (uint64_t) rtems_rfs_fs_media_blocks (fs);                      
    40036fd8:   f9401265    ldr x5, [x19, #32]                                            
    40036fdc:   5ac00801    rev w1, w0                                                    
  fs->block_size = read_sb (RTEMS_RFS_SB_OFFSET_BLOCK_SIZE);                              
    40036fe0:   39402282    ldrb    w2, [x20, #8]                                         
    40036fe4:   39402684    ldrb    w4, [x20, #9]                                         
    40036fe8:   39402a83    ldrb    w3, [x20, #10]                                        
    40036fec:   39402e80    ldrb    w0, [x20, #11]                                        
    40036ff0:   aa042044    orr x4, x2, x4, lsl #8                                        
    40036ff4:   aa034083    orr x3, x4, x3, lsl #16                                       
    40036ff8:   aa006060    orr x0, x3, x0, lsl #24                                       
  return media_blocks * media_block_size;                                                 
    40036ffc:   294510a2    ldp w2, w4, [x5, #40]                                         
    40037000:   5ac00803    rev w3, w0                                                    
  fs->block_size = read_sb (RTEMS_RFS_SB_OFFSET_BLOCK_SIZE);                              
    40037004:   5ac00800    rev w0, w0                                                    
    40037008:   f9000a60    str x0, [x19, #16]                                            
  return blocks * block_size;                                                             
    4003700c:   9ba37c21    umull   x1, w1, w3                                            
  return media_blocks * media_block_size;                                                 
    40037010:   9ba47c42    umull   x2, w2, w4                                            
  if (rtems_rfs_fs_size(fs) > rtems_rfs_fs_media_size (fs))                               
    40037014:   eb02003f    cmp x1, x2                                                    
    40037018:   54001f08    b.hi    400373f8 <rtems_rfs_fs_open+0x558>  // b.pmore        <== NEVER TAKEN
  if (read_sb (RTEMS_RFS_SB_OFFSET_INODE_SIZE) != RTEMS_RFS_INODE_SIZE)                   
    4003701c:   39409284    ldrb    w4, [x20, #36]                                        
    40037020:   39409683    ldrb    w3, [x20, #37]                                        
    40037024:   39409a82    ldrb    w2, [x20, #38]                                        
    40037028:   39409e81    ldrb    w1, [x20, #39]                                        
    4003702c:   aa032083    orr x3, x4, x3, lsl #8                                        
    40037030:   aa024062    orr x2, x3, x2, lsl #16                                       
    40037034:   aa016041    orr x1, x2, x1, lsl #24                                       
    40037038:   5ac00821    rev w1, w1                                                    
    4003703c:   7100e03f    cmp w1, #0x38                                                 
    40037040:   540015a1    b.ne    400372f4 <rtems_rfs_fs_open+0x454>  // b.any          <== NEVER TAKEN
  fs->bad_blocks      = read_sb (RTEMS_RFS_SB_OFFSET_BAD_BLOCKS);                         
    40037044:   39404288    ldrb    w8, [x20, #16]                                        
  fs->inodes_per_block = fs->block_size / RTEMS_RFS_INODE_SIZE;                           
    40037048:   d343fc07    lsr x7, x0, #3                                                
    4003704c:   39404685    ldrb    w5, [x20, #17]                                        
    40037050:   d2849266    mov x6, #0x2493                 // #9363                      
    40037054:   f2b24926    movk    x6, #0x9249, lsl #16                                  
    40037058:   39404a82    ldrb    w2, [x20, #18]                                        
    4003705c:   39404e81    ldrb    w1, [x20, #19]                                        
    40037060:   f2c92486    movk    x6, #0x4924, lsl #32                                  
    40037064:   f2e49246    movk    x6, #0x2492, lsl #48                                  
    40037068:   aa052105    orr x5, x8, x5, lsl #8                                        
    4003706c:   aa0240a2    orr x2, x5, x2, lsl #16                                       
    rtems_rfs_fs_block_size (fs) / sizeof (rtems_rfs_inode_block);                        
    40037070:   d342fc03    lsr x3, x0, #2                                                
    40037074:   aa016041    orr x1, x2, x1, lsl #24                                       
  fs->inodes_per_block = fs->block_size / RTEMS_RFS_INODE_SIZE;                           
    40037078:   9bc67ce6    umulh   x6, x7, x6                                            
    4003707c:   5ac00821    rev w1, w1                                                    
  fs->bad_blocks      = read_sb (RTEMS_RFS_SB_OFFSET_BAD_BLOCKS);                         
    40037080:   b9002e61    str w1, [x19, #44]                                            
    fs->blocks_per_block * fs->blocks_per_block * RTEMS_RFS_INODE_BLOCKS;                 
    40037084:   9b037c64    mul x4, x3, x3                                                
    fs->blocks_per_block * RTEMS_RFS_INODE_BLOCKS;                                        
    40037088:   8b030868    add x8, x3, x3, lsl #2                                        
    4003708c:   39405287    ldrb    w7, [x20, #20]                                        
    40037090:   39405685    ldrb    w5, [x20, #21]                                        
    40037094:   39405a82    ldrb    w2, [x20, #22]                                        
    fs->blocks_per_block * fs->blocks_per_block * RTEMS_RFS_INODE_BLOCKS;                 
    40037098:   8b040884    add x4, x4, x4, lsl #2                                        
    4003709c:   39405e81    ldrb    w1, [x20, #23]                                        
    400370a0:   aa0520e5    orr x5, x7, x5, lsl #8                                        
    400370a4:   aa0240a2    orr x2, x5, x2, lsl #16                                       
    400370a8:   aa016041    orr x1, x2, x1, lsl #24                                       
    400370ac:   5ac00821    rev w1, w1                                                    
  fs->max_name_length = read_sb (RTEMS_RFS_SB_OFFSET_MAX_NAME_LENGTH);                    
    400370b0:   b9003261    str w1, [x19, #48]                                            
  fs->group_count     = read_sb (RTEMS_RFS_SB_OFFSET_GROUPS);                             
    400370b4:   39406287    ldrb    w7, [x20, #24]                                        
    400370b8:   39406685    ldrb    w5, [x20, #25]                                        
    400370bc:   39406a82    ldrb    w2, [x20, #26]                                        
    400370c0:   39406e81    ldrb    w1, [x20, #27]                                        
    400370c4:   aa0520e5    orr x5, x7, x5, lsl #8                                        
    400370c8:   aa0240a2    orr x2, x5, x2, lsl #16                                       
    400370cc:   aa016041    orr x1, x2, x1, lsl #24                                       
    400370d0:   5ac00821    rev w1, w1                                                    
    400370d4:   b9004261    str w1, [x19, #64]                                            
  fs->group_blocks    = read_sb (RTEMS_RFS_SB_OFFSET_GROUP_BLOCKS);                       
    400370d8:   39407289    ldrb    w9, [x20, #28]                                        
    400370dc:   39407687    ldrb    w7, [x20, #29]                                        
    400370e0:   39407a85    ldrb    w5, [x20, #30]                                        
    400370e4:   39407e82    ldrb    w2, [x20, #31]                                        
    400370e8:   aa072127    orr x7, x9, x7, lsl #8                                        
    400370ec:   aa0540e5    orr x5, x7, x5, lsl #16                                       
    400370f0:   aa0260a2    orr x2, x5, x2, lsl #24                                       
    400370f4:   5ac00842    rev w2, w2                                                    
    400370f8:   f9002662    str x2, [x19, #72]                                            
  if (fs->group_blocks >                                                                  
    400370fc:   eb000c5f    cmp x2, x0, lsl #3                                            
    40037100:   39408287    ldrb    w7, [x20, #32]                                        
    40037104:   39408685    ldrb    w5, [x20, #33]                                        
    40037108:   39408a82    ldrb    w2, [x20, #34]                                        
    4003710c:   39408e80    ldrb    w0, [x20, #35]                                        
    40037110:   aa0520e5    orr x5, x7, x5, lsl #8                                        
  fs->block_map_singly_blocks =                                                           
    40037114:   a9062263    stp x3, x8, [x19, #96]                                        
    40037118:   aa0240a2    orr x2, x5, x2, lsl #16                                       
    4003711c:   aa006040    orr x0, x2, x0, lsl #24                                       
  fs->block_map_doubly_blocks =                                                           
    40037120:   f9003a64    str x4, [x19, #112]                                           
  if (fs->group_blocks >                                                                  
    40037124:   5ac00802    rev w2, w0                                                    
  fs->group_inodes    = read_sb (RTEMS_RFS_SB_OFFSET_GROUP_INODES);                       
    40037128:   5ac00800    rev w0, w0                                                    
  fs->inodes_per_block = fs->block_size / RTEMS_RFS_INODE_SIZE;                           
    4003712c:   a9051a60    stp x0, x6, [x19, #80]                                        
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40037130:   aa1303e0    mov x0, x19                                                   
  fs->inodes = fs->group_count * fs->group_inodes;                                        
    40037134:   1b017c41    mul w1, w2, w1                                                
    40037138:   b9002a61    str w1, [x19, #40]                                            
    4003713c:   910103e1    add x1, sp, #0x40                                             
  if (fs->group_blocks >                                                                  
    40037140:   54001408    b.hi    400373c0 <rtems_rfs_fs_open+0x520>  // b.pmore        <== NEVER TAKEN
    40037144:   97ffc053    bl  40027290 <rtems_rfs_buffer_handle_release>                
  handle->dirty = false;                                                                  
    40037148:   390103ff    strb    wzr, [sp, #64]                                        
  rc = rtems_rfs_buffer_setblksize (fs, rtems_rfs_fs_block_size (fs));                    
    4003714c:   b9401261    ldr w1, [x19, #16]                                            
    40037150:   aa1303e0    mov x0, x19                                                   
  handle->bnum  = 0;                                                                      
    40037154:   b90047ff    str wzr, [sp, #68]                                            
  handle->buffer = NULL;                                                                  
    40037158:   f90027ff    str xzr, [sp, #72]                                            
    4003715c:   97ffc109    bl  40027580 <rtems_rfs_buffer_setblksize>                    
    40037160:   2a0003f4    mov w20, w0                                                   
  if (rc > 0)                                                                             
    40037164:   7100001f    cmp w0, #0x0                                                  
    40037168:   5400098c    b.gt    40037298 <rtems_rfs_fs_open+0x3f8>                    <== NEVER TAKEN
  fs->groups = calloc (fs->group_count, sizeof (rtems_rfs_group));                        
    4003716c:   b9404274    ldr w20, [x19, #64]                                           
    40037170:   d2801201    mov x1, #0x90                   // #144                       
    40037174:   93407e80    sxtw    x0, w20                                               
    40037178:   97ffed1a    bl  400325e0 <calloc>                                         
    4003717c:   f9001e60    str x0, [x19, #56]                                            
    40037180:   aa0003e4    mov x4, x0                                                    
  if (!fs->groups)                                                                        
    40037184:   b40022e0    cbz x0, 400375e0 <rtems_rfs_fs_open+0x740>                    <== NEVER TAKEN
  for (group = 0; group < fs->group_count; group++)                                       
    40037188:   7100029f    cmp w20, #0x0                                                 
    4003718c:   d2800017    mov x23, #0x0                       // #0                     
    40037190:   52800016    mov w22, #0x0                       // #0                     
    40037194:   540000ec    b.gt    400371b0 <rtems_rfs_fs_open+0x310>                    <== ALWAYS TAKEN
    40037198:   14000060    b   40037318 <rtems_rfs_fs_open+0x478>                        <== NOT EXECUTED
    4003719c:   b9404260    ldr w0, [x19, #64]                                            
    400371a0:   110006d6    add w22, w22, #0x1                                            
    400371a4:   6b0002df    cmp w22, w0                                                   
    400371a8:   54000b8a    b.ge    40037318 <rtems_rfs_fs_open+0x478>  // b.tcont        <== ALWAYS TAKEN
                               &fs->groups[group]);                                       
    400371ac:   f9401e64    ldr x4, [x19, #56]                                            <== NOT EXECUTED
    rc = rtems_rfs_group_open (fs,                                                        
    400371b0:   8b170084    add x4, x4, x23                                               
    400371b4:   a9448e62    ldp x2, x3, [x19, #72]                                        
    400371b8:   aa1303e0    mov x0, x19                                                   
  for (group = 0; group < fs->group_count; group++)                                       
    400371bc:   910242f7    add x23, x23, #0x90                                           
    rc = rtems_rfs_group_open (fs,                                                        
    400371c0:   1b027ec1    mul w1, w22, w2                                               
    400371c4:   11000421    add w1, w1, #0x1                                              
    400371c8:   97ffc4ea    bl  40028570 <rtems_rfs_group_open>                           
    400371cc:   2a0003f4    mov w20, w0                                                   
    if (rc > 0)                                                                           
    400371d0:   7100001f    cmp w0, #0x0                                                  
    400371d4:   54fffe4d    b.le    4003719c <rtems_rfs_fs_open+0x2fc>                    <== ALWAYS TAKEN
      for (g = 0; g < group; g++)                                                         
    400371d8:   340001b6    cbz w22, 4003720c <rtems_rfs_fs_open+0x36c>                   <== NOT EXECUTED
    400371dc:   510006d6    sub w22, w22, #0x1                                            <== NOT EXECUTED
    400371e0:   d2801200    mov x0, #0x90                   // #144                       <== NOT EXECUTED
    400371e4:   d2800017    mov x23, #0x0                       // #0                     <== NOT EXECUTED
    400371e8:   9b0002d6    madd    x22, x22, x0, x0                                      <== NOT EXECUTED
    400371ec:   d503201f    nop                                                           <== NOT EXECUTED
        rtems_rfs_group_close (fs, &fs->groups[g]);                                       
    400371f0:   f9401e61    ldr x1, [x19, #56]                                            <== NOT EXECUTED
    400371f4:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    400371f8:   8b170021    add x1, x1, x23                                               <== NOT EXECUTED
      for (g = 0; g < group; g++)                                                         
    400371fc:   910242f7    add x23, x23, #0x90                                           <== NOT EXECUTED
        rtems_rfs_group_close (fs, &fs->groups[g]);                                       
    40037200:   97ffc574    bl  400287d0 <rtems_rfs_group_close>                          <== NOT EXECUTED
      for (g = 0; g < group; g++)                                                         
    40037204:   eb1602ff    cmp x23, x22                                                  <== NOT EXECUTED
    40037208:   54ffff41    b.ne    400371f0 <rtems_rfs_fs_open+0x350>  // b.any          <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    4003720c:   910103e1    add x1, sp, #0x40                                             <== NOT EXECUTED
    40037210:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    40037214:   97ffc01f    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40037218:   390103ff    strb    wzr, [sp, #64]                                        <== NOT EXECUTED
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                         
    4003721c:   d2800020    mov x0, #0x1                    // #1                         <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    40037220:   b90047ff    str wzr, [sp, #68]                                            <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40037224:   f90027ff    str xzr, [sp, #72]                                            <== NOT EXECUTED
    40037228:   97ffce0a    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    4003722c:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037230:   54000480    b.eq    400372c0 <rtems_rfs_fs_open+0x420>  // b.none         <== NOT EXECUTED
        printf ("rtems-rfs: read-superblock: no memory for group table%d: %s\n",          
    40037234:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    40037238:   94001e79    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    4003723c:   900000a1    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037240:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40037244:   9108c020    add x0, x1, #0x230                                            <== NOT EXECUTED
    40037248:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    4003724c:   97ffac71    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40037250:   1400001c    b   400372c0 <rtems_rfs_fs_open+0x420>                        <== NOT EXECUTED
    printf ("rtems-rfs: open: %s\n", name);                                               
    40037254:   aa1303e1    mov x1, x19                                                   <== NOT EXECUTED
    40037258:   f0000080    adrp    x0, 4004a000 <status_code_text+0x38>                  <== NOT EXECUTED
    4003725c:   913fc000    add x0, x0, #0xff0                                            <== NOT EXECUTED
    40037260:   97ffac6c    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40037264:   17ffff1d    b   40036ed8 <rtems_rfs_fs_open+0x38>                         <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                           
    40037268:   d2800020    mov x0, #0x1                    // #1                         <== NOT EXECUTED
    4003726c:   97ffcdf9    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40037270:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037274:   54000260    b.eq    400372c0 <rtems_rfs_fs_open+0x420>  // b.none         <== NOT EXECUTED
      printf ("rtems-rfs: read-superblock: request failed%d: %s\n",                       
    40037278:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    4003727c:   94001e68    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40037280:   900000a1    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037284:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40037288:   9101a020    add x0, x1, #0x68                                             <== NOT EXECUTED
    4003728c:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40037290:   97ffac60    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40037294:   1400000b    b   400372c0 <rtems_rfs_fs_open+0x420>                        <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40037298:   910103e1    add x1, sp, #0x40                                             <== NOT EXECUTED
    4003729c:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    400372a0:   97ffbffc    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    400372a4:   390103ff    strb    wzr, [sp, #64]                                        <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                           
    400372a8:   d2800020    mov x0, #0x1                    // #1                         <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    400372ac:   b90047ff    str wzr, [sp, #68]                                            <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    400372b0:   f90027ff    str xzr, [sp, #72]                                            <== NOT EXECUTED
    400372b4:   97ffcde7    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400372b8:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400372bc:   54000be1    b.ne    40037438 <rtems_rfs_fs_open+0x598>  // b.any          <== NOT EXECUTED
  if (rc > 0)                                                                             
  {                                                                                       
    rtems_rfs_buffer_close (*fs);                                                         
    400372c0:   f94002a0    ldr x0, [x21]                                                 <== NOT EXECUTED
    400372c4:   97ffc0fb    bl  400276b0 <rtems_rfs_buffer_close>                         <== NOT EXECUTED
    free (*fs);                                                                           
    400372c8:   f94002a0    ldr x0, [x21]                                                 <== NOT EXECUTED
    400372cc:   97ffad39    bl  400227b0 <free>                                           <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                           
    400372d0:   d2800020    mov x0, #0x1                    // #1                         <== NOT EXECUTED
    400372d4:   97ffcddf    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400372d8:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400372dc:   540009e1    b.ne    40037418 <rtems_rfs_fs_open+0x578>  // b.any          <== NOT EXECUTED
      printf ("rtems-rfs: open: reading superblock: %d: %s\n",                            
              rc, strerror (rc));                                                         
    errno = rc;                                                                           
    400372e0:   9400196b    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    400372e4:   aa0003e1    mov x1, x0                                                    <== NOT EXECUTED
    return -1;                                                                            
    400372e8:   12800000    mov w0, #0xffffffff             // #-1                        <== NOT EXECUTED
    errno = rc;                                                                           
    400372ec:   b9000034    str w20, [x1]                                                 <== NOT EXECUTED
    return -1;                                                                            
    400372f0:   14000027    b   4003738c <rtems_rfs_fs_open+0x4ec>                        <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                           
    400372f4:   d2800020    mov x0, #0x1                    // #1                         <== NOT EXECUTED
    400372f8:   97ffcdd6    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400372fc:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037300:   54000ac1    b.ne    40037458 <rtems_rfs_fs_open+0x5b8>  // b.any          <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40037304:   910103e1    add x1, sp, #0x40                                             <== NOT EXECUTED
    40037308:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    return EIO;                                                                           
    4003730c:   528000b4    mov w20, #0x5                       // #5                     <== NOT EXECUTED
    40037310:   97ffbfe0    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  if (rc > 0)                                                                             
    40037314:   17ffffeb    b   400372c0 <rtems_rfs_fs_open+0x420>                        <== NOT EXECUTED
  }                                                                                       
                                                                                          
  rc = rtems_rfs_inode_open (*fs, RTEMS_RFS_ROOT_INO, &inode, true);                      
    40037318:   f94002a0    ldr x0, [x21]                                                 
    4003731c:   910103e2    add x2, sp, #0x40                                             
    40037320:   52800023    mov w3, #0x1                    // #1                         
    40037324:   52800021    mov w1, #0x1                    // #1                         
    40037328:   97ffc682    bl  40028d30 <rtems_rfs_inode_open>                           
    4003732c:   2a0003f3    mov w19, w0                                                   
  if (rc > 0)                                                                             
    40037330:   7100001f    cmp w0, #0x0                                                  
    40037334:   54000e2c    b.gt    400374f8 <rtems_rfs_fs_open+0x658>                    <== NEVER TAKEN
              rc, strerror (rc));                                                         
    errno = rc;                                                                           
    return -1;                                                                            
  }                                                                                       
                                                                                          
  if (((*fs)->flags & RTEMS_RFS_FS_FORCE_OPEN) == 0)                                      
    40037338:   f94002a0    ldr x0, [x21]                                                 
    4003733c:   b9400001    ldr w1, [x0]                                                  
    40037340:   371001a1    tbnz    w1, #2, 40037374 <rtems_rfs_fs_open+0x4d4>            
  return rtems_rfs_read_u16 (&handle->node->mode);                                        
    40037344:   f9402fe2    ldr x2, [sp, #88]                                             
  {                                                                                       
    mode = rtems_rfs_inode_get_mode (&inode);                                             
                                                                                          
    if ((mode == 0xffff) || !RTEMS_RFS_S_ISDIR (mode))                                    
    40037348:   529fffe3    mov w3, #0xffff                 // #65535                     
    4003734c:   39400844    ldrb    w4, [x2, #2]                                          
    40037350:   39400c41    ldrb    w1, [x2, #3]                                          
    40037354:   aa012081    orr x1, x4, x1, lsl #8                                        
    40037358:   5ac00421    rev16   w1, w1                                                
    4003735c:   12003c21    and w1, w1, #0xffff                                           
    40037360:   6b03003f    cmp w1, w3                                                    
    40037364:   54000aa0    b.eq    400374b8 <rtems_rfs_fs_open+0x618>  // b.none         <== NEVER TAKEN
    40037368:   12140c21    and w1, w1, #0xf000                                           
    4003736c:   7140103f    cmp w1, #0x4, lsl #12                                         
    40037370:   54000a41    b.ne    400374b8 <rtems_rfs_fs_open+0x618>  // b.any          <== NEVER TAKEN
      errno = EIO;                                                                        
      return -1;                                                                          
    }                                                                                     
  }                                                                                       
                                                                                          
  rc = rtems_rfs_inode_close (*fs, &inode);                                               
    40037374:   910103e1    add x1, sp, #0x40                                             
    40037378:   97ffc6ea    bl  40028f20 <rtems_rfs_inode_close>                          
    4003737c:   2a0003f3    mov w19, w0                                                   
      printf ("rtems-rfs: open: closing root inode: %d: %s\n", rc, strerror (rc));        
    errno = rc;                                                                           
    return -1;                                                                            
  }                                                                                       
                                                                                          
  return 0;                                                                               
    40037380:   52800000    mov w0, #0x0                    // #0                         
  if (rc > 0)                                                                             
    40037384:   7100027f    cmp w19, #0x0                                                 
    40037388:   54000d8c    b.gt    40037538 <rtems_rfs_fs_open+0x698>                    <== NEVER TAKEN
}                                                                                         
    4003738c:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40037390:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40037394:   f9401bf7    ldr x23, [sp, #48]                                            
    40037398:   a8c87bfd    ldp x29, x30, [sp], #128                                      
    4003739c:   d65f03c0    ret                                                           
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                           
    400373a0:   d2800020    mov x0, #0x1                    // #1                         <== NOT EXECUTED
    400373a4:   97ffcdab    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400373a8:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400373ac:   54fffac0    b.eq    40037304 <rtems_rfs_fs_open+0x464>  // b.none         <== NOT EXECUTED
      printf ("rtems-rfs: read-superblock: invalid superblock, bad magic\n");             
    400373b0:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    400373b4:   91028000    add x0, x0, #0xa0                                             <== NOT EXECUTED
    400373b8:   97ffac3a    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
    400373bc:   17ffffd2    b   40037304 <rtems_rfs_fs_open+0x464>                        <== NOT EXECUTED
    400373c0:   97ffbfb4    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
    return EIO;                                                                           
    400373c4:   528000b4    mov w20, #0x5                       // #5                     <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                           
    400373c8:   d2800020    mov x0, #0x1                    // #1                         <== NOT EXECUTED
  handle->dirty = false;                                                                  
    400373cc:   390103ff    strb    wzr, [sp, #64]                                        <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    400373d0:   b90047ff    str wzr, [sp, #68]                                            <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    400373d4:   f90027ff    str xzr, [sp, #72]                                            <== NOT EXECUTED
    400373d8:   97ffcd9e    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400373dc:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400373e0:   54fff700    b.eq    400372c0 <rtems_rfs_fs_open+0x420>  // b.none         <== NOT EXECUTED
      printf ("rtems-rfs: read-superblock: groups blocks larger than block bits\n");      
    400373e4:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    400373e8:   9105a000    add x0, x0, #0x168                                            <== NOT EXECUTED
    return EIO;                                                                           
    400373ec:   528000b4    mov w20, #0x5                       // #5                     <== NOT EXECUTED
      printf ("rtems-rfs: read-superblock: groups blocks larger than block bits\n");      
    400373f0:   97ffac2c    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
  if (rc > 0)                                                                             
    400373f4:   17ffffb3    b   400372c0 <rtems_rfs_fs_open+0x420>                        <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                           
    400373f8:   d2800020    mov x0, #0x1                    // #1                         <== NOT EXECUTED
    400373fc:   97ffcd95    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40037400:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037404:   54fff800    b.eq    40037304 <rtems_rfs_fs_open+0x464>  // b.none         <== NOT EXECUTED
      printf ("rtems-rfs: read-superblock: invalid superblock block/size count\n");       
    40037408:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    4003740c:   91038000    add x0, x0, #0xe0                                             <== NOT EXECUTED
    40037410:   97ffac24    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40037414:   17ffffbc    b   40037304 <rtems_rfs_fs_open+0x464>                        <== NOT EXECUTED
      printf ("rtems-rfs: open: reading superblock: %d: %s\n",                            
    40037418:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    4003741c:   94001e00    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40037420:   900000a1    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037424:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40037428:   9109c020    add x0, x1, #0x270                                            <== NOT EXECUTED
    4003742c:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40037430:   97ffabf8    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40037434:   17ffffab    b   400372e0 <rtems_rfs_fs_open+0x440>                        <== NOT EXECUTED
      printf ("rtems-rfs: read-superblock: invalid superblock block size%d: %s\n",        
    40037438:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    4003743c:   94001df8    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40037440:   900000a1    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037444:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40037448:   9106c020    add x0, x1, #0x1b0                                            <== NOT EXECUTED
    4003744c:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40037450:   97ffabf0    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40037454:   17ffff9b    b   400372c0 <rtems_rfs_fs_open+0x420>                        <== NOT EXECUTED
      printf ("rtems-rfs: read-superblock: inode size mismatch: fs:%" PRId32 " target:%" PRId32 "\n",
    40037458:   39401285    ldrb    w5, [x20, #4]                                         <== NOT EXECUTED
    4003745c:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037460:   39401684    ldrb    w4, [x20, #5]                                         <== NOT EXECUTED
    40037464:   52800002    mov w2, #0x0                    // #0                         <== NOT EXECUTED
    40037468:   39401a83    ldrb    w3, [x20, #6]                                         <== NOT EXECUTED
    4003746c:   91048000    add x0, x0, #0x120                                            <== NOT EXECUTED
    40037470:   39401e81    ldrb    w1, [x20, #7]                                         <== NOT EXECUTED
    40037474:   aa0420a4    orr x4, x5, x4, lsl #8                                        <== NOT EXECUTED
    40037478:   aa034083    orr x3, x4, x3, lsl #16                                       <== NOT EXECUTED
    4003747c:   aa016061    orr x1, x3, x1, lsl #24                                       <== NOT EXECUTED
    40037480:   5ac00821    rev w1, w1                                                    <== NOT EXECUTED
    40037484:   97ffabe3    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40037488:   17ffff9f    b   40037304 <rtems_rfs_fs_open+0x464>                        <== NOT EXECUTED
    free (*fs);                                                                           
    4003748c:   f94002a0    ldr x0, [x21]                                                 <== NOT EXECUTED
    40037490:   97ffacc8    bl  400227b0 <free>                                           <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                           
    40037494:   d2800020    mov x0, #0x1                    // #1                         <== NOT EXECUTED
    40037498:   97ffcd6e    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    4003749c:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400374a0:   540006c1    b.ne    40037578 <rtems_rfs_fs_open+0x6d8>  // b.any          <== NOT EXECUTED
    errno = rc;                                                                           
    400374a4:   940018fa    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    400374a8:   aa0003e1    mov x1, x0                                                    <== NOT EXECUTED
    return -1;                                                                            
    400374ac:   12800000    mov w0, #0xffffffff             // #-1                        <== NOT EXECUTED
    errno = rc;                                                                           
    400374b0:   b9000033    str w19, [x1]                                                 <== NOT EXECUTED
    return -1;                                                                            
    400374b4:   17ffffb6    b   4003738c <rtems_rfs_fs_open+0x4ec>                        <== NOT EXECUTED
      rtems_rfs_inode_close (*fs, &inode);                                                
    400374b8:   910103e1    add x1, sp, #0x40                                             <== NOT EXECUTED
    400374bc:   97ffc699    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
      rtems_rfs_buffer_close (*fs);                                                       
    400374c0:   f94002a0    ldr x0, [x21]                                                 <== NOT EXECUTED
    400374c4:   97ffc07b    bl  400276b0 <rtems_rfs_buffer_close>                         <== NOT EXECUTED
      free (*fs);                                                                         
    400374c8:   f94002a0    ldr x0, [x21]                                                 <== NOT EXECUTED
    400374cc:   97ffacb9    bl  400227b0 <free>                                           <== NOT EXECUTED
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                         
    400374d0:   d2800020    mov x0, #0x1                    // #1                         <== NOT EXECUTED
    400374d4:   97ffcd5f    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400374d8:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400374dc:   540005e1    b.ne    40037598 <rtems_rfs_fs_open+0x6f8>  // b.any          <== NOT EXECUTED
      errno = EIO;                                                                        
    400374e0:   940018eb    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    400374e4:   aa0003e1    mov x1, x0                                                    <== NOT EXECUTED
    400374e8:   528000a2    mov w2, #0x5                    // #5                         <== NOT EXECUTED
      return -1;                                                                          
    400374ec:   12800000    mov w0, #0xffffffff             // #-1                        <== NOT EXECUTED
      errno = EIO;                                                                        
    400374f0:   b9000022    str w2, [x1]                                                  <== NOT EXECUTED
      return -1;                                                                          
    400374f4:   17ffffa6    b   4003738c <rtems_rfs_fs_open+0x4ec>                        <== NOT EXECUTED
    rtems_rfs_buffer_close (*fs);                                                         
    400374f8:   f94002a0    ldr x0, [x21]                                                 <== NOT EXECUTED
    400374fc:   97ffc06d    bl  400276b0 <rtems_rfs_buffer_close>                         <== NOT EXECUTED
    free (*fs);                                                                           
    40037500:   f94002a0    ldr x0, [x21]                                                 <== NOT EXECUTED
    40037504:   97ffacab    bl  400227b0 <free>                                           <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                           
    40037508:   d2800020    mov x0, #0x1                    // #1                         <== NOT EXECUTED
    4003750c:   97ffcd51    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40037510:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037514:   54fffc80    b.eq    400374a4 <rtems_rfs_fs_open+0x604>  // b.none         <== NOT EXECUTED
      printf ("rtems-rfs: open: reading root inode: %d: %s\n",                            
    40037518:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    4003751c:   94001dc0    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40037520:   900000a1    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037524:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40037528:   910a8020    add x0, x1, #0x2a0                                            <== NOT EXECUTED
    4003752c:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40037530:   97ffabb8    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40037534:   17ffffdc    b   400374a4 <rtems_rfs_fs_open+0x604>                        <== NOT EXECUTED
    rtems_rfs_buffer_close (*fs);                                                         
    40037538:   f94002a0    ldr x0, [x21]                                                 <== NOT EXECUTED
    4003753c:   97ffc05d    bl  400276b0 <rtems_rfs_buffer_close>                         <== NOT EXECUTED
    free (*fs);                                                                           
    40037540:   f94002a0    ldr x0, [x21]                                                 <== NOT EXECUTED
    40037544:   97ffac9b    bl  400227b0 <free>                                           <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                           
    40037548:   d2800020    mov x0, #0x1                    // #1                         <== NOT EXECUTED
    4003754c:   97ffcd41    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40037550:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037554:   54fffa80    b.eq    400374a4 <rtems_rfs_fs_open+0x604>  // b.none         <== NOT EXECUTED
      printf ("rtems-rfs: open: closing root inode: %d: %s\n", rc, strerror (rc));        
    40037558:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    4003755c:   94001db0    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40037560:   900000a1    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037564:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40037568:   910c0020    add x0, x1, #0x300                                            <== NOT EXECUTED
    4003756c:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40037570:   97ffaba8    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40037574:   17ffffcc    b   400374a4 <rtems_rfs_fs_open+0x604>                        <== NOT EXECUTED
      printf ("rtems-rfs: open: buffer open failed: %d: %s\n",                            
    40037578:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    4003757c:   94001da8    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40037580:   900000a1    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037584:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40037588:   9100e020    add x0, x1, #0x38                                             <== NOT EXECUTED
    4003758c:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40037590:   97ffaba0    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40037594:   17ffffc4    b   400374a4 <rtems_rfs_fs_open+0x604>                        <== NOT EXECUTED
        printf ("rtems-rfs: open: invalid root inode mode\n");                            
    40037598:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    4003759c:   910b4000    add x0, x0, #0x2d0                                            <== NOT EXECUTED
    400375a0:   97ffabc0    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
    400375a4:   17ffffcf    b   400374e0 <rtems_rfs_fs_open+0x640>                        <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                           
    400375a8:   d2800020    mov x0, #0x1                    // #1                         <== NOT EXECUTED
    400375ac:   97ffcd29    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400375b0:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400375b4:   540000e1    b.ne    400375d0 <rtems_rfs_fs_open+0x730>  // b.any          <== NOT EXECUTED
    errno = ENOMEM;                                                                       
    400375b8:   940018b5    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    400375bc:   aa0003e1    mov x1, x0                                                    <== NOT EXECUTED
    400375c0:   52800182    mov w2, #0xc                    // #12                        <== NOT EXECUTED
    return -1;                                                                            
    400375c4:   12800000    mov w0, #0xffffffff             // #-1                        <== NOT EXECUTED
    errno = ENOMEM;                                                                       
    400375c8:   b9000022    str w2, [x1]                                                  <== NOT EXECUTED
    return -1;                                                                            
    400375cc:   17ffff70    b   4003738c <rtems_rfs_fs_open+0x4ec>                        <== NOT EXECUTED
      printf ("rtems-rfs: open: no memory for file system data\n");                       
    400375d0:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    400375d4:   91002000    add x0, x0, #0x8                                              <== NOT EXECUTED
    400375d8:   97ffabb2    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
    400375dc:   17fffff7    b   400375b8 <rtems_rfs_fs_open+0x718>                        <== NOT EXECUTED
    400375e0:   910103e1    add x1, sp, #0x40                                             <== NOT EXECUTED
    400375e4:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    400375e8:   97ffbf2a    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    400375ec:   390103ff    strb    wzr, [sp, #64]                                        <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))                                           
    400375f0:   d2800020    mov x0, #0x1                    // #1                         <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    400375f4:   b90047ff    str wzr, [sp, #68]                                            <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    400375f8:   f90027ff    str xzr, [sp, #72]                                            <== NOT EXECUTED
    400375fc:   97ffcd15    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40037600:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037604:   54000061    b.ne    40037610 <rtems_rfs_fs_open+0x770>  // b.any          <== NOT EXECUTED
    return ENOMEM;                                                                        
    40037608:   52800194    mov w20, #0xc                       // #12                    <== NOT EXECUTED
    4003760c:   17ffff2d    b   400372c0 <rtems_rfs_fs_open+0x420>                        <== NOT EXECUTED
      printf ("rtems-rfs: read-superblock: no memory for group table\n");                 
    40037610:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037614:   9107e000    add x0, x0, #0x1f8                                            <== NOT EXECUTED
    return ENOMEM;                                                                        
    40037618:   52800194    mov w20, #0xc                       // #12                    <== NOT EXECUTED
      printf ("rtems-rfs: read-superblock: no memory for group table\n");                 
    4003761c:   97ffaba1    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
  if (rc > 0)                                                                             
    40037620:   17ffff28    b   400372c0 <rtems_rfs_fs_open+0x420>                        <== NOT EXECUTED
    ...                                                                                   
                                                                                          

0000000040036e80 <rtems_rfs_fs_size>: uint64_t rtems_rfs_fs_size (rtems_rfs_file_system* fs) { uint64_t blocks = rtems_rfs_fs_blocks (fs); uint64_t block_size = rtems_rfs_fs_block_size (fs); return blocks * block_size;
    40036e80:   a9408001    ldp x1, x0, [x0, #8]                                          <== NOT EXECUTED
}                                                                                         
    40036e84:   9b007c20    mul x0, x1, x0                                                <== NOT EXECUTED
    40036e88:   d65f03c0    ret                                                           <== NOT EXECUTED
    40036e8c:   00000000    udf #0                                                        
                                                                                          

0000000040028880 <rtems_rfs_group_bitmap_alloc>: int rtems_rfs_group_bitmap_alloc (rtems_rfs_file_system* fs, rtems_rfs_bitmap_bit goal, bool inode, rtems_rfs_bitmap_bit* result) {
    40028880:   a9b87bfd    stp x29, x30, [sp, #-128]!                                    
    40028884:   910003fd    mov x29, sp                                                   
    40028888:   a90153f3    stp x19, x20, [sp, #16]                                       
    4002888c:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40028890:   a90363f7    stp x23, x24, [sp, #48]                                       
    40028894:   aa0003f7    mov x23, x0                                                   
  rtems_rfs_bitmap_bit bit;                                                               
  int                  offset;                                                            
  bool                 updown;                                                            
  int                  direction;                                                         
                                                                                          
  if (inode)                                                                              
    40028898:   72001c40    ands    w0, w2, #0xff                                         
{                                                                                         
    4002889c:   a9046bf9    stp x25, x26, [sp, #64]                                       
    400288a0:   a90573fb    stp x27, x28, [sp, #80]                                       
  if (inode)                                                                              
    400288a4:   b90063e0    str w0, [sp, #96]                                             
{                                                                                         
    400288a8:   f90037e3    str x3, [sp, #104]                                            
  if (inode)                                                                              
    400288ac:   54000900    b.eq    400289cc <rtems_rfs_group_bitmap_alloc+0x14c>  // b.none
  {                                                                                       
    size = fs->group_inodes;                                                              
    400288b0:   f9402afc    ldr x28, [x23, #80]                                           
    goal -= RTEMS_RFS_ROOT_INO;                                                           
    400288b4:   51000421    sub w1, w1, #0x1                                              
     */                                                                                   
    if (goal >= RTEMS_RFS_ROOT_INO)                                                       
        goal -= RTEMS_RFS_ROOT_INO;                                                       
  }                                                                                       
                                                                                          
  group_start = goal / size;                                                              
    400288b8:   93407c21    sxtw    x1, w1                                                
  bit = (rtems_rfs_bitmap_bit) (goal % size);                                             
  offset = 0;                                                                             
  updown = true;                                                                          
  direction = 1;                                                                          
    400288bc:   52800039    mov w25, #0x1                       // #1                     
  updown = true;                                                                          
    400288c0:   2a1903fb    mov w27, w25                                                  
   */                                                                                     
  while (true)                                                                            
  {                                                                                       
    rtems_rfs_bitmap_control* bitmap;                                                     
    int                       group;                                                      
    bool                      allocated = false;                                          
    400288c4:   52800018    mov w24, #0x0                       // #0                     
      updown = false;                                                                     
      continue;                                                                           
    }                                                                                     
                                                                                          
   if (inode)                                                                             
      bitmap = &fs->groups[group].inode_bitmap;                                           
    400288c8:   52801216    mov w22, #0x90                      // #144                   
    bool                      allocated = false;                                          
    400288cc:   3901efff    strb    wzr, [sp, #123]                                       
  group_start = goal / size;                                                              
    400288d0:   9adc0833    udiv    x19, x1, x28                                          
  bit = (rtems_rfs_bitmap_bit) (goal % size);                                             
    400288d4:   9b1c8661    msub    x1, x19, x28, x1                                      
  group_start = goal / size;                                                              
    400288d8:   2a1303fa    mov w26, w19                                                  
  bit = (rtems_rfs_bitmap_bit) (goal % size);                                             
    400288dc:   b9007fe1    str w1, [sp, #124]                                            
    group = group_start + (direction * offset);                                           
    400288e0:   0b180345    add w5, w26, w24                                              
    if ((group < 0) || (group >= fs->group_count))                                        
    400288e4:   37f80493    tbnz    w19, #31, 40028974 <rtems_rfs_group_bitmap_alloc+0xf4>
    400288e8:   b94042e0    ldr w0, [x23, #64]                                            
      bitmap = &fs->groups[group].inode_bitmap;                                           
    400288ec:   9b367e75    smull   x21, w19, w22                                         
    else                                                                                  
      bitmap = &fs->groups[group].block_bitmap;                                           
                                                                                          
    rc = rtems_rfs_bitmap_map_alloc (bitmap, bit, &allocated, &bit);                      
    400288f0:   9101f3e3    add x3, sp, #0x7c                                             
    400288f4:   9101efe2    add x2, sp, #0x7b                                             
    if ((group < 0) || (group >= fs->group_count))                                        
    400288f8:   6b13001f    cmp w0, w19                                                   
    400288fc:   540003cd    b.le    40028974 <rtems_rfs_group_bitmap_alloc+0xf4>          
      bitmap = &fs->groups[group].inode_bitmap;                                           
    40028900:   f9401ee4    ldr x4, [x23, #56]                                            
    40028904:   b90067e5    str w5, [sp, #100]                                            
    40028908:   b94063e0    ldr w0, [sp, #96]                                             
    4002890c:   8b150084    add x4, x4, x21                                               
    rc = rtems_rfs_bitmap_map_alloc (bitmap, bit, &allocated, &bit);                      
    40028910:   b9407fe1    ldr w1, [sp, #124]                                            
      bitmap = &fs->groups[group].inode_bitmap;                                           
    40028914:   7100001f    cmp w0, #0x0                                                  
    40028918:   91014094    add x20, x4, #0x50                                            
    4002891c:   91004084    add x4, x4, #0x10                                             
    40028920:   9a940094    csel    x20, x4, x20, eq  // eq = none                        
    rc = rtems_rfs_bitmap_map_alloc (bitmap, bit, &allocated, &bit);                      
    40028924:   aa1403e0    mov x0, x20                                                   
    40028928:   97fff7fe    bl  40026920 <rtems_rfs_bitmap_map_alloc>                     
    if (rc > 0)                                                                           
    4002892c:   7100001f    cmp w0, #0x0                                                  
    40028930:   5400040c    b.gt    400289b0 <rtems_rfs_group_bitmap_alloc+0x130>         <== NEVER TAKEN
      return rc;                                                                          
                                                                                          
    if (rtems_rfs_fs_release_bitmaps (fs))                                                
    40028934:   b94002e0    ldr w0, [x23]                                                 
    40028938:   b94067e5    ldr w5, [sp, #100]                                            
    4002893c:   36000780    tbz w0, #0, 40028a2c <rtems_rfs_group_bitmap_alloc+0x1ac>     <== ALWAYS TAKEN
      rtems_rfs_bitmap_release_buffer (fs, bitmap);                                       
                                                                                          
    if (allocated)                                                                        
    40028940:   3941efe0    ldrb    w0, [sp, #123]                                        
     * Otherwise we are marching through the groups, so just                              
     * increment the offset.                                                              
     */                                                                                   
    if (updown)                                                                           
    {                                                                                     
      direction = direction > 0 ? -1 : 1;                                                 
    40028944:   7100073f    cmp w25, #0x1                                                 
    if (allocated)                                                                        
    40028948:   350008a0    cbnz    w0, 40028a5c <rtems_rfs_group_bitmap_alloc+0x1dc>     
    if (updown)                                                                           
    4002894c:   340004bb    cbz w27, 400289e0 <rtems_rfs_group_bitmap_alloc+0x160>        <== NEVER TAKEN
      direction = direction > 0 ? -1 : 1;                                                 
    40028950:   540007a1    b.ne    40028a44 <rtems_rfs_group_bitmap_alloc+0x1c4>  // b.any<== NEVER TAKEN
      if ( direction == -1 )                                                              
        offset++;                                                                         
    40028954:   11000718    add w24, w24, #0x1                                            
      direction = direction > 0 ? -1 : 1;                                                 
    40028958:   12800019    mov w25, #0xffffffff                // #-1                    
    4002895c:   4b180353    sub w19, w26, w24                                             
    bool                      allocated = false;                                          
    40028960:   3901efff    strb    wzr, [sp, #123]                                       
      bit = direction > 0 ? 0 : size - 1;                                                 
    40028964:   51000780    sub w0, w28, #0x1                                             
    40028968:   b9007fe0    str w0, [sp, #124]                                            
    group = group_start + (direction * offset);                                           
    4002896c:   0b180345    add w5, w26, w24                                              
    40028970:   17ffffdd    b   400288e4 <rtems_rfs_group_bitmap_alloc+0x64>              
      if (!updown)                                                                        
    40028974:   3400015b    cbz w27, 4002899c <rtems_rfs_group_bitmap_alloc+0x11c>        
    bool                      allocated = false;                                          
    40028978:   3901efff    strb    wzr, [sp, #123]                                       
      direction = direction > 0 ? -1 : 1;                                                 
    4002897c:   7100073f    cmp w25, #0x1                                                 
    40028980:   54000481    b.ne    40028a10 <rtems_rfs_group_bitmap_alloc+0x190>  // b.any<== ALWAYS TAKEN
    group = group_start + (direction * offset);                                           
    40028984:   4b180353    sub w19, w26, w24                                             <== NOT EXECUTED
      direction = direction > 0 ? -1 : 1;                                                 
    40028988:   12800019    mov w25, #0xffffffff                // #-1                    <== NOT EXECUTED
    if (offset)                                                                           
    4002898c:   5280001b    mov w27, #0x0                       // #0                     <== NOT EXECUTED
    40028990:   34fffa98    cbz w24, 400288e0 <rtems_rfs_group_bitmap_alloc+0x60>         <== NOT EXECUTED
      bit = direction > 0 ? 0 : size - 1;                                                 
    40028994:   51000780    sub w0, w28, #0x1                                             <== NOT EXECUTED
    40028998:   17fffff4    b   40028968 <rtems_rfs_group_bitmap_alloc+0xe8>              <== NOT EXECUTED
       offset++;                                                                          
    }                                                                                     
                                                                                          
  }                                                                                       
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_BITMAPS))                                    
    4002899c:   d2a00040    mov x0, #0x20000                // #131072                    
    400289a0:   9400082c    bl  4002aa50 <rtems_rfs_trace>                                
    400289a4:   72001c1f    tst w0, #0xff                                                 
    400289a8:   540002a1    b.ne    400289fc <rtems_rfs_group_bitmap_alloc+0x17c>  // b.any<== NEVER TAKEN
    printf ("rtems-rfs: group-bitmap-alloc: no blocks available\n");                      
                                                                                          
  return ENOSPC;                                                                          
    400289ac:   52800380    mov w0, #0x1c                   // #28                        
}                                                                                         
    400289b0:   a94153f3    ldp x19, x20, [sp, #16]                                       
    400289b4:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    400289b8:   a94363f7    ldp x23, x24, [sp, #48]                                       
    400289bc:   a9446bf9    ldp x25, x26, [sp, #64]                                       
    400289c0:   a94573fb    ldp x27, x28, [sp, #80]                                       
    400289c4:   a8c87bfd    ldp x29, x30, [sp], #128                                      
    400289c8:   d65f03c0    ret                                                           
        goal -= RTEMS_RFS_ROOT_INO;                                                       
    400289cc:   7100003f    cmp w1, #0x0                                                  
    400289d0:   1a9fd7e0    cset    w0, gt                                                
    400289d4:   4b000021    sub w1, w1, w0                                                
    size = fs->group_blocks;                                                              
    400289d8:   f94026fc    ldr x28, [x23, #72]                                           
    if (goal >= RTEMS_RFS_ROOT_INO)                                                       
    400289dc:   17ffffb7    b   400288b8 <rtems_rfs_group_bitmap_alloc+0x38>              
       offset++;                                                                          
    400289e0:   11000718    add w24, w24, #0x1                                            <== NOT EXECUTED
    bool                      allocated = false;                                          
    400289e4:   3901efff    strb    wzr, [sp, #123]                                       <== NOT EXECUTED
    group = group_start + (direction * offset);                                           
    400289e8:   1b196b13    madd    w19, w24, w25, w26                                    <== NOT EXECUTED
      bit = direction > 0 ? 0 : size - 1;                                                 
    400289ec:   54fffbc1    b.ne    40028964 <rtems_rfs_group_bitmap_alloc+0xe4>  // b.any<== NOT EXECUTED
    400289f0:   52800000    mov w0, #0x0                    // #0                         <== NOT EXECUTED
    400289f4:   b9007fe0    str w0, [sp, #124]                                            <== NOT EXECUTED
    400289f8:   17ffffdd    b   4002896c <rtems_rfs_group_bitmap_alloc+0xec>              <== NOT EXECUTED
    printf ("rtems-rfs: group-bitmap-alloc: no blocks available\n");                      
    400289fc:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028a00:   91236000    add x0, x0, #0x8d8                                            <== NOT EXECUTED
    40028a04:   97ffe6a7    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
  return ENOSPC;                                                                          
    40028a08:   52800380    mov w0, #0x1c                   // #28                        <== NOT EXECUTED
    40028a0c:   17ffffe9    b   400289b0 <rtems_rfs_group_bitmap_alloc+0x130>             <== NOT EXECUTED
    group = group_start + (direction * offset);                                           
    40028a10:   0b180353    add w19, w26, w24                                             
    if (offset)                                                                           
    40028a14:   52800039    mov w25, #0x1                       // #1                     
    40028a18:   5280001b    mov w27, #0x0                       // #0                     
      bit = direction > 0 ? 0 : size - 1;                                                 
    40028a1c:   52800000    mov w0, #0x0                    // #0                         
    if (offset)                                                                           
    40028a20:   34fff618    cbz w24, 400288e0 <rtems_rfs_group_bitmap_alloc+0x60>         <== NEVER TAKEN
      bit = direction > 0 ? 0 : size - 1;                                                 
    40028a24:   b9007fe0    str w0, [sp, #124]                                            
    40028a28:   17ffffd1    b   4002896c <rtems_rfs_group_bitmap_alloc+0xec>              
      rtems_rfs_bitmap_release_buffer (fs, bitmap);                                       
    40028a2c:   f9400281    ldr x1, [x20]                                                 
    40028a30:   aa1703e0    mov x0, x23                                                   
    40028a34:   b90067e5    str w5, [sp, #100]                                            
    40028a38:   97fffa16    bl  40027290 <rtems_rfs_buffer_handle_release>                
    40028a3c:   b94067e5    ldr w5, [sp, #100]                                            
    40028a40:   17ffffc0    b   40028940 <rtems_rfs_group_bitmap_alloc+0xc0>              
    bool                      allocated = false;                                          
    40028a44:   3901efff    strb    wzr, [sp, #123]                                       <== NOT EXECUTED
    group = group_start + (direction * offset);                                           
    40028a48:   2a0503f3    mov w19, w5                                                   <== NOT EXECUTED
    if (offset)                                                                           
    40028a4c:   52800039    mov w25, #0x1                       // #1                     <== NOT EXECUTED
    40028a50:   34fff4b8    cbz w24, 400288e4 <rtems_rfs_group_bitmap_alloc+0x64>         <== NOT EXECUTED
      bit = direction > 0 ? 0 : size - 1;                                                 
    40028a54:   52800000    mov w0, #0x0                    // #0                         <== NOT EXECUTED
    40028a58:   17ffffe7    b   400289f4 <rtems_rfs_group_bitmap_alloc+0x174>             <== NOT EXECUTED
      if (inode)                                                                          
    40028a5c:   b94063e0    ldr w0, [sp, #96]                                             
        *result = rtems_rfs_group_inode (fs, group, bit);                                 
    40028a60:   b9407fe1    ldr w1, [sp, #124]                                            
      if (inode)                                                                          
    40028a64:   34000260    cbz w0, 40028ab0 <rtems_rfs_group_bitmap_alloc+0x230>         
        *result = rtems_rfs_group_inode (fs, group, bit);                                 
    40028a68:   f9402ae2    ldr x2, [x23, #80]                                            
    40028a6c:   11000421    add w1, w1, #0x1                                              
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_BITMAPS))                                
    40028a70:   d2a00040    mov x0, #0x20000                // #131072                    
        *result = rtems_rfs_group_inode (fs, group, bit);                                 
    40028a74:   1b020673    madd    w19, w19, w2, w1                                      
    40028a78:   f94037e1    ldr x1, [sp, #104]                                            
    40028a7c:   b9000033    str w19, [x1]                                                 
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_BITMAPS))                                
    40028a80:   940007f4    bl  4002aa50 <rtems_rfs_trace>                                
    40028a84:   72001c1f    tst w0, #0xff                                                 
    40028a88:   54000100    b.eq    40028aa8 <rtems_rfs_group_bitmap_alloc+0x228>  // b.none<== ALWAYS TAKEN
        printf ("rtems-rfs: group-bitmap-alloc: %s allocated: %" PRId32 "\n",             
    40028a8c:   b0000101    adrp    x1, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028a90:   91224021    add x1, x1, #0x890                                            <== NOT EXECUTED
    40028a94:   f94037e0    ldr x0, [sp, #104]                                            <== NOT EXECUTED
    40028a98:   b9400002    ldr w2, [x0]                                                  <== NOT EXECUTED
    40028a9c:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028aa0:   91228000    add x0, x0, #0x8a0                                            <== NOT EXECUTED
    40028aa4:   97ffe65b    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
      return 0;                                                                           
    40028aa8:   52800000    mov w0, #0x0                    // #0                         
    40028aac:   17ffffc1    b   400289b0 <rtems_rfs_group_bitmap_alloc+0x130>             
        *result = rtems_rfs_group_block (&fs->groups[group], bit);                        
    40028ab0:   f9401ee2    ldr x2, [x23, #56]                                            
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_BITMAPS))                                
    40028ab4:   d2a00040    mov x0, #0x20000                // #131072                    
        *result = rtems_rfs_group_block (&fs->groups[group], bit);                        
    40028ab8:   b8756842    ldr w2, [x2, x21]                                             
    40028abc:   0b010041    add w1, w2, w1                                                
    40028ac0:   f94037e2    ldr x2, [sp, #104]                                            
    40028ac4:   b9000041    str w1, [x2]                                                  
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_BITMAPS))                                
    40028ac8:   940007e2    bl  4002aa50 <rtems_rfs_trace>                                
    40028acc:   72001c1f    tst w0, #0xff                                                 
    40028ad0:   54fffec0    b.eq    40028aa8 <rtems_rfs_group_bitmap_alloc+0x228>  // b.none<== ALWAYS TAKEN
        printf ("rtems-rfs: group-bitmap-alloc: %s allocated: %" PRId32 "\n",             
    40028ad4:   b0000101    adrp    x1, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028ad8:   91226021    add x1, x1, #0x898                                            <== NOT EXECUTED
    40028adc:   17ffffee    b   40028a94 <rtems_rfs_group_bitmap_alloc+0x214>             <== NOT EXECUTED
                                                                                          

0000000040028ae0 <rtems_rfs_group_bitmap_free>: int rtems_rfs_group_bitmap_free (rtems_rfs_file_system* fs, bool inode, rtems_rfs_bitmap_bit no) {
    40028ae0:   a9bd7bfd    stp x29, x30, [sp, #-48]!                                     
    40028ae4:   910003fd    mov x29, sp                                                   
    40028ae8:   a90153f3    stp x19, x20, [sp, #16]                                       
    40028aec:   aa0003f4    mov x20, x0                                                   
    40028af0:   2a0203f3    mov w19, w2                                                   
  unsigned int              group;                                                        
  rtems_rfs_bitmap_bit      bit;                                                          
  size_t                    size;                                                         
  int                       rc;                                                           
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_BITMAPS))                                    
    40028af4:   d2a00040    mov x0, #0x20000                // #131072                    
{                                                                                         
    40028af8:   f90013f5    str x21, [sp, #32]                                            
    40028afc:   12001c35    and w21, w1, #0xff                                            
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_BITMAPS))                                    
    40028b00:   940007d4    bl  4002aa50 <rtems_rfs_trace>                                
    40028b04:   72001c1f    tst w0, #0xff                                                 
    40028b08:   54000160    b.eq    40028b34 <rtems_rfs_group_bitmap_free+0x54>  // b.none<== ALWAYS TAKEN
    printf ("rtems-rfs: group-bitmap-free: %s free: %" PRId32 "\n",                       
    40028b0c:   710002bf    cmp w21, #0x0                                                 <== NOT EXECUTED
    40028b10:   b0000101    adrp    x1, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028b14:   91226021    add x1, x1, #0x898                                            <== NOT EXECUTED
    40028b18:   b0000102    adrp    x2, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028b1c:   91224042    add x2, x2, #0x890                                            <== NOT EXECUTED
    40028b20:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028b24:   9a811041    csel    x1, x2, x1, ne  // ne = any                           <== NOT EXECUTED
    40028b28:   91244000    add x0, x0, #0x910                                            <== NOT EXECUTED
    40028b2c:   2a1303e2    mov w2, w19                                                   <== NOT EXECUTED
    40028b30:   97ffe638    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
            inode ? "inode" : "block", no);                                               
                                                                                          
  if (inode)                                                                              
  {                                                                                       
    no -= RTEMS_RFS_ROOT_INO;                                                             
    40028b34:   51000662    sub w2, w19, #0x1                                             
                                                                                          
  group = no / size;                                                                      
  bit = (rtems_rfs_bitmap_bit) (no % size);                                               
                                                                                          
  if (inode)                                                                              
    bitmap = &fs->groups[group].inode_bitmap;                                             
    40028b38:   f9401e80    ldr x0, [x20, #56]                                            
  group = no / size;                                                                      
    40028b3c:   93407c42    sxtw    x2, w2                                                
  if (inode)                                                                              
    40028b40:   34000275    cbz w21, 40028b8c <rtems_rfs_group_bitmap_free+0xac>          
    size = fs->group_inodes;                                                              
    40028b44:   f9402a81    ldr x1, [x20, #80]                                            
    bitmap = &fs->groups[group].inode_bitmap;                                             
    40028b48:   d2801204    mov x4, #0x90                   // #144                       
  bit = (rtems_rfs_bitmap_bit) (no % size);                                               
    40028b4c:   9ac10843    udiv    x3, x2, x1                                            
    bitmap = &fs->groups[group].inode_bitmap;                                             
    40028b50:   92407c73    and x19, x3, #0xffffffff                                      
  bit = (rtems_rfs_bitmap_bit) (no % size);                                               
    40028b54:   1b018861    msub    w1, w3, w1, w2                                        
    bitmap = &fs->groups[group].inode_bitmap;                                             
    40028b58:   9b040273    madd    x19, x19, x4, x0                                      
    40028b5c:   91014273    add x19, x19, #0x50                                           
  else                                                                                    
    bitmap = &fs->groups[group].block_bitmap;                                             
                                                                                          
  rc = rtems_rfs_bitmap_map_clear (bitmap, bit);                                          
    40028b60:   aa1303e0    mov x0, x19                                                   
    40028b64:   97fff6a7    bl  40026600 <rtems_rfs_bitmap_map_clear>                     
                                                                                          
  rtems_rfs_bitmap_release_buffer (fs, bitmap);                                           
    40028b68:   f9400261    ldr x1, [x19]                                                 
  rc = rtems_rfs_bitmap_map_clear (bitmap, bit);                                          
    40028b6c:   2a0003f3    mov w19, w0                                                   
  rtems_rfs_bitmap_release_buffer (fs, bitmap);                                           
    40028b70:   aa1403e0    mov x0, x20                                                   
    40028b74:   97fff9c7    bl  40027290 <rtems_rfs_buffer_handle_release>                
                                                                                          
  return rc;                                                                              
}                                                                                         
    40028b78:   2a1303e0    mov w0, w19                                                   
    40028b7c:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40028b80:   f94013f5    ldr x21, [sp, #32]                                            
    40028b84:   a8c37bfd    ldp x29, x30, [sp], #48                                       
    40028b88:   d65f03c0    ret                                                           
    size = fs->group_blocks;                                                              
    40028b8c:   f9402681    ldr x1, [x20, #72]                                            
    bitmap = &fs->groups[group].block_bitmap;                                             
    40028b90:   d2801204    mov x4, #0x90                   // #144                       
  bit = (rtems_rfs_bitmap_bit) (no % size);                                               
    40028b94:   9ac10843    udiv    x3, x2, x1                                            
    bitmap = &fs->groups[group].block_bitmap;                                             
    40028b98:   92407c73    and x19, x3, #0xffffffff                                      
  bit = (rtems_rfs_bitmap_bit) (no % size);                                               
    40028b9c:   1b018861    msub    w1, w3, w1, w2                                        
    bitmap = &fs->groups[group].block_bitmap;                                             
    40028ba0:   9b040273    madd    x19, x19, x4, x0                                      
    40028ba4:   91004273    add x19, x19, #0x10                                           
    40028ba8:   17ffffee    b   40028b60 <rtems_rfs_group_bitmap_free+0x80>               
    40028bac:   00000000    udf #0                                                        
                                                                                          

00000000400287d0 <rtems_rfs_group_close>: int rtems_rfs_group_close (rtems_rfs_file_system* fs, rtems_rfs_group* group) {
    400287d0:   a9bd7bfd    stp x29, x30, [sp, #-48]!                                     
    400287d4:   910003fd    mov x29, sp                                                   
    400287d8:   a90153f3    stp x19, x20, [sp, #16]                                       
    400287dc:   aa0103f3    mov x19, x1                                                   
    400287e0:   a9025bf5    stp x21, x22, [sp, #32]                                       
    400287e4:   aa0003f5    mov x21, x0                                                   
  int result = 0;                                                                         
  int rc;                                                                                 
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_CLOSE))                                      
    400287e8:   d2a00020    mov x0, #0x10000                // #65536                     
    400287ec:   94000899    bl  4002aa50 <rtems_rfs_trace>                                
    400287f0:   72001c1f    tst w0, #0xff                                                 
    400287f4:   540003c1    b.ne    4002886c <rtems_rfs_group_close+0x9c>  // b.any       <== NEVER TAKEN
   * we cannot OR the errors together so this is a reasonable compromise.                 
   */                                                                                     
  rc = rtems_rfs_bitmap_close (&group->inode_bitmap);                                     
  if (rc > 0)                                                                             
    result = rc;                                                                          
  rc = rtems_rfs_buffer_handle_close (fs, &group->inode_bitmap_buffer);                   
    400287f8:   91020274    add x20, x19, #0x80                                           
  rc = rtems_rfs_bitmap_close (&group->inode_bitmap);                                     
    400287fc:   91014260    add x0, x19, #0x50                                            
    40028800:   97fff8ec    bl  40026bb0 <rtems_rfs_bitmap_close>                         
    40028804:   2a0003f6    mov w22, w0                                                   
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40028808:   aa1403e1    mov x1, x20                                                   
    4002880c:   aa1503e0    mov x0, x21                                                   
    40028810:   97fffaa0    bl  40027290 <rtems_rfs_buffer_handle_release>                
  handle->dirty = false;                                                                  
    40028814:   3902027f    strb    wzr, [x19, #128]                                      
  handle->bnum  = 0;                                                                      
    40028818:   b900867f    str wzr, [x19, #132]                                          
  if (rc > 0)                                                                             
    result = rc;                                                                          
  rc = rtems_rfs_bitmap_close (&group->block_bitmap);                                     
    4002881c:   91004260    add x0, x19, #0x10                                            
  handle->buffer = NULL;                                                                  
    40028820:   f900467f    str xzr, [x19, #136]                                          
    40028824:   97fff8e3    bl  40026bb0 <rtems_rfs_bitmap_close>                         
    40028828:   2a0003f4    mov w20, w0                                                   
  if (rc > 0)                                                                             
    4002882c:   7100001f    cmp w0, #0x0                                                  
    40028830:   5400006c    b.gt    4002883c <rtems_rfs_group_close+0x6c>                 <== NEVER TAKEN
    40028834:   710002df    cmp w22, #0x0                                                 
    40028838:   1a9fa2d4    csel    w20, w22, wzr, ge  // ge = tcont                      
    result = rc;                                                                          
  rc = rtems_rfs_buffer_handle_close (fs, &group->block_bitmap_buffer);                   
    4002883c:   91010276    add x22, x19, #0x40                                           
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40028840:   aa1503e0    mov x0, x21                                                   
    40028844:   aa1603e1    mov x1, x22                                                   
    40028848:   97fffa92    bl  40027290 <rtems_rfs_buffer_handle_release>                
  handle->dirty = false;                                                                  
    4002884c:   3901027f    strb    wzr, [x19, #64]                                       
  if (rc > 0)                                                                             
    result = rc;                                                                          
                                                                                          
  return result;                                                                          
}                                                                                         
    40028850:   2a1403e0    mov w0, w20                                                   
    40028854:   a9425bf5    ldp x21, x22, [sp, #32]                                       
  handle->bnum  = 0;                                                                      
    40028858:   b900467f    str wzr, [x19, #68]                                           
  handle->buffer = NULL;                                                                  
    4002885c:   f900267f    str xzr, [x19, #72]                                           
    40028860:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40028864:   a8c37bfd    ldp x29, x30, [sp], #48                                       
    40028868:   d65f03c0    ret                                                           
    printf ("rtems-rfs: group-close: base=%" PRId32 "\n", group->base);                   
    4002886c:   b9400261    ldr w1, [x19]                                                 <== NOT EXECUTED
    40028870:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028874:   9121a000    add x0, x0, #0x868                                            <== NOT EXECUTED
    40028878:   97ffe6e6    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    4002887c:   17ffffdf    b   400287f8 <rtems_rfs_group_close+0x28>                     <== NOT EXECUTED
                                                                                          

0000000040028570 <rtems_rfs_group_open>: rtems_rfs_group_open (rtems_rfs_file_system* fs, rtems_rfs_buffer_block base, size_t size, size_t inodes, rtems_rfs_group* group) {
    40028570:   a9bb7bfd    stp x29, x30, [sp, #-80]!                                     
    40028574:   910003fd    mov x29, sp                                                   
    40028578:   a9025bf5    stp x21, x22, [sp, #32]                                       
    4002857c:   aa0003f5    mov x21, x0                                                   
    40028580:   2a0103e0    mov w0, w1                                                    
    40028584:   a90153f3    stp x19, x20, [sp, #16]                                       
  int rc;                                                                                 
                                                                                          
  if (base >= rtems_rfs_fs_blocks (fs))                                                   
    40028588:   f94006a5    ldr x5, [x21, #8]                                             
    4002858c:   eb05001f    cmp x0, x5                                                    
    40028590:   54001002    b.cs    40028790 <rtems_rfs_group_open+0x220>  // b.hs, b.nlast<== NEVER TAKEN
      printf ("rtems-rfs: group-open: base outside file system range: %d: %s\n",          
              EIO, strerror (EIO));                                                       
    return EIO;                                                                           
  }                                                                                       
                                                                                          
  if ((base + size) >= rtems_rfs_fs_blocks (fs))                                          
    40028594:   aa0203f4    mov x20, x2                                                   
    40028598:   8b020002    add x2, x0, x2                                                
    size = rtems_rfs_fs_blocks (fs) - base;                                               
    4002859c:   cb0000a1    sub x1, x5, x0                                                
    400285a0:   eb0200bf    cmp x5, x2                                                    
    400285a4:   9a949034    csel    x20, x1, x20, ls  // ls = plast                       
   * Limit the inodes to the same size as the blocks. This is what the                    
   * format does and if this is not done the accounting of inodes does                    
   * not work. If we are so pushed for inodes that this makes a difference                
   * the format configuration needs reviewing.                                            
   */                                                                                     
  if (inodes > size)                                                                      
    400285a8:   aa0003f6    mov x22, x0                                                   
    400285ac:   eb03029f    cmp x20, x3                                                   
    400285b0:   aa0403f3    mov x19, x4                                                   
    inodes = size;                                                                        
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_OPEN))                                       
    400285b4:   d2900000    mov x0, #0x8000                 // #32768                     
    400285b8:   a90363f7    stp x23, x24, [sp, #48]                                       
    400285bc:   9a839298    csel    x24, x20, x3, ls  // ls = plast                       
    400285c0:   f90023f9    str x25, [sp, #64]                                            
    400285c4:   94000923    bl  4002aa50 <rtems_rfs_trace>                                
    400285c8:   72001c1f    tst w0, #0xff                                                 
    400285cc:   54000821    b.ne    400286d0 <rtems_rfs_group_open+0x160>  // b.any       <== NEVER TAKEN
            base, size, inodes);                                                          
                                                                                          
  group->base = base;                                                                     
  group->size = size;                                                                     
                                                                                          
  rc = rtems_rfs_buffer_handle_open (fs, &group->block_bitmap_buffer);                    
    400285d0:   91010277    add x23, x19, #0x40                                           
  group->base = base;                                                                     
    400285d4:   b9000276    str w22, [x19]                                                
  group->size = size;                                                                     
    400285d8:   f9000674    str x20, [x19, #8]                                            
      printf ("rtems-rfs: group-open: could not open block bitmap handle: %d: %s\n",      
              rc, strerror (rc));                                                         
    return rc;                                                                            
  }                                                                                       
                                                                                          
  rc = rtems_rfs_bitmap_open (&group->block_bitmap, fs,                                   
    400285dc:   91004279    add x25, x19, #0x10                                           
  handle->dirty = false;                                                                  
    400285e0:   3901027f    strb    wzr, [x19, #64]                                       
    400285e4:   aa1403e3    mov x3, x20                                                   
  handle->bnum  = 0;                                                                      
    400285e8:   b90006ff    str wzr, [x23, #4]                                            
    400285ec:   2a1603e4    mov w4, w22                                                   
  handle->buffer = NULL;                                                                  
    400285f0:   f90006ff    str xzr, [x23, #8]                                            
    400285f4:   aa1703e2    mov x2, x23                                                   
    400285f8:   aa1903e0    mov x0, x25                                                   
    400285fc:   aa1503e1    mov x1, x21                                                   
    40028600:   97fff954    bl  40026b50 <rtems_rfs_bitmap_open>                          
    40028604:   2a0003f4    mov w20, w0                                                   
                              &group->block_bitmap_buffer, size,                          
                              group->base + RTEMS_RFS_GROUP_BLOCK_BITMAP_BLOCK);          
  if (rc > 0)                                                                             
    40028608:   7100001f    cmp w0, #0x0                                                  
    4002860c:   5400032c    b.gt    40028670 <rtems_rfs_group_open+0x100>                 <== NEVER TAKEN
      printf ("rtems-rfs: group-open: could not open inode bitmap handle: %d: %s\n",      
              rc, strerror (rc));                                                         
    return rc;                                                                            
  }                                                                                       
                                                                                          
  rc = rtems_rfs_bitmap_open (&group->inode_bitmap, fs,                                   
    40028610:   aa1303e0    mov x0, x19                                                   
  handle->dirty = false;                                                                  
    40028614:   3902027f    strb    wzr, [x19, #128]                                      
  rc = rtems_rfs_buffer_handle_open (fs, &group->inode_bitmap_buffer);                    
    40028618:   91020276    add x22, x19, #0x80                                           
  rc = rtems_rfs_bitmap_open (&group->inode_bitmap, fs,                                   
    4002861c:   aa1803e3    mov x3, x24                                                   
    40028620:   aa1603e2    mov x2, x22                                                   
    40028624:   aa1503e1    mov x1, x21                                                   
    40028628:   b8450404    ldr w4, [x0], #80                                             
  handle->bnum  = 0;                                                                      
    4002862c:   b900867f    str wzr, [x19, #132]                                          
  handle->buffer = NULL;                                                                  
    40028630:   f900467f    str xzr, [x19, #136]                                          
    40028634:   11000484    add w4, w4, #0x1                                              
    40028638:   97fff946    bl  40026b50 <rtems_rfs_bitmap_open>                          
    4002863c:   2a0003f4    mov w20, w0                                                   
                              &group->inode_bitmap_buffer, inodes,                        
                              group->base + RTEMS_RFS_GROUP_INODE_BITMAP_BLOCK);          
  if (rc > 0)                                                                             
    40028640:   7100001f    cmp w0, #0x0                                                  
    40028644:   5400054c    b.gt    400286ec <rtems_rfs_group_open+0x17c>                 <== NEVER TAKEN
      printf ("rtems-rfs: group-open: could not open inode bitmap: %d: %s\n",             
              rc, strerror (rc));                                                         
    return rc;                                                                            
  }                                                                                       
                                                                                          
  if (rtems_rfs_fs_release_bitmaps (fs))                                                  
    40028648:   b94002a0    ldr w0, [x21]                                                 
  {                                                                                       
    rtems_rfs_bitmap_release_buffer (fs, &group->block_bitmap);                           
    rtems_rfs_bitmap_release_buffer (fs, &group->inode_bitmap);                           
  }                                                                                       
                                                                                          
  return 0;                                                                               
    4002864c:   52800014    mov w20, #0x0                       // #0                     
  if (rtems_rfs_fs_release_bitmaps (fs))                                                  
    40028650:   36000860    tbz w0, #0, 4002875c <rtems_rfs_group_open+0x1ec>             <== ALWAYS TAKEN
    40028654:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40028658:   f94023f9    ldr x25, [sp, #64]                                            <== NOT EXECUTED
}                                                                                         
    4002865c:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    40028660:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40028664:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40028668:   a8c57bfd    ldp x29, x30, [sp], #80                                       <== NOT EXECUTED
    4002866c:   d65f03c0    ret                                                           <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40028670:   aa1703e1    mov x1, x23                                                   <== NOT EXECUTED
    40028674:   aa1503e0    mov x0, x21                                                   <== NOT EXECUTED
    40028678:   97fffb06    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    4002867c:   3901027f    strb    wzr, [x19, #64]                                       <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    40028680:   b90006ff    str wzr, [x23, #4]                                            <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_OPEN))                                     
    40028684:   d2900000    mov x0, #0x8000                 // #32768                     <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40028688:   f90006ff    str xzr, [x23, #8]                                            <== NOT EXECUTED
    4002868c:   940008f1    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40028690:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40028694:   54fffe00    b.eq    40028654 <rtems_rfs_group_open+0xe4>  // b.none       <== NOT EXECUTED
      printf ("rtems-rfs: group-open: could not open block bitmap: %d: %s\n",             
    40028698:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    4002869c:   94005960    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    400286a0:   b0000101    adrp    x1, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400286a4:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    400286a8:   911fa020    add x0, x1, #0x7e8                                            <== NOT EXECUTED
    400286ac:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    400286b0:   97ffe758    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
}                                                                                         
    400286b4:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    400286b8:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    400286bc:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    400286c0:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    400286c4:   f94023f9    ldr x25, [sp, #64]                                            <== NOT EXECUTED
    400286c8:   a8c57bfd    ldp x29, x30, [sp], #80                                       <== NOT EXECUTED
    400286cc:   d65f03c0    ret                                                           <== NOT EXECUTED
    printf ("rtems-rfs: group-open: base=%" PRId32 ", blocks=%zd inodes=%zd\n",           
    400286d0:   aa1803e3    mov x3, x24                                                   <== NOT EXECUTED
    400286d4:   aa1403e2    mov x2, x20                                                   <== NOT EXECUTED
    400286d8:   2a1603e1    mov w1, w22                                                   <== NOT EXECUTED
    400286dc:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400286e0:   911ec000    add x0, x0, #0x7b0                                            <== NOT EXECUTED
    400286e4:   97ffe74b    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    400286e8:   17ffffba    b   400285d0 <rtems_rfs_group_open+0x60>                      <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    400286ec:   aa1603e1    mov x1, x22                                                   <== NOT EXECUTED
    400286f0:   aa1503e0    mov x0, x21                                                   <== NOT EXECUTED
    400286f4:   97fffae7    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    400286f8:   3902027f    strb    wzr, [x19, #128]                                      <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    400286fc:   b900867f    str wzr, [x19, #132]                                          <== NOT EXECUTED
    rtems_rfs_bitmap_close (&group->block_bitmap);                                        
    40028700:   aa1903e0    mov x0, x25                                                   <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40028704:   f900467f    str xzr, [x19, #136]                                          <== NOT EXECUTED
    40028708:   97fff92a    bl  40026bb0 <rtems_rfs_bitmap_close>                         <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    4002870c:   aa1703e1    mov x1, x23                                                   <== NOT EXECUTED
    40028710:   aa1503e0    mov x0, x21                                                   <== NOT EXECUTED
    40028714:   97fffadf    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40028718:   3901027f    strb    wzr, [x19, #64]                                       <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    4002871c:   b90006ff    str wzr, [x23, #4]                                            <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_OPEN))                                     
    40028720:   d2900000    mov x0, #0x8000                 // #32768                     <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40028724:   f90006ff    str xzr, [x23, #8]                                            <== NOT EXECUTED
    40028728:   940008ca    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    4002872c:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40028730:   54fff920    b.eq    40028654 <rtems_rfs_group_open+0xe4>  // b.none       <== NOT EXECUTED
      printf ("rtems-rfs: group-open: could not open inode bitmap: %d: %s\n",             
    40028734:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    40028738:   94005939    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    4002873c:   b0000101    adrp    x1, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028740:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40028744:   9120a020    add x0, x1, #0x828                                            <== NOT EXECUTED
    40028748:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    4002874c:   97ffe731    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40028750:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40028754:   f94023f9    ldr x25, [sp, #64]                                            <== NOT EXECUTED
    40028758:   17ffffc1    b   4002865c <rtems_rfs_group_open+0xec>                      <== NOT EXECUTED
    rtems_rfs_bitmap_release_buffer (fs, &group->block_bitmap);                           
    4002875c:   f9400a61    ldr x1, [x19, #16]                                            
    40028760:   aa1503e0    mov x0, x21                                                   
    40028764:   97fffacb    bl  40027290 <rtems_rfs_buffer_handle_release>                
    rtems_rfs_bitmap_release_buffer (fs, &group->inode_bitmap);                           
    40028768:   f9402a61    ldr x1, [x19, #80]                                            
    4002876c:   aa1503e0    mov x0, x21                                                   
    40028770:   97fffac8    bl  40027290 <rtems_rfs_buffer_handle_release>                
}                                                                                         
    40028774:   2a1403e0    mov w0, w20                                                   
    40028778:   a94153f3    ldp x19, x20, [sp, #16]                                       
    4002877c:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    rtems_rfs_bitmap_release_buffer (fs, &group->inode_bitmap);                           
    40028780:   a94363f7    ldp x23, x24, [sp, #48]                                       
    40028784:   f94023f9    ldr x25, [sp, #64]                                            
}                                                                                         
    40028788:   a8c57bfd    ldp x29, x30, [sp], #80                                       
    4002878c:   d65f03c0    ret                                                           
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_OPEN))                                     
    40028790:   d2900000    mov x0, #0x8000                 // #32768                     <== NOT EXECUTED
    return EIO;                                                                           
    40028794:   528000b4    mov w20, #0x5                       // #5                     <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_OPEN))                                     
    40028798:   940008ae    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    4002879c:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400287a0:   54fff5e0    b.eq    4002865c <rtems_rfs_group_open+0xec>  // b.none       <== NOT EXECUTED
      printf ("rtems-rfs: group-open: base outside file system range: %d: %s\n",          
    400287a4:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    400287a8:   9400591d    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    400287ac:   b0000101    adrp    x1, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400287b0:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    400287b4:   911dc020    add x0, x1, #0x770                                            <== NOT EXECUTED
    400287b8:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    400287bc:   97ffe715    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    400287c0:   17ffffa7    b   4002865c <rtems_rfs_group_open+0xec>                      <== NOT EXECUTED
    ...                                                                                   
                                                                                          

0000000040028bb0 <rtems_rfs_group_usage>: int g; *blocks = 0; *inodes = 0; for (g = 0; g < fs->group_count; g++)
    40028bb0:   b9404007    ldr w7, [x0, #64]                                             <== NOT EXECUTED
  *blocks = 0;                                                                            
    40028bb4:   f900003f    str xzr, [x1]                                                 <== NOT EXECUTED
  *inodes = 0;                                                                            
    40028bb8:   f900005f    str xzr, [x2]                                                 <== NOT EXECUTED
  for (g = 0; g < fs->group_count; g++)                                                   
    40028bbc:   710000ff    cmp w7, #0x0                                                  <== NOT EXECUTED
    40028bc0:   540003ad    b.le    40028c34 <rtems_rfs_group_usage+0x84>                 <== NOT EXECUTED
  {                                                                                       
    rtems_rfs_group* group = &fs->groups[g];                                              
    40028bc4:   f9401c03    ldr x3, [x0, #56]                                             <== NOT EXECUTED
    40028bc8:   510004e7    sub w7, w7, #0x1                                              <== NOT EXECUTED
    40028bcc:   52801205    mov w5, #0x90                   // #144                       <== NOT EXECUTED
    40028bd0:   9102e064    add x4, x3, #0xb8                                             <== NOT EXECUTED
    40028bd4:   9100a063    add x3, x3, #0x28                                             <== NOT EXECUTED
    40028bd8:   9ba510e7    umaddl  x7, w7, w5, x4                                        <== NOT EXECUTED
    40028bdc:   d503201f    nop                                                           <== NOT EXECUTED
    *blocks +=                                                                            
    40028be0:   a9401466    ldp x6, x5, [x3]                                              <== NOT EXECUTED
    40028be4:   f9400024    ldr x4, [x1]                                                  <== NOT EXECUTED
    40028be8:   8b060084    add x4, x4, x6                                                <== NOT EXECUTED
    40028bec:   cb050084    sub x4, x4, x5                                                <== NOT EXECUTED
    40028bf0:   f9000024    str x4, [x1]                                                  <== NOT EXECUTED
      rtems_rfs_bitmap_map_size(&group->block_bitmap) -                                   
      rtems_rfs_bitmap_map_free (&group->block_bitmap);                                   
    *inodes +=                                                                            
    40028bf4:   a9441466    ldp x6, x5, [x3, #64]                                         <== NOT EXECUTED
  for (g = 0; g < fs->group_count; g++)                                                   
    40028bf8:   91024063    add x3, x3, #0x90                                             <== NOT EXECUTED
    *inodes +=                                                                            
    40028bfc:   f9400044    ldr x4, [x2]                                                  <== NOT EXECUTED
  for (g = 0; g < fs->group_count; g++)                                                   
    40028c00:   eb07007f    cmp x3, x7                                                    <== NOT EXECUTED
    *inodes +=                                                                            
    40028c04:   8b060084    add x4, x4, x6                                                <== NOT EXECUTED
    40028c08:   cb050084    sub x4, x4, x5                                                <== NOT EXECUTED
    40028c0c:   f9000044    str x4, [x2]                                                  <== NOT EXECUTED
  for (g = 0; g < fs->group_count; g++)                                                   
    40028c10:   54fffe81    b.ne    40028be0 <rtems_rfs_group_usage+0x30>  // b.any       <== NOT EXECUTED
      rtems_rfs_bitmap_map_size (&group->inode_bitmap) -                                  
      rtems_rfs_bitmap_map_free (&group->inode_bitmap);                                   
  }                                                                                       
                                                                                          
  if (*blocks > rtems_rfs_fs_blocks (fs))                                                 
    40028c14:   f9400025    ldr x5, [x1]                                                  <== NOT EXECUTED
    40028c18:   f9400403    ldr x3, [x0, #8]                                              <== NOT EXECUTED
    40028c1c:   eb0300bf    cmp x5, x3                                                    <== NOT EXECUTED
    40028c20:   540000e8    b.hi    40028c3c <rtems_rfs_group_usage+0x8c>  // b.pmore     <== NOT EXECUTED
    *blocks = rtems_rfs_fs_blocks (fs);                                                   
  if (*inodes > rtems_rfs_fs_inodes (fs))                                                 
    40028c24:   b9402800    ldr w0, [x0, #40]                                             <== NOT EXECUTED
    40028c28:   eb04001f    cmp x0, x4                                                    <== NOT EXECUTED
    40028c2c:   54000042    b.cs    40028c34 <rtems_rfs_group_usage+0x84>  // b.hs, b.nlast<== NOT EXECUTED
    *inodes = rtems_rfs_fs_inodes (fs);                                                   
    40028c30:   f9000040    str x0, [x2]                                                  <== NOT EXECUTED
                                                                                          
  return 0;                                                                               
}                                                                                         
    40028c34:   52800000    mov w0, #0x0                    // #0                         <== NOT EXECUTED
    40028c38:   d65f03c0    ret                                                           <== NOT EXECUTED
    *blocks = rtems_rfs_fs_blocks (fs);                                                   
    40028c3c:   f9000023    str x3, [x1]                                                  <== NOT EXECUTED
  if (*inodes > rtems_rfs_fs_inodes (fs))                                                 
    40028c40:   f9400044    ldr x4, [x2]                                                  <== NOT EXECUTED
    40028c44:   17fffff8    b   40028c24 <rtems_rfs_group_usage+0x74>                     <== NOT EXECUTED
    ...                                                                                   
                                                                                          

0000000040028f20 <rtems_rfs_inode_close>: {
    40028f20:   a9be7bfd    stp x29, x30, [sp, #-32]!                                     
    40028f24:   910003fd    mov x29, sp                                                   
    40028f28:   a90153f3    stp x19, x20, [sp, #16]                                       
    40028f2c:   aa0003f4    mov x20, x0                                                   
    40028f30:   aa0103f3    mov x19, x1                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_CLOSE))                                      
    40028f34:   d2a00100    mov x0, #0x80000                // #524288                    
    40028f38:   940006c6    bl  4002aa50 <rtems_rfs_trace>                                
    40028f3c:   72001c1f    tst w0, #0xff                                                 
    40028f40:   54000321    b.ne    40028fa4 <rtems_rfs_inode_close+0x84>  // b.any       <== NEVER TAKEN
  rc = rtems_rfs_inode_unload (fs, handle, true);                                         
    40028f44:   aa1403e0    mov x0, x20                                                   
    40028f48:   aa1303e1    mov x1, x19                                                   
    40028f4c:   52800022    mov w2, #0x1                    // #1                         
    40028f50:   97ffffb4    bl  40028e20 <rtems_rfs_inode_unload>                         
    40028f54:   2a0003f4    mov w20, w0                                                   
  if ((rc == 0) && (handle->loads > 0))                                                   
    40028f58:   35000080    cbnz    w0, 40028f68 <rtems_rfs_inode_close+0x48>             <== NEVER TAKEN
    40028f5c:   b9403a60    ldr w0, [x19, #56]                                            
    40028f60:   7100001f    cmp w0, #0x0                                                  
    40028f64:   540000cc    b.gt    40028f7c <rtems_rfs_inode_close+0x5c>                 <== NEVER TAKEN
  handle->ino = 0;                                                                        
    40028f68:   b900127f    str wzr, [x19, #16]                                           
}                                                                                         
    40028f6c:   2a1403e0    mov w0, w20                                                   
    40028f70:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40028f74:   a8c27bfd    ldp x29, x30, [sp], #32                                       
    40028f78:   d65f03c0    ret                                                           
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_CLOSE))                                    
    40028f7c:   d2a00100    mov x0, #0x80000                // #524288                    <== NOT EXECUTED
    rc = EIO;                                                                             
    40028f80:   528000b4    mov w20, #0x5                       // #5                     <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_CLOSE))                                    
    40028f84:   940006b3    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40028f88:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40028f8c:   54fffee0    b.eq    40028f68 <rtems_rfs_inode_close+0x48>  // b.none      <== NOT EXECUTED
      printf ("rtems-rfs: inode-close: bad loads number: %d\n",                           
    40028f90:   b9403a61    ldr w1, [x19, #56]                                            <== NOT EXECUTED
    40028f94:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028f98:   91282000    add x0, x0, #0xa08                                            <== NOT EXECUTED
    40028f9c:   97ffe51d    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40028fa0:   17fffff2    b   40028f68 <rtems_rfs_inode_close+0x48>                     <== NOT EXECUTED
    printf ("rtems-rfs: inode-close: ino: %" PRIu32 "\n", handle->ino);                   
    40028fa4:   b9401261    ldr w1, [x19, #16]                                            <== NOT EXECUTED
    40028fa8:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028fac:   91278000    add x0, x0, #0x9e0                                            <== NOT EXECUTED
    40028fb0:   97ffe518    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40028fb4:   17ffffe4    b   40028f44 <rtems_rfs_inode_close+0x24>                     <== NOT EXECUTED
    ...                                                                                   
                                                                                          

0000000040029310 <rtems_rfs_inode_create>: {
    40029310:   a9b17bfd    stp x29, x30, [sp, #-240]!                                    
    40029314:   910003fd    mov x29, sp                                                   
    40029318:   a9025bf5    stp x21, x22, [sp, #32]                                       
    4002931c:   aa0003f6    mov x22, x0                                                   
    40029320:   12003ca0    and w0, w5, #0xffff                                           
    40029324:   12003c95    and w21, w4, #0xffff                                          
    40029328:   b9006be0    str w0, [sp, #104]                                            
    4002932c:   12003ce0    and w0, w7, #0xffff                                           
    40029330:   a90153f3    stp x19, x20, [sp, #16]                                       
    40029334:   12140eb4    and w20, w21, #0xf000                                         
    40029338:   a90363f7    stp x23, x24, [sp, #48]                                       
    4002933c:   2a0103f7    mov w23, w1                                                   
    40029340:   aa0203f8    mov x24, x2                                                   
    40029344:   a9046bf9    stp x25, x26, [sp, #64]                                       
    40029348:   aa0303f9    mov x25, x3                                                   
    4002934c:   a90573fb    stp x27, x28, [sp, #80]                                       
    40029350:   12003cdc    and w28, w6, #0xffff                                          
    40029354:   b9006fe0    str w0, [sp, #108]                                            
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_CREATE))                                     
    40029358:   d2a00800    mov x0, #0x400000               // #4194304                   
    4002935c:   940005bd    bl  4002aa50 <rtems_rfs_trace>                                
    40029360:   72001c1f    tst w0, #0xff                                                 
    40029364:   54000460    b.eq    400293f0 <rtems_rfs_inode_create+0xe0>  // b.none     <== ALWAYS TAKEN
    if (RTEMS_RFS_S_ISDIR (mode))                                                         
    40029368:   7140129f    cmp w20, #0x4, lsl #12                                        <== NOT EXECUTED
    4002936c:   540001c0    b.eq    400293a4 <rtems_rfs_inode_create+0x94>  // b.none     <== NOT EXECUTED
    else if (RTEMS_RFS_S_ISCHR (mode))                                                    
    40029370:   71400a9f    cmp w20, #0x2, lsl #12                                        <== NOT EXECUTED
    40029374:   54001400    b.eq    400295f4 <rtems_rfs_inode_create+0x2e4>  // b.none    <== NOT EXECUTED
    else if (RTEMS_RFS_S_ISBLK (mode))                                                    
    40029378:   71401a9f    cmp w20, #0x6, lsl #12                                        <== NOT EXECUTED
    4002937c:   54000f00    b.eq    4002955c <rtems_rfs_inode_create+0x24c>  // b.none    <== NOT EXECUTED
    else if (RTEMS_RFS_S_ISREG (mode))                                                    
    40029380:   7140229f    cmp w20, #0x8, lsl #12                                        <== NOT EXECUTED
    40029384:   540013e0    b.eq    40029600 <rtems_rfs_inode_create+0x2f0>  // b.none    <== NOT EXECUTED
    const char* type = "unknown";                                                         
    40029388:   71402a9f    cmp w20, #0xa, lsl #12                                        <== NOT EXECUTED
    4002938c:   90000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40029390:   912a2000    add x0, x0, #0xa88                                            <== NOT EXECUTED
    40029394:   9000011a    adrp    x26, 40049000 <IMFS_node_control_sym_link+0x640>      <== NOT EXECUTED
    40029398:   912a035a    add x26, x26, #0xa80                                          <== NOT EXECUTED
    4002939c:   9a80035a    csel    x26, x26, x0, eq  // eq = none                        <== NOT EXECUTED
    400293a0:   14000003    b   400293ac <rtems_rfs_inode_create+0x9c>                    <== NOT EXECUTED
      type = "dir";                                                                       
    400293a4:   9000011a    adrp    x26, 40049000 <IMFS_node_control_sym_link+0x640>      <== NOT EXECUTED
    400293a8:   9129a35a    add x26, x26, #0xa68                                          <== NOT EXECUTED
    printf("rtems-rfs: inode-create: parent:%" PRIu32 " name:", parent);                  
    400293ac:   2a1703e1    mov w1, w23                                                   <== NOT EXECUTED
    400293b0:   90000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400293b4:   aa1803fb    mov x27, x24                                                  <== NOT EXECUTED
    400293b8:   912a4000    add x0, x0, #0xa90                                            <== NOT EXECUTED
    400293bc:   8b180333    add x19, x25, x24                                             <== NOT EXECUTED
    400293c0:   97ffe414    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    for (c = 0; c < length; c++)                                                          
    400293c4:   b40000b9    cbz x25, 400293d8 <rtems_rfs_inode_create+0xc8>               <== NOT EXECUTED
      printf ("%c", name[c]);                                                             
    400293c8:   38401760    ldrb    w0, [x27], #1                                         <== NOT EXECUTED
    400293cc:   9400530d    bl  4003e000 <putchar>                                        <== NOT EXECUTED
    for (c = 0; c < length; c++)                                                          
    400293d0:   eb1b027f    cmp x19, x27                                                  <== NOT EXECUTED
    400293d4:   54ffffa1    b.ne    400293c8 <rtems_rfs_inode_create+0xb8>  // b.any      <== NOT EXECUTED
    printf (" type:%s mode:%04x (%03o)\n", type, mode, mode & ((1 << 10) - 1));           
    400293d8:   90000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    400293dc:   aa1a03e1    mov x1, x26                                                   <== NOT EXECUTED
    400293e0:   120026a3    and w3, w21, #0x3ff                                           <== NOT EXECUTED
    400293e4:   912b0000    add x0, x0, #0xac0                                            <== NOT EXECUTED
    400293e8:   2a1503e2    mov w2, w21                                                   <== NOT EXECUTED
    400293ec:   97ffe409    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  switch (mode & RTEMS_RFS_S_IFMT)                                                        
    400293f0:   71401a9f    cmp w20, #0x6, lsl #12                                        
    400293f4:   54000280    b.eq    40029444 <rtems_rfs_inode_create+0x134>  // b.none    <== NEVER TAKEN
    400293f8:   540001c9    b.ls    40029430 <rtems_rfs_inode_create+0x120>  // b.plast   
    400293fc:   1285ffe0    mov w0, #0xffffd000             // #-12288                    
    40029400:   0a0002a0    and w0, w21, w0                                               
    40029404:   7140201f    cmp w0, #0x8, lsl #12                                         
    40029408:   528002d3    mov w19, #0x16                      // #22                    
    4002940c:   540001c0    b.eq    40029444 <rtems_rfs_inode_create+0x134>  // b.none    <== ALWAYS TAKEN
}                                                                                         
    40029410:   2a1303e0    mov w0, w19                                                   
    40029414:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40029418:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    4002941c:   a94363f7    ldp x23, x24, [sp, #48]                                       
    40029420:   a9446bf9    ldp x25, x26, [sp, #64]                                       
    40029424:   a94573fb    ldp x27, x28, [sp, #80]                                       
    40029428:   a8cf7bfd    ldp x29, x30, [sp], #240                                      
    4002942c:   d65f03c0    ret                                                           
  switch (mode & RTEMS_RFS_S_IFMT)                                                        
    40029430:   51400a80    sub w0, w20, #0x2, lsl #12                                    
    40029434:   529a0001    mov w1, #0xd000                 // #53248                     
    40029438:   528002d3    mov w19, #0x16                      // #22                    
    4002943c:   6a01001f    tst w0, w1                                                    
    40029440:   54fffe81    b.ne    40029410 <rtems_rfs_inode_create+0x100>  // b.any     <== NEVER TAKEN
  rc = rtems_rfs_group_bitmap_alloc (fs, goal, true, &bit);                               
    40029444:   2a1703e1    mov w1, w23                                                   
    40029448:   52800022    mov w2, #0x1                    // #1                         
    4002944c:   9102c3e3    add x3, sp, #0xb0                                             
    40029450:   aa1603e0    mov x0, x22                                                   
    40029454:   97fffd0b    bl  40028880 <rtems_rfs_group_bitmap_alloc>                   
    40029458:   2a0003f3    mov w19, w0                                                   
  *ino = bit;                                                                             
    4002945c:   f9407be2    ldr x2, [sp, #240]                                            
  if (rc > 0)                                                                             
    40029460:   7100001f    cmp w0, #0x0                                                  
  *ino = bit;                                                                             
    40029464:   b940b3e1    ldr w1, [sp, #176]                                            
    40029468:   b9000041    str w1, [x2]                                                  
  if (rc > 0)                                                                             
    4002946c:   54fffd2c    b.gt    40029410 <rtems_rfs_inode_create+0x100>               
  rc = rtems_rfs_inode_open (fs, *ino, &inode, true);                                     
    40029470:   9102c3e2    add x2, sp, #0xb0                                             
    40029474:   aa1603e0    mov x0, x22                                                   
    40029478:   52800023    mov w3, #0x1                    // #1                         
    4002947c:   97fffe2d    bl  40028d30 <rtems_rfs_inode_open>                           
    40029480:   2a0003f3    mov w19, w0                                                   
  if (rc > 0)                                                                             
    40029484:   7100001f    cmp w0, #0x0                                                  
    40029488:   540009cc    b.gt    400295c0 <rtems_rfs_inode_create+0x2b0>               <== NEVER TAKEN
  rc = rtems_rfs_inode_initialise (&inode, links, mode, uid, gid);                        
    4002948c:   7940dbe4    ldrh    w4, [sp, #108]                                        
    40029490:   2a1c03e3    mov w3, w28                                                   
    40029494:   7940d3e1    ldrh    w1, [sp, #104]                                        
    40029498:   2a1503e2    mov w2, w21                                                   
    4002949c:   9102c3e0    add x0, sp, #0xb0                                             
    400294a0:   97ffff50    bl  400291e0 <rtems_rfs_inode_initialise>                     
    400294a4:   2a0003f3    mov w19, w0                                                   
  if (rc > 0)                                                                             
    400294a8:   7100001f    cmp w0, #0x0                                                  
    400294ac:   5400084c    b.gt    400295b4 <rtems_rfs_inode_create+0x2a4>               <== NEVER TAKEN
  if (RTEMS_RFS_S_ISDIR (mode))                                                           
    400294b0:   7140129f    cmp w20, #0x4, lsl #12                                        
    400294b4:   540005a0    b.eq    40029568 <rtems_rfs_inode_create+0x258>  // b.none    
  rc = rtems_rfs_inode_open (fs, parent, &parent_inode, true);                            
    400294b8:   2a1703e1    mov w1, w23                                                   
    400294bc:   9101c3e2    add x2, sp, #0x70                                             
    400294c0:   aa1603e0    mov x0, x22                                                   
    400294c4:   52800023    mov w3, #0x1                    // #1                         
    400294c8:   97fffe1a    bl  40028d30 <rtems_rfs_inode_open>                           
    400294cc:   2a0003f3    mov w19, w0                                                   
  if (rc > 0)                                                                             
    400294d0:   7100001f    cmp w0, #0x0                                                  
    400294d4:   5400062c    b.gt    40029598 <rtems_rfs_inode_create+0x288>               <== NEVER TAKEN
  rc = rtems_rfs_dir_add_entry (fs, &parent_inode, name, length, *ino);                   
    400294d8:   f9407be0    ldr x0, [sp, #240]                                            
    400294dc:   aa1903e3    mov x3, x25                                                   
    400294e0:   aa1803e2    mov x2, x24                                                   
    400294e4:   9101c3e1    add x1, sp, #0x70                                             
    400294e8:   b9400004    ldr w4, [x0]                                                  
    400294ec:   aa1603e0    mov x0, x22                                                   
    400294f0:   94002e9c    bl  40034f60 <rtems_rfs_dir_add_entry>                        
    400294f4:   2a0003f3    mov w19, w0                                                   
  if (rc > 0)                                                                             
    400294f8:   7100001f    cmp w0, #0x0                                                  
    400294fc:   5400088c    b.gt    4002960c <rtems_rfs_inode_create+0x2fc>               <== NEVER TAKEN
  if (RTEMS_RFS_S_ISDIR (mode))                                                           
    40029500:   7140129f    cmp w20, #0x4, lsl #12                                        
    40029504:   54000980    b.eq    40029634 <rtems_rfs_inode_create+0x324>  // b.none    
  rc = rtems_rfs_inode_time_stamp_now (&parent_inode, true, true);                        
    40029508:   52800022    mov w2, #0x1                    // #1                         
    4002950c:   9101c3e0    add x0, sp, #0x70                                             
    40029510:   2a0203e1    mov w1, w2                                                    
    40029514:   97fffefb    bl  40029100 <rtems_rfs_inode_time_stamp_now>                 
    40029518:   2a0003f3    mov w19, w0                                                   
  if (rc > 0)                                                                             
    4002951c:   7100001f    cmp w0, #0x0                                                  
    40029520:   540003cc    b.gt    40029598 <rtems_rfs_inode_create+0x288>               <== NEVER TAKEN
  rc = rtems_rfs_inode_close (fs, &parent_inode);                                         
    40029524:   9101c3e1    add x1, sp, #0x70                                             
    40029528:   aa1603e0    mov x0, x22                                                   
    4002952c:   97fffe7d    bl  40028f20 <rtems_rfs_inode_close>                          
    40029530:   2a0003f3    mov w19, w0                                                   
    rtems_rfs_inode_delete (fs, &inode);                                                  
    40029534:   9102c3e1    add x1, sp, #0xb0                                             
    40029538:   aa1603e0    mov x0, x22                                                   
  if (rc > 0)                                                                             
    4002953c:   7100027f    cmp w19, #0x0                                                 
    40029540:   54000b0c    b.gt    400296a0 <rtems_rfs_inode_create+0x390>               <== NEVER TAKEN
  rc = rtems_rfs_inode_close (fs, &inode);                                                
    40029544:   97fffe77    bl  40028f20 <rtems_rfs_inode_close>                          
    40029548:   2a0003f3    mov w19, w0                                                   
  if (rc > 0)                                                                             
    4002954c:   7100001f    cmp w0, #0x0                                                  
    40029550:   5400038c    b.gt    400295c0 <rtems_rfs_inode_create+0x2b0>               <== NEVER TAKEN
  return 0;                                                                               
    40029554:   52800013    mov w19, #0x0                       // #0                     
    40029558:   17ffffae    b   40029410 <rtems_rfs_inode_create+0x100>                   
      type = "block";                                                                     
    4002955c:   9000011a    adrp    x26, 40049000 <IMFS_node_control_sym_link+0x640>      <== NOT EXECUTED
    40029560:   9122635a    add x26, x26, #0x898                                          <== NOT EXECUTED
    40029564:   17ffff92    b   400293ac <rtems_rfs_inode_create+0x9c>                    <== NOT EXECUTED
    rc = rtems_rfs_dir_add_entry (fs, &inode, ".", 1, *ino);                              
    40029568:   f9407be0    ldr x0, [sp, #240]                                            
    4002956c:   9102c3e1    add x1, sp, #0xb0                                             
    40029570:   f00000e2    adrp    x2, 40048000 <_Scheduler_Table+0x60>                  
    40029574:   d2800023    mov x3, #0x1                    // #1                         
    40029578:   910a8042    add x2, x2, #0x2a0                                            
    4002957c:   b9400004    ldr w4, [x0]                                                  
    40029580:   aa1603e0    mov x0, x22                                                   
    40029584:   94002e77    bl  40034f60 <rtems_rfs_dir_add_entry>                        
    40029588:   2a0003f3    mov w19, w0                                                   
    if (rc == 0)                                                                          
    4002958c:   34000780    cbz w0, 4002967c <rtems_rfs_inode_create+0x36c>               <== ALWAYS TAKEN
    if (rc > 0)                                                                           
    40029590:   7100027f    cmp w19, #0x0                                                 
    40029594:   54fff92d    b.le    400294b8 <rtems_rfs_inode_create+0x1a8>               <== ALWAYS TAKEN
    rtems_rfs_inode_delete (fs, &inode);                                                  
    40029598:   9102c3e1    add x1, sp, #0xb0                                             <== NOT EXECUTED
    4002959c:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    400295a0:   97fffe88    bl  40028fc0 <rtems_rfs_inode_delete>                         <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &inode);                                                   
    400295a4:   9102c3e1    add x1, sp, #0xb0                                             <== NOT EXECUTED
    400295a8:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    400295ac:   97fffe5d    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
    return rc;                                                                            
    400295b0:   17ffff98    b   40029410 <rtems_rfs_inode_create+0x100>                   <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &inode);                                                   
    400295b4:   9102c3e1    add x1, sp, #0xb0                                             <== NOT EXECUTED
    400295b8:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    400295bc:   97fffe59    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
  return rtems_rfs_group_bitmap_free (fs, true, bit);                                     
    400295c0:   f9407be0    ldr x0, [sp, #240]                                            <== NOT EXECUTED
    400295c4:   52800021    mov w1, #0x1                    // #1                         <== NOT EXECUTED
    400295c8:   b9400002    ldr w2, [x0]                                                  <== NOT EXECUTED
    400295cc:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    400295d0:   97fffd44    bl  40028ae0 <rtems_rfs_group_bitmap_free>                    <== NOT EXECUTED
}                                                                                         
    400295d4:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    400295d8:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    400295dc:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    400295e0:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    400295e4:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    400295e8:   a94573fb    ldp x27, x28, [sp, #80]                                       <== NOT EXECUTED
    400295ec:   a8cf7bfd    ldp x29, x30, [sp], #240                                      <== NOT EXECUTED
    400295f0:   d65f03c0    ret                                                           <== NOT EXECUTED
      type = "char";                                                                      
    400295f4:   9000011a    adrp    x26, 40049000 <IMFS_node_control_sym_link+0x640>      <== NOT EXECUTED
    400295f8:   9129e35a    add x26, x26, #0xa78                                          <== NOT EXECUTED
    400295fc:   17ffff6c    b   400293ac <rtems_rfs_inode_create+0x9c>                    <== NOT EXECUTED
      type = "file";                                                                      
    40029600:   9000011a    adrp    x26, 40049000 <IMFS_node_control_sym_link+0x640>      <== NOT EXECUTED
    40029604:   9129c35a    add x26, x26, #0xa70                                          <== NOT EXECUTED
    40029608:   17ffff69    b   400293ac <rtems_rfs_inode_create+0x9c>                    <== NOT EXECUTED
    rtems_rfs_inode_delete (fs, &inode);                                                  
    4002960c:   9102c3e1    add x1, sp, #0xb0                                             <== NOT EXECUTED
    40029610:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    40029614:   97fffe6b    bl  40028fc0 <rtems_rfs_inode_delete>                         <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &inode);                                                   
    40029618:   9102c3e1    add x1, sp, #0xb0                                             <== NOT EXECUTED
    4002961c:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    40029620:   97fffe40    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &parent_inode);                                            
    40029624:   9101c3e1    add x1, sp, #0x70                                             <== NOT EXECUTED
    40029628:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    4002962c:   97fffe3d    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
    return rc;                                                                            
    40029630:   17ffff78    b   40029410 <rtems_rfs_inode_create+0x100>                   <== NOT EXECUTED
  links = rtems_rfs_read_u16 (&handle->node->links);                                      
    40029634:   f94047e1    ldr x1, [sp, #136]                                            
  if (links == 0xffff)                                                                    
    40029638:   529fffe2    mov w2, #0xffff                 // #65535                     
    4002963c:   39400023    ldrb    w3, [x1]                                              
    40029640:   39400420    ldrb    w0, [x1, #1]                                          
    40029644:   aa002060    orr x0, x3, x0, lsl #8                                        
    40029648:   5ac00400    rev16   w0, w0                                                
    4002964c:   12003c00    and w0, w0, #0xffff                                           
    40029650:   6b02001f    cmp w0, w2                                                    
    40029654:   54000300    b.eq    400296b4 <rtems_rfs_inode_create+0x3a4>  // b.none    <== NEVER TAKEN
    rtems_rfs_inode_set_links (&parent_inode,                                             
    40029658:   11000400    add w0, w0, #0x1                                              
  rtems_rfs_write_u16 (&handle->node->links, links);                                      
    4002965c:   12001c02    and w2, w0, #0xff                                             
    40029660:   d3483c00    ubfx    x0, x0, #8, #8                                        
    40029664:   39000020    strb    w0, [x1]                                              
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40029668:   52800020    mov w0, #0x1                    // #1                         
  rtems_rfs_write_u16 (&handle->node->links, links);                                      
    4002966c:   f94047e1    ldr x1, [sp, #136]                                            
    40029670:   39000422    strb    w2, [x1, #1]                                          
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40029674:   390243e0    strb    w0, [sp, #144]                                        
}                                                                                         
    40029678:   17ffffa4    b   40029508 <rtems_rfs_inode_create+0x1f8>                   
      rc = rtems_rfs_dir_add_entry (fs, &inode, "..", 2, parent);                         
    4002967c:   2a1703e4    mov w4, w23                                                   
    40029680:   9102c3e1    add x1, sp, #0xb0                                             
    40029684:   aa1603e0    mov x0, x22                                                   
    40029688:   90000102    adrp    x2, 40049000 <IMFS_node_control_sym_link+0x640>       
    4002968c:   d2800043    mov x3, #0x2                    // #2                         
    40029690:   912b8042    add x2, x2, #0xae0                                            
    40029694:   94002e33    bl  40034f60 <rtems_rfs_dir_add_entry>                        
    40029698:   2a0003f3    mov w19, w0                                                   
    4002969c:   17ffffbd    b   40029590 <rtems_rfs_inode_create+0x280>                   
    rtems_rfs_inode_delete (fs, &inode);                                                  
    400296a0:   97fffe48    bl  40028fc0 <rtems_rfs_inode_delete>                         <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &inode);                                                   
    400296a4:   9102c3e1    add x1, sp, #0xb0                                             <== NOT EXECUTED
    400296a8:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    400296ac:   97fffe1d    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
    return rc;                                                                            
    400296b0:   17ffff58    b   40029410 <rtems_rfs_inode_create+0x100>                   <== NOT EXECUTED
    400296b4:   52800022    mov w2, #0x1                    // #1                         <== NOT EXECUTED
    400296b8:   52800000    mov w0, #0x0                    // #0                         <== NOT EXECUTED
    400296bc:   17ffffea    b   40029664 <rtems_rfs_inode_create+0x354>                   <== NOT EXECUTED
                                                                                          

0000000040028fc0 <rtems_rfs_inode_delete>: } int rtems_rfs_inode_delete (rtems_rfs_file_system* fs, rtems_rfs_inode_handle* handle) {
    40028fc0:   a9b67bfd    stp x29, x30, [sp, #-160]!                                    
    40028fc4:   910003fd    mov x29, sp                                                   
    40028fc8:   a90153f3    stp x19, x20, [sp, #16]                                       
    40028fcc:   aa0103f3    mov x19, x1                                                   
    40028fd0:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40028fd4:   aa0003f5    mov x21, x0                                                   
  int rc = 0;                                                                             
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_DELETE))                                     
    40028fd8:   d2a01000    mov x0, #0x800000               // #8388608                   
    40028fdc:   9400069d    bl  4002aa50 <rtems_rfs_trace>                                
    40028fe0:   72001c1f    tst w0, #0xff                                                 
    40028fe4:   54000180    b.eq    40029014 <rtems_rfs_inode_delete+0x54>  // b.none     <== ALWAYS TAKEN
    printf("rtems-rfs: inode-delete: ino:%" PRIu32 " loaded:%s\n",                        
    40028fe8:   f9400e60    ldr x0, [x19, #24]                                            <== NOT EXECUTED
    40028fec:   b0000103    adrp    x3, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028ff0:   91250063    add x3, x3, #0x940                                            <== NOT EXECUTED
    40028ff4:   b9401261    ldr w1, [x19, #16]                                            <== NOT EXECUTED
    40028ff8:   f100001f    cmp x0, #0x0                                                  <== NOT EXECUTED
    40028ffc:   b0000102    adrp    x2, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40029000:   91252042    add x2, x2, #0x948                                            <== NOT EXECUTED
    40029004:   90000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40029008:   9a821062    csel    x2, x3, x2, ne  // ne = any                           <== NOT EXECUTED
    4002900c:   9128e000    add x0, x0, #0xa38                                            <== NOT EXECUTED
    40029010:   97ffe500    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
           rtems_rfs_inode_ino (handle),                                                  
           rtems_rfs_inode_is_loaded (handle) ? "yes" : "no");                            
                                                                                          
  if (rtems_rfs_inode_is_loaded (handle))                                                 
    40029014:   f9400e60    ldr x0, [x19, #24]                                            
  int rc = 0;                                                                             
    40029018:   52800014    mov w20, #0x0                       // #0                     
  if (rtems_rfs_inode_is_loaded (handle))                                                 
    4002901c:   b4000100    cbz x0, 4002903c <rtems_rfs_inode_delete+0x7c>                <== NEVER TAKEN
  return rtems_rfs_group_bitmap_free (fs, true, bit);                                     
    40029020:   b9401262    ldr w2, [x19, #16]                                            
    40029024:   aa1503e0    mov x0, x21                                                   
    40029028:   52800021    mov w1, #0x1                    // #1                         
    4002902c:   97fffead    bl  40028ae0 <rtems_rfs_group_bitmap_free>                    
    40029030:   2a0003f4    mov w20, w0                                                   
                                                                                          
    /*                                                                                    
     * Free the ino number.                                                               
     */                                                                                   
    rc = rtems_rfs_inode_free (fs, handle->ino);                                          
    if (rc > 0)                                                                           
    40029034:   7100001f    cmp w0, #0x0                                                  
    40029038:   540000cd    b.le    40029050 <rtems_rfs_inode_delete+0x90>                <== ALWAYS TAKEN
      if (rrc > 0)                                                                        
        rc = rrc;                                                                         
    }                                                                                     
  }                                                                                       
  return rc;                                                                              
}                                                                                         
    4002903c:   2a1403e0    mov w0, w20                                                   
    40029040:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40029044:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40029048:   a8ca7bfd    ldp x29, x30, [sp], #160                                      
    4002904c:   d65f03c0    ret                                                           
    rc = rtems_rfs_block_map_open (fs, handle, &map);                                     
    40029050:   aa1303e1    mov x1, x19                                                   
    40029054:   910103e2    add x2, sp, #0x40                                             
    40029058:   aa1503e0    mov x0, x21                                                   
    4002905c:   94002b29    bl  40033d00 <rtems_rfs_block_map_open>                       
    40029060:   2a0003f4    mov w20, w0                                                   
    if (rc == 0)                                                                          
    40029064:   35fffec0    cbnz    w0, 4002903c <rtems_rfs_inode_delete+0x7c>            <== NEVER TAKEN
      rrc = rtems_rfs_block_map_free_all (fs, &map);                                      
    40029068:   910103e1    add x1, sp, #0x40                                             
    4002906c:   aa1503e0    mov x0, x21                                                   
    40029070:   f9001bf7    str x23, [sp, #48]                                            
    40029074:   94002e1b    bl  400348e0 <rtems_rfs_block_map_free_all>                   
      rc = rtems_rfs_block_map_close (fs, &map);                                          
    40029078:   910103e1    add x1, sp, #0x40                                             
      rrc = rtems_rfs_block_map_free_all (fs, &map);                                      
    4002907c:   2a0003f6    mov w22, w0                                                   
      rc = rtems_rfs_block_map_close (fs, &map);                                          
    40029080:   aa1503e0    mov x0, x21                                                   
    40029084:   94002b83    bl  40033e90 <rtems_rfs_block_map_close>                      
      rc = rtems_rfs_buffer_handle_release (fs, &handle->buffer);                         
    40029088:   91008277    add x23, x19, #0x20                                           
      rc = rtems_rfs_block_map_close (fs, &map);                                          
    4002908c:   2a0003f4    mov w20, w0                                                   
      if (rc > 0)                                                                         
    40029090:   7100001f    cmp w0, #0x0                                                  
      memset (handle->node, 0xff, RTEMS_RFS_INODE_SIZE);                                  
    40029094:   d2800702    mov x2, #0x38                   // #56                        
    40029098:   52801fe1    mov w1, #0xff                   // #255                       
    4002909c:   f9400e60    ldr x0, [x19, #24]                                            
      if (rc > 0)                                                                         
    400290a0:   5400016d    b.le    400290cc <rtems_rfs_inode_delete+0x10c>               <== ALWAYS TAKEN
      memset (handle->node, 0xff, RTEMS_RFS_INODE_SIZE);                                  
    400290a4:   940053c2    bl  4003dfac <memset>                                         <== NOT EXECUTED
      rtems_rfs_buffer_mark_dirty (&handle->buffer);                                      
    400290a8:   52800020    mov w0, #0x1                    // #1                         <== NOT EXECUTED
    400290ac:   39008260    strb    w0, [x19, #32]                                        <== NOT EXECUTED
      rc = rtems_rfs_buffer_handle_release (fs, &handle->buffer);                         
    400290b0:   aa1703e1    mov x1, x23                                                   <== NOT EXECUTED
    400290b4:   aa1503e0    mov x0, x21                                                   <== NOT EXECUTED
    400290b8:   97fff876    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
      handle->loads = 0;                                                                  
    400290bc:   f9401bf7    ldr x23, [sp, #48]                                            <== NOT EXECUTED
      handle->node = NULL;                                                                
    400290c0:   f9000e7f    str xzr, [x19, #24]                                           <== NOT EXECUTED
      handle->loads = 0;                                                                  
    400290c4:   b9003a7f    str wzr, [x19, #56]                                           <== NOT EXECUTED
      if (rrc > 0)                                                                        
    400290c8:   17ffffdd    b   4002903c <rtems_rfs_inode_delete+0x7c>                    <== NOT EXECUTED
      memset (handle->node, 0xff, RTEMS_RFS_INODE_SIZE);                                  
    400290cc:   940053b8    bl  4003dfac <memset>                                         
      rtems_rfs_buffer_mark_dirty (&handle->buffer);                                      
    400290d0:   52800020    mov w0, #0x1                    // #1                         
    400290d4:   39008260    strb    w0, [x19, #32]                                        
      rc = rtems_rfs_buffer_handle_release (fs, &handle->buffer);                         
    400290d8:   aa1703e1    mov x1, x23                                                   
    400290dc:   aa1503e0    mov x0, x21                                                   
    400290e0:   97fff86c    bl  40027290 <rtems_rfs_buffer_handle_release>                
      handle->loads = 0;                                                                  
    400290e4:   710002df    cmp w22, #0x0                                                 
    400290e8:   1a96d014    csel    w20, w0, w22, le                                      
    400290ec:   f9401bf7    ldr x23, [sp, #48]                                            
      handle->node = NULL;                                                                
    400290f0:   f9000e7f    str xzr, [x19, #24]                                           
      handle->loads = 0;                                                                  
    400290f4:   b9003a7f    str wzr, [x19, #56]                                           
      if (rrc > 0)                                                                        
    400290f8:   17ffffd1    b   4002903c <rtems_rfs_inode_delete+0x7c>                    
    400290fc:   00000000    udf #0                                                        
                                                                                          

0000000040028c80 <rtems_rfs_inode_load>: } int rtems_rfs_inode_load (rtems_rfs_file_system* fs, rtems_rfs_inode_handle* handle) {
    40028c80:   a9be7bfd    stp x29, x30, [sp, #-32]!                                     
    40028c84:   910003fd    mov x29, sp                                                   
    40028c88:   a90153f3    stp x19, x20, [sp, #16]                                       
    40028c8c:   aa0003f4    mov x20, x0                                                   
    40028c90:   aa0103f3    mov x19, x1                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_LOAD))                                       
    40028c94:   d2a00200    mov x0, #0x100000               // #1048576                   
    40028c98:   9400076e    bl  4002aa50 <rtems_rfs_trace>                                
    40028c9c:   72001c1f    tst w0, #0xff                                                 
    40028ca0:   540001a0    b.eq    40028cd4 <rtems_rfs_inode_load+0x54>  // b.none       <== ALWAYS TAKEN
    printf ("rtems-rfs: inode-load: ino=%" PRIu32 " loads=%i loaded=%s\n",                
    40028ca4:   f9400e60    ldr x0, [x19, #24]                                            <== NOT EXECUTED
    40028ca8:   b0000104    adrp    x4, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028cac:   91250084    add x4, x4, #0x940                                            <== NOT EXECUTED
    40028cb0:   b9401261    ldr w1, [x19, #16]                                            <== NOT EXECUTED
    40028cb4:   b9403a62    ldr w2, [x19, #56]                                            <== NOT EXECUTED
    40028cb8:   f100001f    cmp x0, #0x0                                                  <== NOT EXECUTED
    40028cbc:   b0000103    adrp    x3, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028cc0:   91252063    add x3, x3, #0x948                                            <== NOT EXECUTED
    40028cc4:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028cc8:   91254000    add x0, x0, #0x950                                            <== NOT EXECUTED
    40028ccc:   9a831083    csel    x3, x4, x3, ne  // ne = any                           <== NOT EXECUTED
    40028cd0:   97ffe5d0    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
                                                                                          
  /*                                                                                      
   * An inode does not move so once loaded no need to do again.                           
   */                                                                                     
                                                                                          
  if (!rtems_rfs_inode_is_loaded (handle))                                                
    40028cd4:   f9400e61    ldr x1, [x19, #24]                                            
    40028cd8:   b4000101    cbz x1, 40028cf8 <rtems_rfs_inode_load+0x78>                  
                                                                                          
    handle->node = rtems_rfs_buffer_data (&handle->buffer);                               
    handle->node += handle->offset;                                                       
  }                                                                                       
                                                                                          
  handle->loads++;                                                                        
    40028cdc:   b9403a61    ldr w1, [x19, #56]                                            
                                                                                          
  return 0;                                                                               
    40028ce0:   52800000    mov w0, #0x0                    // #0                         
  handle->loads++;                                                                        
    40028ce4:   11000421    add w1, w1, #0x1                                              
    40028ce8:   b9003a61    str w1, [x19, #56]                                            
}                                                                                         
    40028cec:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40028cf0:   a8c27bfd    ldp x29, x30, [sp], #32                                       
    40028cf4:   d65f03c0    ret                                                           
    rc = rtems_rfs_buffer_handle_request (fs,&handle->buffer,                             
    40028cf8:   b9403262    ldr w2, [x19, #48]                                            
    40028cfc:   aa1403e0    mov x0, x20                                                   
    40028d00:   91008261    add x1, x19, #0x20                                            
    40028d04:   52800023    mov w3, #0x1                    // #1                         
    40028d08:   97fff8b2    bl  40026fd0 <rtems_rfs_buffer_handle_request>                
    if (rc > 0)                                                                           
    40028d0c:   7100001f    cmp w0, #0x0                                                  
    40028d10:   54fffeec    b.gt    40028cec <rtems_rfs_inode_load+0x6c>                  <== NEVER TAKEN
    handle->node = rtems_rfs_buffer_data (&handle->buffer);                               
    40028d14:   f9401661    ldr x1, [x19, #40]                                            
    handle->node += handle->offset;                                                       
    40028d18:   52800702    mov w2, #0x38                   // #56                        
    40028d1c:   b9403660    ldr w0, [x19, #52]                                            
    40028d20:   f9401c21    ldr x1, [x1, #56]                                             
    40028d24:   9b220400    smaddl  x0, w0, w2, x1                                        
    40028d28:   f9000e60    str x0, [x19, #24]                                            
    40028d2c:   17ffffec    b   40028cdc <rtems_rfs_inode_load+0x5c>                      
                                                                                          

0000000040028d30 <rtems_rfs_inode_open>: {
    40028d30:   a9bd7bfd    stp x29, x30, [sp, #-48]!                                     
    40028d34:   910003fd    mov x29, sp                                                   
    40028d38:   a90153f3    stp x19, x20, [sp, #16]                                       
    40028d3c:   2a0103f4    mov w20, w1                                                   
    40028d40:   aa0203f3    mov x19, x2                                                   
    40028d44:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40028d48:   aa0003f6    mov x22, x0                                                   
    40028d4c:   12001c75    and w21, w3, #0xff                                            
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_OPEN))                                       
    40028d50:   d2a00080    mov x0, #0x40000                // #262144                    
    40028d54:   9400073f    bl  4002aa50 <rtems_rfs_trace>                                
    40028d58:   72001c1f    tst w0, #0xff                                                 
    40028d5c:   54000421    b.ne    40028de0 <rtems_rfs_inode_open+0xb0>  // b.any        <== NEVER TAKEN
  if (ino == RTEMS_RFS_EMPTY_INO)                                                         
    40028d60:   340004b4    cbz w20, 40028df4 <rtems_rfs_inode_open+0xc4>                 <== NEVER TAKEN
  if ((ino - RTEMS_RFS_ROOT_INO) > rtems_rfs_fs_inodes (fs))                              
    40028d64:   b9402ac0    ldr w0, [x22, #40]                                            
    40028d68:   51000682    sub w2, w20, #0x1                                             
    40028d6c:   6b00005f    cmp w2, w0                                                    
    40028d70:   54000428    b.hi    40028df4 <rtems_rfs_inode_open+0xc4>  // b.pmore      <== NEVER TAKEN
  index = (gino / fs->inodes_per_block) + RTEMS_RFS_GROUP_INODE_BLOCK;                    
    40028d74:   a94512c1    ldp x1, x4, [x22, #80]                                        
  group = gino / fs->group_inodes;                                                        
    40028d78:   93407c42    sxtw    x2, w2                                                
  handle->block  = rtems_rfs_group_block (&fs->groups[group], index);                     
    40028d7c:   52801207    mov w7, #0x90                   // #144                       
  handle->dirty = false;                                                                  
    40028d80:   91008263    add x3, x19, #0x20                                            
    40028d84:   f9401ec6    ldr x6, [x22, #56]                                            
  rc = rtems_rfs_buffer_handle_open (fs, &handle->buffer);                                
    40028d88:   52800000    mov w0, #0x0                    // #0                         
  gino  = gino % fs->group_inodes;                                                        
    40028d8c:   9ac10845    udiv    x5, x2, x1                                            
    40028d90:   9b0188a1    msub    x1, x5, x1, x2                                        
  handle->block  = rtems_rfs_group_block (&fs->groups[group], index);                     
    40028d94:   9b277ca5    smull   x5, w5, w7                                            
  index = (gino / fs->inodes_per_block) + RTEMS_RFS_GROUP_INODE_BLOCK;                    
    40028d98:   93407c21    sxtw    x1, w1                                                
  handle->block  = rtems_rfs_group_block (&fs->groups[group], index);                     
    40028d9c:   b86568c5    ldr w5, [x6, x5]                                              
  handle->offset = gino % fs->inodes_per_block;                                           
    40028da0:   9ac40822    udiv    x2, x1, x4                                            
  handle->ino = ino;                                                                      
    40028da4:   b9001274    str w20, [x19, #16]                                           
  handle->node = NULL;                                                                    
    40028da8:   f9000e7f    str xzr, [x19, #24]                                           
    40028dac:   3900827f    strb    wzr, [x19, #32]                                       
  handle->loads = 0;                                                                      
    40028db0:   b9003a7f    str wzr, [x19, #56]                                           
  handle->offset = gino % fs->inodes_per_block;                                           
    40028db4:   9b048441    msub    x1, x2, x4, x1                                        
  index = (gino / fs->inodes_per_block) + RTEMS_RFS_GROUP_INODE_BLOCK;                    
    40028db8:   11000842    add w2, w2, #0x2                                              
  handle->block  = rtems_rfs_group_block (&fs->groups[group], index);                     
    40028dbc:   0b0200a2    add w2, w5, w2                                                
  handle->offset = gino % fs->inodes_per_block;                                           
    40028dc0:   29060662    stp w2, w1, [x19, #48]                                        
  handle->bnum  = 0;                                                                      
    40028dc4:   b900047f    str wzr, [x3, #4]                                             
  handle->buffer = NULL;                                                                  
    40028dc8:   f900047f    str xzr, [x3, #8]                                             
  if ((rc == 0) && load)                                                                  
    40028dcc:   350001f5    cbnz    w21, 40028e08 <rtems_rfs_inode_open+0xd8>             <== ALWAYS TAKEN
}                                                                                         
    40028dd0:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40028dd4:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40028dd8:   a8c37bfd    ldp x29, x30, [sp], #48                                       <== NOT EXECUTED
    40028ddc:   d65f03c0    ret                                                           <== NOT EXECUTED
    printf ("rtems-rfs: inode-open: ino: %" PRIu32 "\n", ino);                            
    40028de0:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028de4:   2a1403e1    mov w1, w20                                                   <== NOT EXECUTED
    40028de8:   91262000    add x0, x0, #0x988                                            <== NOT EXECUTED
    40028dec:   97ffe589    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  if (ino == RTEMS_RFS_EMPTY_INO)                                                         
    40028df0:   35fffbb4    cbnz    w20, 40028d64 <rtems_rfs_inode_open+0x34>             <== NOT EXECUTED
    return EINVAL;                                                                        
    40028df4:   528002c0    mov w0, #0x16                   // #22                        <== NOT EXECUTED
}                                                                                         
    40028df8:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40028dfc:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40028e00:   a8c37bfd    ldp x29, x30, [sp], #48                                       <== NOT EXECUTED
    40028e04:   d65f03c0    ret                                                           <== NOT EXECUTED
    rc = rtems_rfs_inode_load (fs, handle);                                               
    40028e08:   aa1303e1    mov x1, x19                                                   
    40028e0c:   aa1603e0    mov x0, x22                                                   
}                                                                                         
    40028e10:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40028e14:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40028e18:   a8c37bfd    ldp x29, x30, [sp], #48                                       
    rc = rtems_rfs_inode_load (fs, handle);                                               
    40028e1c:   17ffff99    b   40028c80 <rtems_rfs_inode_load>                           
                                                                                          

0000000040029100 <rtems_rfs_inode_time_stamp_now>: int rtems_rfs_inode_time_stamp_now (rtems_rfs_inode_handle* handle, bool atime, bool mtime) {
    40029100:   a9bd7bfd    stp x29, x30, [sp, #-48]!                                     
    40029104:   910003fd    mov x29, sp                                                   
    40029108:   a90153f3    stp x19, x20, [sp, #16]                                       
    4002910c:   aa0003f3    mov x19, x0                                                   
  time_t now;                                                                             
  if (!rtems_rfs_inode_is_loaded (handle))                                                
    40029110:   f9400c00    ldr x0, [x0, #24]                                             
    40029114:   b40005c0    cbz x0, 400291cc <rtems_rfs_inode_time_stamp_now+0xcc>        <== NEVER TAKEN
    return ENXIO;                                                                         
  now = time (NULL);                                                                      
    40029118:   12001c54    and w20, w2, #0xff                                            
    4002911c:   d2800000    mov x0, #0x0                    // #0                         
    40029120:   f90013f5    str x21, [sp, #32]                                            
    40029124:   12001c35    and w21, w1, #0xff                                            
    40029128:   940064b8    bl  40042408 <time>                                           
    4002912c:   aa0003e3    mov x3, x0                                                    
  if (atime)                                                                              
    40029130:   350000f5    cbnz    w21, 4002914c <rtems_rfs_inode_time_stamp_now+0x4c>   <== ALWAYS TAKEN
    rtems_rfs_inode_set_atime (handle, now);                                              
  if (mtime)                                                                              
    rtems_rfs_inode_set_mtime (handle, now);                                              
  return 0;                                                                               
    40029134:   52800000    mov w0, #0x0                    // #0                         <== NOT EXECUTED
  if (mtime)                                                                              
    40029138:   35000294    cbnz    w20, 40029188 <rtems_rfs_inode_time_stamp_now+0x88>   <== NOT EXECUTED
}                                                                                         
    4002913c:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40029140:   f94013f5    ldr x21, [sp, #32]                                            <== NOT EXECUTED
    40029144:   a8c37bfd    ldp x29, x30, [sp], #48                                       <== NOT EXECUTED
    40029148:   d65f03c0    ret                                                           <== NOT EXECUTED
  rtems_rfs_write_u32 (&handle->node->atime, atime);                                      
    4002914c:   f9400e65    ldr x5, [x19, #24]                                            
    40029150:   53187c02    lsr w2, w0, #24                                               
    40029154:   53107c01    lsr w1, w0, #16                                               
    40029158:   53087c00    lsr w0, w0, #8                                                
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    4002915c:   52800024    mov w4, #0x1                    // #1                         
  rtems_rfs_write_u32 (&handle->node->atime, atime);                                      
    40029160:   390040a2    strb    w2, [x5, #16]                                         
    40029164:   f9400e62    ldr x2, [x19, #24]                                            
    40029168:   39004441    strb    w1, [x2, #17]                                         
    4002916c:   f9400e61    ldr x1, [x19, #24]                                            
    40029170:   39004820    strb    w0, [x1, #18]                                         
    40029174:   f9400e60    ldr x0, [x19, #24]                                            
    40029178:   39004c03    strb    w3, [x0, #19]                                         
  return 0;                                                                               
    4002917c:   52800000    mov w0, #0x0                    // #0                         
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40029180:   39008264    strb    w4, [x19, #32]                                        
  if (mtime)                                                                              
    40029184:   34fffdd4    cbz w20, 4002913c <rtems_rfs_inode_time_stamp_now+0x3c>       <== NEVER TAKEN
  rtems_rfs_write_u32 (&handle->node->mtime, mtime);                                      
    40029188:   f9400e62    ldr x2, [x19, #24]                                            
    4002918c:   53187c66    lsr w6, w3, #24                                               
    40029190:   53107c65    lsr w5, w3, #16                                               
    40029194:   53087c64    lsr w4, w3, #8                                                
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40029198:   52800021    mov w1, #0x1                    // #1                         
  rtems_rfs_write_u32 (&handle->node->mtime, mtime);                                      
    4002919c:   39005046    strb    w6, [x2, #20]                                         
    400291a0:   f9400e62    ldr x2, [x19, #24]                                            
    400291a4:   39005445    strb    w5, [x2, #21]                                         
    400291a8:   f9400e62    ldr x2, [x19, #24]                                            
    400291ac:   39005844    strb    w4, [x2, #22]                                         
    400291b0:   f9400e62    ldr x2, [x19, #24]                                            
    400291b4:   39005c43    strb    w3, [x2, #23]                                         
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    400291b8:   39008261    strb    w1, [x19, #32]                                        
}                                                                                         
    400291bc:   a94153f3    ldp x19, x20, [sp, #16]                                       
}                                                                                         
    400291c0:   f94013f5    ldr x21, [sp, #32]                                            
    400291c4:   a8c37bfd    ldp x29, x30, [sp], #48                                       
    400291c8:   d65f03c0    ret                                                           
    return ENXIO;                                                                         
    400291cc:   528000c0    mov w0, #0x6                    // #6                         <== NOT EXECUTED
}                                                                                         
    400291d0:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    400291d4:   a8c37bfd    ldp x29, x30, [sp], #48                                       <== NOT EXECUTED
    400291d8:   d65f03c0    ret                                                           <== NOT EXECUTED
    400291dc:   00000000    udf #0                                                        
                                                                                          

0000000040028e20 <rtems_rfs_inode_unload>: int rtems_rfs_inode_unload (rtems_rfs_file_system* fs, rtems_rfs_inode_handle* handle, bool update_ctime) {
    40028e20:   a9bd7bfd    stp x29, x30, [sp, #-48]!                                     
    40028e24:   910003fd    mov x29, sp                                                   
    40028e28:   a90153f3    stp x19, x20, [sp, #16]                                       
    40028e2c:   aa0003f4    mov x20, x0                                                   
    40028e30:   aa0103f3    mov x19, x1                                                   
  int rc = 0;                                                                             
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_UNLOAD))                                     
    40028e34:   d2a00400    mov x0, #0x200000               // #2097152                   
{                                                                                         
    40028e38:   f90013f5    str x21, [sp, #32]                                            
    40028e3c:   12001c55    and w21, w2, #0xff                                            
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_UNLOAD))                                     
    40028e40:   94000704    bl  4002aa50 <rtems_rfs_trace>                                
    40028e44:   72001c1f    tst w0, #0xff                                                 
    40028e48:   540001a0    b.eq    40028e7c <rtems_rfs_inode_unload+0x5c>  // b.none     <== ALWAYS TAKEN
    printf ("rtems-rfs: inode-unload: ino=%" PRIu32 " loads=%i loaded=%s\n",              
    40028e4c:   f9400e63    ldr x3, [x19, #24]                                            <== NOT EXECUTED
    40028e50:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028e54:   91252000    add x0, x0, #0x948                                            <== NOT EXECUTED
    40028e58:   b9401261    ldr w1, [x19, #16]                                            <== NOT EXECUTED
    40028e5c:   b9403a62    ldr w2, [x19, #56]                                            <== NOT EXECUTED
    40028e60:   f100007f    cmp x3, #0x0                                                  <== NOT EXECUTED
    40028e64:   b0000103    adrp    x3, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028e68:   91250063    add x3, x3, #0x940                                            <== NOT EXECUTED
    40028e6c:   9a801063    csel    x3, x3, x0, ne  // ne = any                           <== NOT EXECUTED
    40028e70:   b0000100    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    40028e74:   9126a000    add x0, x0, #0x9a8                                            <== NOT EXECUTED
    40028e78:   97ffe566    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
            handle->ino, handle->loads,                                                   
            rtems_rfs_inode_is_loaded (handle) ? "yes" : "no");                           
                                                                                          
  if (rtems_rfs_inode_is_loaded (handle))                                                 
    40028e7c:   f9400e60    ldr x0, [x19, #24]                                            
    40028e80:   b4000240    cbz x0, 40028ec8 <rtems_rfs_inode_unload+0xa8>                
  {                                                                                       
    if (handle->loads == 0)                                                               
    40028e84:   b9403a61    ldr w1, [x19, #56]                                            
      return EIO;                                                                         
    40028e88:   528000a0    mov w0, #0x5                    // #5                         
    if (handle->loads == 0)                                                               
    40028e8c:   34000201    cbz w1, 40028ecc <rtems_rfs_inode_unload+0xac>                <== NEVER TAKEN
                                                                                          
    handle->loads--;                                                                      
    40028e90:   51000421    sub w1, w1, #0x1                                              
    40028e94:   b9003a61    str w1, [x19, #56]                                            
                                                                                          
    if (handle->loads == 0)                                                               
    40028e98:   35000181    cbnz    w1, 40028ec8 <rtems_rfs_inode_unload+0xa8>            
    {                                                                                     
      /*                                                                                  
       * If the buffer is dirty it will be release. Also set the ctime.                   
       */                                                                                 
      if (rtems_rfs_buffer_dirty (&handle->buffer) && update_ctime)                       
    40028e9c:   39408260    ldrb    w0, [x19, #32]                                        
    40028ea0:   6a0002bf    tst w21, w0                                                   
    40028ea4:   540001c1    b.ne    40028edc <rtems_rfs_inode_unload+0xbc>  // b.any      
        rtems_rfs_inode_set_ctime (handle, time (NULL));                                  
      rc = rtems_rfs_buffer_handle_release (fs, &handle->buffer);                         
    40028ea8:   91008261    add x1, x19, #0x20                                            
    40028eac:   aa1403e0    mov x0, x20                                                   
    40028eb0:   97fff8f8    bl  40027290 <rtems_rfs_buffer_handle_release>                
      handle->node = NULL;                                                                
    40028eb4:   f9000e7f    str xzr, [x19, #24]                                           
    }                                                                                     
  }                                                                                       
                                                                                          
  return rc;                                                                              
}                                                                                         
    40028eb8:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40028ebc:   f94013f5    ldr x21, [sp, #32]                                            
    40028ec0:   a8c37bfd    ldp x29, x30, [sp], #48                                       
    40028ec4:   d65f03c0    ret                                                           
  int rc = 0;                                                                             
    40028ec8:   52800000    mov w0, #0x0                    // #0                         
}                                                                                         
    40028ecc:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40028ed0:   f94013f5    ldr x21, [sp, #32]                                            
    40028ed4:   a8c37bfd    ldp x29, x30, [sp], #48                                       
    40028ed8:   d65f03c0    ret                                                           
        rtems_rfs_inode_set_ctime (handle, time (NULL));                                  
    40028edc:   d2800000    mov x0, #0x0                    // #0                         
    40028ee0:   9400654a    bl  40042408 <time>                                           
 */                                                                                       
static inline void                                                                        
rtems_rfs_inode_set_ctime (rtems_rfs_inode_handle* handle,                                
                           rtems_rfs_time          ctime)                                 
{                                                                                         
  rtems_rfs_write_u32 (&handle->node->ctime, ctime);                                      
    40028ee4:   f9400e62    ldr x2, [x19, #24]                                            
    40028ee8:   53187c03    lsr w3, w0, #24                                               
    40028eec:   53107c04    lsr w4, w0, #16                                               
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40028ef0:   52800021    mov w1, #0x1                    // #1                         
  rtems_rfs_write_u32 (&handle->node->ctime, ctime);                                      
    40028ef4:   39006043    strb    w3, [x2, #24]                                         
    40028ef8:   53087c03    lsr w3, w0, #8                                                
    40028efc:   f9400e62    ldr x2, [x19, #24]                                            
    40028f00:   39006444    strb    w4, [x2, #25]                                         
    40028f04:   f9400e62    ldr x2, [x19, #24]                                            
    40028f08:   39006843    strb    w3, [x2, #26]                                         
    40028f0c:   f9400e62    ldr x2, [x19, #24]                                            
    40028f10:   39006c40    strb    w0, [x2, #27]                                         
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40028f14:   39008261    strb    w1, [x19, #32]                                        
}                                                                                         
    40028f18:   17ffffe4    b   40028ea8 <rtems_rfs_inode_unload+0x88>                    
    40028f1c:   00000000    udf #0                                                        
                                                                                          

00000000400376c0 <rtems_rfs_link>: const char* name, int length, rtems_rfs_ino parent, rtems_rfs_ino target, bool link_dir) {
    400376c0:   a9b37bfd    stp x29, x30, [sp, #-208]!                                    <== NOT EXECUTED
    400376c4:   910003fd    mov x29, sp                                                   <== NOT EXECUTED
    400376c8:   a90153f3    stp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    400376cc:   aa0003f4    mov x20, x0                                                   <== NOT EXECUTED
  rtems_rfs_inode_handle parent_inode;                                                    
  rtems_rfs_inode_handle target_inode;                                                    
  uint16_t               links;                                                           
  int                    rc;                                                              
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_LINK))                                             
    400376d0:   d2a02000    mov x0, #0x1000000              // #16777216                  <== NOT EXECUTED
{                                                                                         
    400376d4:   a9025bf5    stp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    400376d8:   2a0403f5    mov w21, w4                                                   <== NOT EXECUTED
    400376dc:   a90363f7    stp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    400376e0:   aa0103f8    mov x24, x1                                                   <== NOT EXECUTED
    400376e4:   2a0203f7    mov w23, w2                                                   <== NOT EXECUTED
    400376e8:   a9046bf9    stp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    400376ec:   2a0303f9    mov w25, w3                                                   <== NOT EXECUTED
    400376f0:   12001cba    and w26, w5, #0xff                                            <== NOT EXECUTED
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_LINK))                                             
    400376f4:   97ffccd7    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    400376f8:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    400376fc:   54000a81    b.ne    4003784c <rtems_rfs_link+0x18c>  // b.any             <== NOT EXECUTED
    for (c = 0; c < length; c++)                                                          
      printf ("%c", name[c]);                                                             
    printf ("(%" PRIu32 ")\n", target);                                                   
  }                                                                                       
                                                                                          
  rc = rtems_rfs_inode_open (fs, target, &target_inode, true);                            
    40037700:   910243e2    add x2, sp, #0x90                                             <== NOT EXECUTED
    40037704:   2a1503e1    mov w1, w21                                                   <== NOT EXECUTED
    40037708:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    4003770c:   52800023    mov w3, #0x1                    // #1                         <== NOT EXECUTED
    40037710:   97ffc588    bl  40028d30 <rtems_rfs_inode_open>                           <== NOT EXECUTED
    40037714:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
  if (rc)                                                                                 
    40037718:   35000760    cbnz    w0, 40037804 <rtems_rfs_link+0x144>                   <== NOT EXECUTED
                                                                                          
  /*                                                                                      
   * If the target inode is a directory and we cannot link directories                    
   * return a not supported error code.                                                   
   */                                                                                     
  if (!link_dir && S_ISDIR (rtems_rfs_inode_get_mode (&target_inode)))                    
    4003771c:   3500013a    cbnz    w26, 40037740 <rtems_rfs_link+0x80>                   <== NOT EXECUTED
    40037720:   f94057e1    ldr x1, [sp, #168]                                            <== NOT EXECUTED
    40037724:   39400822    ldrb    w2, [x1, #2]                                          <== NOT EXECUTED
    40037728:   39400c20    ldrb    w0, [x1, #3]                                          <== NOT EXECUTED
    4003772c:   aa002040    orr x0, x2, x0, lsl #8                                        <== NOT EXECUTED
    40037730:   5ac00400    rev16   w0, w0                                                <== NOT EXECUTED
    40037734:   12140c00    and w0, w0, #0xf000                                           <== NOT EXECUTED
    40037738:   7140101f    cmp w0, #0x4, lsl #12                                         <== NOT EXECUTED
    4003773c:   54000d00    b.eq    400378dc <rtems_rfs_link+0x21c>  // b.none            <== NOT EXECUTED
  {                                                                                       
    rtems_rfs_inode_close (fs, &target_inode);                                            
    return ENOTSUP;                                                                       
  }                                                                                       
                                                                                          
  rc = rtems_rfs_inode_open (fs, parent, &parent_inode, true);                            
    40037740:   2a1903e1    mov w1, w25                                                   <== NOT EXECUTED
    40037744:   910143e2    add x2, sp, #0x50                                             <== NOT EXECUTED
    40037748:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    4003774c:   52800023    mov w3, #0x1                    // #1                         <== NOT EXECUTED
    40037750:   97ffc578    bl  40028d30 <rtems_rfs_inode_open>                           <== NOT EXECUTED
    40037754:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
  if (rc)                                                                                 
    40037758:   35000660    cbnz    w0, 40037824 <rtems_rfs_link+0x164>                   <== NOT EXECUTED
  {                                                                                       
    rtems_rfs_inode_close (fs, &target_inode);                                            
    return rc;                                                                            
  }                                                                                       
                                                                                          
  rc = rtems_rfs_dir_add_entry (fs, &parent_inode, name, length, target);                 
    4003775c:   2a1503e4    mov w4, w21                                                   <== NOT EXECUTED
    40037760:   93407ee3    sxtw    x3, w23                                               <== NOT EXECUTED
    40037764:   aa1803e2    mov x2, x24                                                   <== NOT EXECUTED
    40037768:   910143e1    add x1, sp, #0x50                                             <== NOT EXECUTED
    4003776c:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40037770:   97fff5fc    bl  40034f60 <rtems_rfs_dir_add_entry>                        <== NOT EXECUTED
    40037774:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
  if (rc > 0)                                                                             
    40037778:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    4003777c:   5400090c    b.gt    4003789c <rtems_rfs_link+0x1dc>                       <== NOT EXECUTED
  links = rtems_rfs_read_u16 (&handle->node->links);                                      
    40037780:   f94057e1    ldr x1, [sp, #168]                                            <== NOT EXECUTED
  if (links == 0xffff)                                                                    
    40037784:   529fffe2    mov w2, #0xffff                 // #65535                     <== NOT EXECUTED
    40037788:   39400023    ldrb    w3, [x1]                                              <== NOT EXECUTED
    4003778c:   39400420    ldrb    w0, [x1, #1]                                          <== NOT EXECUTED
    40037790:   aa002060    orr x0, x3, x0, lsl #8                                        <== NOT EXECUTED
    40037794:   5ac00400    rev16   w0, w0                                                <== NOT EXECUTED
    40037798:   12003c00    and w0, w0, #0xffff                                           <== NOT EXECUTED
    4003779c:   6b02001f    cmp w0, w2                                                    <== NOT EXECUTED
    400377a0:   54000980    b.eq    400378d0 <rtems_rfs_link+0x210>  // b.none            <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &parent_inode);                                            
    rtems_rfs_inode_close (fs, &target_inode);                                            
    return rc;                                                                            
  }                                                                                       
                                                                                          
  links = rtems_rfs_inode_get_links (&target_inode) + 1;                                  
    400377a4:   11000400    add w0, w0, #0x1                                              <== NOT EXECUTED
  rtems_rfs_write_u16 (&handle->node->links, links);                                      
    400377a8:   12001c04    and w4, w0, #0xff                                             <== NOT EXECUTED
    400377ac:   d3483c00    ubfx    x0, x0, #8, #8                                        <== NOT EXECUTED
    400377b0:   39000020    strb    w0, [x1]                                              <== NOT EXECUTED
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    400377b4:   52800022    mov w2, #0x1                    // #1                         <== NOT EXECUTED
  rtems_rfs_inode_set_links (&target_inode, links);                                       
                                                                                          
  rc = rtems_rfs_inode_time_stamp_now (&parent_inode, true, true);                        
    400377b8:   910143e0    add x0, sp, #0x50                                             <== NOT EXECUTED
    400377bc:   2a0203e1    mov w1, w2                                                    <== NOT EXECUTED
  rtems_rfs_write_u16 (&handle->node->links, links);                                      
    400377c0:   f94057e3    ldr x3, [sp, #168]                                            <== NOT EXECUTED
    400377c4:   39000464    strb    w4, [x3, #1]                                          <== NOT EXECUTED
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    400377c8:   3902c3e2    strb    w2, [sp, #176]                                        <== NOT EXECUTED
    400377cc:   97ffc64d    bl  40029100 <rtems_rfs_inode_time_stamp_now>                 <== NOT EXECUTED
    400377d0:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
  if (rc > 0)                                                                             
  {                                                                                       
    rtems_rfs_inode_close (fs, &parent_inode);                                            
    400377d4:   910143e1    add x1, sp, #0x50                                             <== NOT EXECUTED
    400377d8:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
  if (rc > 0)                                                                             
    400377dc:   7100027f    cmp w19, #0x0                                                 <== NOT EXECUTED
    400377e0:   5400020c    b.gt    40037820 <rtems_rfs_link+0x160>                       <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &target_inode);                                            
    return rc;                                                                            
  }                                                                                       
                                                                                          
  rc = rtems_rfs_inode_close (fs, &parent_inode);                                         
    400377e4:   97ffc5cf    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
    400377e8:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
  if (rc > 0)                                                                             
  {                                                                                       
    rtems_rfs_inode_close (fs, &target_inode);                                            
    400377ec:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
    400377f0:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
  if (rc > 0)                                                                             
    400377f4:   7100027f    cmp w19, #0x0                                                 <== NOT EXECUTED
    400377f8:   540001ac    b.gt    4003782c <rtems_rfs_link+0x16c>                       <== NOT EXECUTED
    return rc;                                                                            
  }                                                                                       
                                                                                          
  rc = rtems_rfs_inode_close (fs, &target_inode);                                         
    400377fc:   97ffc5c9    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
    40037800:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
                                                                                          
  return rc;                                                                              
}                                                                                         
    40037804:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40037808:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    4003780c:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40037810:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40037814:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    40037818:   a8cd7bfd    ldp x29, x30, [sp], #208                                      <== NOT EXECUTED
    4003781c:   d65f03c0    ret                                                           <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &parent_inode);                                            
    40037820:   97ffc5c0    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &target_inode);                                            
    40037824:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
    40037828:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    4003782c:   97ffc5bd    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
}                                                                                         
    40037830:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40037834:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40037838:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    4003783c:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40037840:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    40037844:   a8cd7bfd    ldp x29, x30, [sp], #208                                      <== NOT EXECUTED
    40037848:   d65f03c0    ret                                                           <== NOT EXECUTED
    printf ("rtems-rfs: link: parent(%" PRIu32 ") -> ", parent);                          
    4003784c:   2a1903e1    mov w1, w25                                                   <== NOT EXECUTED
    40037850:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037854:   910d2000    add x0, x0, #0x348                                            <== NOT EXECUTED
    40037858:   97ffaaee    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    for (c = 0; c < length; c++)                                                          
    4003785c:   710002ff    cmp w23, #0x0                                                 <== NOT EXECUTED
    40037860:   5400014d    b.le    40037888 <rtems_rfs_link+0x1c8>                       <== NOT EXECUTED
    40037864:   510006f6    sub w22, w23, #0x1                                            <== NOT EXECUTED
    40037868:   91000700    add x0, x24, #0x1                                             <== NOT EXECUTED
    4003786c:   8b0002d6    add x22, x22, x0                                              <== NOT EXECUTED
    40037870:   aa1803f3    mov x19, x24                                                  <== NOT EXECUTED
    40037874:   d503201f    nop                                                           <== NOT EXECUTED
      printf ("%c", name[c]);                                                             
    40037878:   38401660    ldrb    w0, [x19], #1                                         <== NOT EXECUTED
    4003787c:   940019e1    bl  4003e000 <putchar>                                        <== NOT EXECUTED
    for (c = 0; c < length; c++)                                                          
    40037880:   eb16027f    cmp x19, x22                                                  <== NOT EXECUTED
    40037884:   54ffffa1    b.ne    40037878 <rtems_rfs_link+0x1b8>  // b.any             <== NOT EXECUTED
    printf ("(%" PRIu32 ")\n", target);                                                   
    40037888:   2a1503e1    mov w1, w21                                                   <== NOT EXECUTED
    4003788c:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037890:   910da000    add x0, x0, #0x368                                            <== NOT EXECUTED
    40037894:   97ffaadf    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40037898:   17ffff9a    b   40037700 <rtems_rfs_link+0x40>                            <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &parent_inode);                                            
    4003789c:   910143e1    add x1, sp, #0x50                                             <== NOT EXECUTED
    400378a0:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    400378a4:   97ffc59f    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &target_inode);                                            
    400378a8:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
    400378ac:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    400378b0:   97ffc59c    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
}                                                                                         
    400378b4:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    400378b8:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    400378bc:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    400378c0:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    400378c4:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    400378c8:   a8cd7bfd    ldp x29, x30, [sp], #208                                      <== NOT EXECUTED
    400378cc:   d65f03c0    ret                                                           <== NOT EXECUTED
    400378d0:   52800024    mov w4, #0x1                    // #1                         <== NOT EXECUTED
    400378d4:   52800000    mov w0, #0x0                    // #0                         <== NOT EXECUTED
    400378d8:   17ffffb6    b   400377b0 <rtems_rfs_link+0xf0>                            <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &target_inode);                                            
    400378dc:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
    400378e0:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    return ENOTSUP;                                                                       
    400378e4:   528010d3    mov w19, #0x86                      // #134                   <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &target_inode);                                            
    400378e8:   97ffc58e    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
    return ENOTSUP;                                                                       
    400378ec:   17ffffc6    b   40037804 <rtems_rfs_link+0x144>                           <== NOT EXECUTED
                                                                                          

000000004002a4a0 <rtems_rfs_rtems_fdatasync>: {
    4002a4a0:   a9be7bfd    stp x29, x30, [sp, #-32]!                                     <== NOT EXECUTED
    4002a4a4:   910003fd    mov x29, sp                                                   <== NOT EXECUTED
  rc = rtems_rfs_buffer_sync (rtems_rfs_rtems_pathloc_dev (&iop->pathinfo));              
    4002a4a8:   f9401c00    ldr x0, [x0, #56]                                             <== NOT EXECUTED
    4002a4ac:   f9400800    ldr x0, [x0, #16]                                             <== NOT EXECUTED
{                                                                                         
    4002a4b0:   f9000bf3    str x19, [sp, #16]                                            <== NOT EXECUTED
  rc = rtems_rfs_buffer_sync (rtems_rfs_rtems_pathloc_dev (&iop->pathinfo));              
    4002a4b4:   97fff3eb    bl  40027460 <rtems_rfs_buffer_sync>                          <== NOT EXECUTED
    4002a4b8:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
  if (rc)                                                                                 
    4002a4bc:   350000a0    cbnz    w0, 4002a4d0 <rtems_rfs_rtems_fdatasync+0x30>         <== NOT EXECUTED
}                                                                                         
    4002a4c0:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    4002a4c4:   f9400bf3    ldr x19, [sp, #16]                                            <== NOT EXECUTED
    4002a4c8:   a8c27bfd    ldp x29, x30, [sp], #32                                       <== NOT EXECUTED
    4002a4cc:   d65f03c0    ret                                                           <== NOT EXECUTED
    return rtems_rfs_rtems_error ("fdatasync: sync", rc);                                 
    4002a4d0:   94004cef    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    4002a4d4:   b9000013    str w19, [x0]                                                 <== NOT EXECUTED
    4002a4d8:   12800013    mov w19, #0xffffffff                // #-1                    <== NOT EXECUTED
    4002a4dc:   17fffff9    b   4002a4c0 <rtems_rfs_rtems_fdatasync+0x20>                 <== NOT EXECUTED
                                                                                          

0000000040029f80 <rtems_rfs_rtems_fstat>: {
    40029f80:   a9b97bfd    stp x29, x30, [sp, #-112]!                                    
  rc = rtems_rfs_inode_open (fs, ino, &inode, true);                                      
    40029f84:   52800023    mov w3, #0x1                    // #1                         
{                                                                                         
    40029f88:   910003fd    mov x29, sp                                                   
  rtems_rfs_file_system* fs = rtems_rfs_rtems_pathloc_dev (pathloc);                      
    40029f8c:   f9401404    ldr x4, [x0, #40]                                             
{                                                                                         
    40029f90:   a90153f3    stp x19, x20, [sp, #16]                                       
    40029f94:   aa0103f3    mov x19, x1                                                   
  rc = rtems_rfs_inode_open (fs, ino, &inode, true);                                      
    40029f98:   b9401001    ldr w1, [x0, #16]                                             
    40029f9c:   9100c3e2    add x2, sp, #0x30                                             
{                                                                                         
    40029fa0:   f90013f5    str x21, [sp, #32]                                            
  rtems_rfs_file_system* fs = rtems_rfs_rtems_pathloc_dev (pathloc);                      
    40029fa4:   f9400895    ldr x21, [x4, #16]                                            
  rc = rtems_rfs_inode_open (fs, ino, &inode, true);                                      
    40029fa8:   aa1503e0    mov x0, x21                                                   
    40029fac:   97fffb61    bl  40028d30 <rtems_rfs_inode_open>                           
    40029fb0:   2a0003f4    mov w20, w0                                                   
  if (rc)                                                                                 
    40029fb4:   35001340    cbnz    w0, 4002a21c <rtems_rfs_rtems_fstat+0x29c>            <== NEVER TAKEN
  return rtems_rfs_read_u16 (&handle->node->mode);                                        
    40029fb8:   f94027e2    ldr x2, [sp, #72]                                             
  if (RTEMS_RFS_S_ISCHR (mode) || RTEMS_RFS_S_ISBLK (mode))                               
    40029fbc:   1289ffe3    mov w3, #0xffffb000             // #-20480                    
    40029fc0:   39400840    ldrb    w0, [x2, #2]                                          
    40029fc4:   39400c41    ldrb    w1, [x2, #3]                                          
    40029fc8:   aa012001    orr x1, x0, x1, lsl #8                                        
    40029fcc:   5ac00421    rev16   w1, w1                                                
    40029fd0:   12003c20    and w0, w1, #0xffff                                           
    40029fd4:   0a030001    and w1, w0, w3                                                
    40029fd8:   7140083f    cmp w1, #0x2, lsl #12                                         
    40029fdc:   540007a0    b.eq    4002a0d0 <rtems_rfs_rtems_fstat+0x150>  // b.none     <== NEVER TAKEN
  buf->st_ino     = rtems_rfs_inode_ino (&inode);                                         
    40029fe0:   b94043e1    ldr w1, [sp, #64]                                             
  buf->st_dev     = (dev_t) (uintptr_t)rtems_rfs_fs_device (fs);                          
    40029fe4:   f94012a2    ldr x2, [x21, #32]                                            
  buf->st_ino     = rtems_rfs_inode_ino (&inode);                                         
    40029fe8:   a9000662    stp x2, x1, [x19]                                             
  buf->st_mode    = rtems_rfs_rtems_mode (mode);                                          
    40029fec:   94000295    bl  4002aa40 <rtems_rfs_rtems_mode>                           
    40029ff0:   b9001260    str w0, [x19, #16]                                            
  links = rtems_rfs_read_u16 (&handle->node->links);                                      
    40029ff4:   f94027e3    ldr x3, [sp, #72]                                             
  if (links == 0xffff)                                                                    
    40029ff8:   529fffe4    mov w4, #0xffff                 // #65535                     
  shared = rtems_rfs_file_get_shared (fs, rtems_rfs_inode_ino (&inode));                  
    40029ffc:   b94043e1    ldr w1, [sp, #64]                                             
    4002a000:   aa1503e0    mov x0, x21                                                   
    4002a004:   39400065    ldrb    w5, [x3]                                              
    4002a008:   39400462    ldrb    w2, [x3, #1]                                          
    4002a00c:   aa0220a2    orr x2, x5, x2, lsl #8                                        
    4002a010:   5ac00442    rev16   w2, w2                                                
    4002a014:   12003c42    and w2, w2, #0xffff                                           
    links = 0;                                                                            
    4002a018:   6b04005f    cmp w2, w4                                                    
    4002a01c:   1a9f1042    csel    w2, w2, wzr, ne  // ne = any                          
  buf->st_nlink   = rtems_rfs_inode_get_links (&inode);                                   
    4002a020:   79002a62    strh    w2, [x19, #20]                                        
  buf->st_uid     = rtems_rfs_inode_get_uid (&inode);                                     
    4002a024:   39401864    ldrb    w4, [x3, #6]                                          
    4002a028:   39401c62    ldrb    w2, [x3, #7]                                          
    4002a02c:   aa022082    orr x2, x4, x2, lsl #8                                        
    4002a030:   5ac00442    rev16   w2, w2                                                
    4002a034:   79002e62    strh    w2, [x19, #22]                                        
  return (rtems_rfs_read_u32 (&handle->node->owner) >> 16) & 0xffff;                      
    4002a038:   39401066    ldrb    w6, [x3, #4]                                          
    4002a03c:   39401465    ldrb    w5, [x3, #5]                                          
    4002a040:   39401864    ldrb    w4, [x3, #6]                                          
    4002a044:   39401c62    ldrb    w2, [x3, #7]                                          
    4002a048:   aa0520c3    orr x3, x6, x5, lsl #8                                        
    4002a04c:   aa044063    orr x3, x3, x4, lsl #16                                       
    4002a050:   aa026062    orr x2, x3, x2, lsl #24                                       
    4002a054:   5ac00842    rev w2, w2                                                    
    4002a058:   53107c42    lsr w2, w2, #16                                               
    4002a05c:   79003262    strh    w2, [x19, #24]                                        
  shared = rtems_rfs_file_get_shared (fs, rtems_rfs_inode_ino (&inode));                  
    4002a060:   94003378    bl  40036e40 <rtems_rfs_file_get_shared>                      
  if (shared)                                                                             
    4002a064:   b40006a0    cbz x0, 4002a138 <rtems_rfs_rtems_fstat+0x1b8>                
    buf->st_blocks  = rtems_rfs_file_shared_get_block_count (shared);                     
    4002a068:   b940b802    ldr w2, [x0, #184]                                            
    buf->st_mtime   = rtems_rfs_file_shared_get_mtime (shared);                           
    4002a06c:   29581005    ldp w5, w4, [x0, #192]                                        
    buf->st_ctime   = rtems_rfs_file_shared_get_ctime (shared);                           
    4002a070:   b940c803    ldr w3, [x0, #200]                                            
    if (S_ISLNK (buf->st_mode))                                                           
    4002a074:   b9401261    ldr w1, [x19, #16]                                            
    buf->st_atime   = rtems_rfs_file_shared_get_atime (shared);                           
    4002a078:   f9001a65    str x5, [x19, #48]                                            
    buf->st_mtime   = rtems_rfs_file_shared_get_mtime (shared);                           
    4002a07c:   f9002264    str x4, [x19, #64]                                            
    if (S_ISLNK (buf->st_mode))                                                           
    4002a080:   12140c21    and w1, w1, #0xf000                                           
    buf->st_ctime   = rtems_rfs_file_shared_get_ctime (shared);                           
    4002a084:   f9002a63    str x3, [x19, #80]                                            
    if (S_ISLNK (buf->st_mode))                                                           
    4002a088:   7140283f    cmp w1, #0xa, lsl #12                                         
    buf->st_blocks  = rtems_rfs_file_shared_get_block_count (shared);                     
    4002a08c:   b9006662    str w2, [x19, #100]                                           
    if (S_ISLNK (buf->st_mode))                                                           
    4002a090:   540004a1    b.ne    4002a124 <rtems_rfs_rtems_fstat+0x1a4>  // b.any      <== ALWAYS TAKEN
      buf->st_size = rtems_rfs_file_shared_get_block_offset (shared);                     
    4002a094:   79417800    ldrh    w0, [x0, #188]                                        <== NOT EXECUTED
    4002a098:   f9001660    str x0, [x19, #40]                                            <== NOT EXECUTED
  buf->st_blksize = rtems_rfs_fs_block_size (fs);                                         
    4002a09c:   f9400aa0    ldr x0, [x21, #16]                                            
    4002a0a0:   b9006260    str w0, [x19, #96]                                            
  rc = rtems_rfs_inode_close (fs, &inode);                                                
    4002a0a4:   9100c3e1    add x1, sp, #0x30                                             
    4002a0a8:   aa1503e0    mov x0, x21                                                   
    4002a0ac:   97fffb9d    bl  40028f20 <rtems_rfs_inode_close>                          
    4002a0b0:   2a0003f3    mov w19, w0                                                   
  if (rc > 0)                                                                             
    4002a0b4:   7100001f    cmp w0, #0x0                                                  
    4002a0b8:   54000aac    b.gt    4002a20c <rtems_rfs_rtems_fstat+0x28c>                <== NEVER TAKEN
}                                                                                         
    4002a0bc:   2a1403e0    mov w0, w20                                                   
    4002a0c0:   a94153f3    ldp x19, x20, [sp, #16]                                       
    4002a0c4:   f94013f5    ldr x21, [sp, #32]                                            
    4002a0c8:   a8c77bfd    ldp x29, x30, [sp], #112                                      
    4002a0cc:   d65f03c0    ret                                                           
  return rtems_rfs_read_u32 (&handle->node->data.blocks[block]);                          
    4002a0d0:   39407041    ldrb    w1, [x2, #28]                                         <== NOT EXECUTED
  temp.__overlay.major = _major;                                                          
    4002a0d4:   d2800004    mov x4, #0x0                    // #0                         <== NOT EXECUTED
    4002a0d8:   39407445    ldrb    w5, [x2, #29]                                         <== NOT EXECUTED
    4002a0dc:   39407847    ldrb    w7, [x2, #30]                                         <== NOT EXECUTED
    4002a0e0:   39407c43    ldrb    w3, [x2, #31]                                         <== NOT EXECUTED
    4002a0e4:   39408048    ldrb    w8, [x2, #32]                                         <== NOT EXECUTED
    4002a0e8:   aa052025    orr x5, x1, x5, lsl #8                                        <== NOT EXECUTED
    4002a0ec:   39408446    ldrb    w6, [x2, #33]                                         <== NOT EXECUTED
    4002a0f0:   aa0740a7    orr x7, x5, x7, lsl #16                                       <== NOT EXECUTED
    4002a0f4:   39408845    ldrb    w5, [x2, #34]                                         <== NOT EXECUTED
    4002a0f8:   aa0360e3    orr x3, x7, x3, lsl #24                                       <== NOT EXECUTED
    4002a0fc:   39408c41    ldrb    w1, [x2, #35]                                         <== NOT EXECUTED
    4002a100:   5ac00862    rev w2, w3                                                    <== NOT EXECUTED
    4002a104:   aa062103    orr x3, x8, x6, lsl #8                                        <== NOT EXECUTED
    4002a108:   aa054063    orr x3, x3, x5, lsl #16                                       <== NOT EXECUTED
    4002a10c:   b3407c44    bfxil   x4, x2, #0, #32                                       <== NOT EXECUTED
    4002a110:   aa016061    orr x1, x3, x1, lsl #24                                       <== NOT EXECUTED
    4002a114:   5ac00821    rev w1, w1                                                    <== NOT EXECUTED
  temp.__overlay.minor = _minor;                                                          
    4002a118:   b3607c24    bfi x4, x1, #32, #32                                          <== NOT EXECUTED
    buf->st_rdev =                                                                        
    4002a11c:   f9001264    str x4, [x19, #32]                                            <== NOT EXECUTED
    4002a120:   17ffffb0    b   40029fe0 <rtems_rfs_rtems_fstat+0x60>                     <== NOT EXECUTED
 */                                                                                       
static inline rtems_rfs_pos                                                               
rtems_rfs_file_shared_get_size (rtems_rfs_file_system* fs,                                
                                rtems_rfs_file_shared* shared)                            
{                                                                                         
  return rtems_rfs_block_get_size (fs, &shared->size);                                    
    4002a124:   9102e001    add x1, x0, #0xb8                                             
    4002a128:   aa1503e0    mov x0, x21                                                   
    4002a12c:   940026e9    bl  40033cd0 <rtems_rfs_block_get_size>                       
      buf->st_size = rtems_rfs_file_shared_get_size (fs, shared);                         
    4002a130:   f9001660    str x0, [x19, #40]                                            
    4002a134:   17ffffda    b   4002a09c <rtems_rfs_rtems_fstat+0x11c>                    
    buf->st_atime   = rtems_rfs_inode_get_atime (&inode);                                 
    4002a138:   f94027e0    ldr x0, [sp, #72]                                             
    if (S_ISLNK (buf->st_mode))                                                           
    4002a13c:   b9401264    ldr w4, [x19, #16]                                            
    4002a140:   39404005    ldrb    w5, [x0, #16]                                         
    4002a144:   12140c84    and w4, w4, #0xf000                                           
    4002a148:   39404403    ldrb    w3, [x0, #17]                                         
    4002a14c:   7140289f    cmp w4, #0xa, lsl #12                                         
    4002a150:   39404802    ldrb    w2, [x0, #18]                                         
    4002a154:   39404c01    ldrb    w1, [x0, #19]                                         
    4002a158:   aa0320a3    orr x3, x5, x3, lsl #8                                        
    4002a15c:   aa024062    orr x2, x3, x2, lsl #16                                       
    4002a160:   aa016041    orr x1, x2, x1, lsl #24                                       
    buf->st_atime   = rtems_rfs_inode_get_atime (&inode);                                 
    4002a164:   5ac00821    rev w1, w1                                                    
    4002a168:   f9001a61    str x1, [x19, #48]                                            
  return rtems_rfs_read_u32 (&handle->node->mtime);                                       
    4002a16c:   39405004    ldrb    w4, [x0, #20]                                         
    4002a170:   39405403    ldrb    w3, [x0, #21]                                         
    4002a174:   39405802    ldrb    w2, [x0, #22]                                         
    4002a178:   39405c01    ldrb    w1, [x0, #23]                                         
    4002a17c:   aa032083    orr x3, x4, x3, lsl #8                                        
    4002a180:   aa024062    orr x2, x3, x2, lsl #16                                       
    4002a184:   aa016041    orr x1, x2, x1, lsl #24                                       
    buf->st_mtime   = rtems_rfs_inode_get_mtime (&inode);                                 
    4002a188:   5ac00821    rev w1, w1                                                    
    4002a18c:   f9002261    str x1, [x19, #64]                                            
  return rtems_rfs_read_u32 (&handle->node->ctime);                                       
    4002a190:   39406004    ldrb    w4, [x0, #24]                                         
    4002a194:   39406403    ldrb    w3, [x0, #25]                                         
    4002a198:   39406802    ldrb    w2, [x0, #26]                                         
    4002a19c:   39406c01    ldrb    w1, [x0, #27]                                         
    4002a1a0:   aa032083    orr x3, x4, x3, lsl #8                                        
    4002a1a4:   aa024062    orr x2, x3, x2, lsl #16                                       
    4002a1a8:   aa016041    orr x1, x2, x1, lsl #24                                       
    buf->st_ctime   = rtems_rfs_inode_get_ctime (&inode);                                 
    4002a1ac:   5ac00821    rev w1, w1                                                    
    4002a1b0:   f9002a61    str x1, [x19, #80]                                            
  return rtems_rfs_read_u32 (&handle->node->block_count);                                 
    4002a1b4:   39403004    ldrb    w4, [x0, #12]                                         
    4002a1b8:   39403403    ldrb    w3, [x0, #13]                                         
    4002a1bc:   39403802    ldrb    w2, [x0, #14]                                         
    4002a1c0:   39403c01    ldrb    w1, [x0, #15]                                         
    4002a1c4:   aa032083    orr x3, x4, x3, lsl #8                                        
    4002a1c8:   aa024062    orr x2, x3, x2, lsl #16                                       
    4002a1cc:   aa016041    orr x1, x2, x1, lsl #24                                       
    4002a1d0:   5ac00821    rev w1, w1                                                    
    buf->st_blocks  = rtems_rfs_inode_get_block_count (&inode);                           
    4002a1d4:   b9006661    str w1, [x19, #100]                                           
    if (S_ISLNK (buf->st_mode))                                                           
    4002a1d8:   54000101    b.ne    4002a1f8 <rtems_rfs_rtems_fstat+0x278>  // b.any      <== ALWAYS TAKEN
      buf->st_size = rtems_rfs_inode_get_block_offset (&inode);                           
    4002a1dc:   39402801    ldrb    w1, [x0, #10]                                         <== NOT EXECUTED
    4002a1e0:   39402c00    ldrb    w0, [x0, #11]                                         <== NOT EXECUTED
    4002a1e4:   aa002020    orr x0, x1, x0, lsl #8                                        <== NOT EXECUTED
    4002a1e8:   5ac00400    rev16   w0, w0                                                <== NOT EXECUTED
    4002a1ec:   92403c00    and x0, x0, #0xffff                                           <== NOT EXECUTED
    4002a1f0:   f9001660    str x0, [x19, #40]                                            <== NOT EXECUTED
    4002a1f4:   17ffffaa    b   4002a09c <rtems_rfs_rtems_fstat+0x11c>                    <== NOT EXECUTED
      buf->st_size = rtems_rfs_inode_get_size (fs, &inode);                               
    4002a1f8:   9100c3e1    add x1, sp, #0x30                                             
    4002a1fc:   aa1503e0    mov x0, x21                                                   
    4002a200:   97fffd30    bl  400296c0 <rtems_rfs_inode_get_size>                       
    4002a204:   f9001660    str x0, [x19, #40]                                            
    4002a208:   17ffffa5    b   4002a09c <rtems_rfs_rtems_fstat+0x11c>                    
    return rtems_rfs_rtems_error ("stat: closing inode", rc);                             
    4002a20c:   94004da0    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    4002a210:   12800014    mov w20, #0xffffffff                // #-1                    <== NOT EXECUTED
    4002a214:   b9000013    str w19, [x0]                                                 <== NOT EXECUTED
    4002a218:   17ffffa9    b   4002a0bc <rtems_rfs_rtems_fstat+0x13c>                    <== NOT EXECUTED
    return rtems_rfs_rtems_error ("stat: opening inode", rc);                             
    4002a21c:   94004d9c    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    4002a220:   b9000014    str w20, [x0]                                                 <== NOT EXECUTED
    4002a224:   12800014    mov w20, #0xffffffff                // #-1                    <== NOT EXECUTED
    4002a228:   17ffffa5    b   4002a0bc <rtems_rfs_rtems_fstat+0x13c>                    <== NOT EXECUTED
    4002a22c:   00000000    udf #0                                                        
                                                                                          

000000004002a4e0 <rtems_rfs_rtems_initialise>: {
    4002a4e0:   a9ba7bfd    stp x29, x30, [sp, #-96]!                                     
    4002a4e4:   910003fd    mov x29, sp                                                   
    4002a4e8:   a90153f3    stp x19, x20, [sp, #16]                                       
    4002a4ec:   a9025bf5    stp x21, x22, [sp, #32]                                       
    4002a4f0:   a90363f7    stp x23, x24, [sp, #48]                                       
    4002a4f4:   a9046bf9    stp x25, x26, [sp, #64]                                       
    4002a4f8:   aa0003f9    mov x25, x0                                                   
  while (options)                                                                         
    4002a4fc:   b4000ee1    cbz x1, 4002a6d8 <rtems_rfs_rtems_initialise+0x1f8>           <== ALWAYS TAKEN
    4002a500:   f00000f6    adrp    x22, 40049000 <IMFS_node_control_sym_link+0x640>      <== NOT EXECUTED
    4002a504:   912ba2d6    add x22, x22, #0xae8                                          <== NOT EXECUTED
    4002a508:   f00000f5    adrp    x21, 40049000 <IMFS_node_control_sym_link+0x640>      <== NOT EXECUTED
    4002a50c:   912be2b5    add x21, x21, #0xaf8                                          <== NOT EXECUTED
    else if (strncmp (options, "no-local-cache",                                          
    4002a510:   f00000f8    adrp    x24, 40049000 <IMFS_node_control_sym_link+0x640>      <== NOT EXECUTED
    4002a514:   912c2318    add x24, x24, #0xb08                                          <== NOT EXECUTED
    else if (strncmp (options, "max-held-bufs",                                           
    4002a518:   f00000fa    adrp    x26, 40049000 <IMFS_node_control_sym_link+0x640>      <== NOT EXECUTED
    4002a51c:   912c635a    add x26, x26, #0xb18                                          <== NOT EXECUTED
    4002a520:   aa0103f3    mov x19, x1                                                   <== NOT EXECUTED
  uint32_t                 max_held_buffers = RTEMS_RFS_FS_MAX_HELD_BUFFERS;              
    4002a524:   528000b7    mov w23, #0x5                       // #5                     <== NOT EXECUTED
  uint32_t                 flags = 0;                                                     
    4002a528:   52800014    mov w20, #0x0                       // #0                     <== NOT EXECUTED
    4002a52c:   d503201f    nop                                                           <== NOT EXECUTED
    printf ("options=%s\n", options);                                                     
    4002a530:   aa1303e1    mov x1, x19                                                   <== NOT EXECUTED
    4002a534:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    4002a538:   97ffdfb6    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    if (strncmp (options, "hold-bitmaps",                                                 
    4002a53c:   aa1503e1    mov x1, x21                                                   <== NOT EXECUTED
    4002a540:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    4002a544:   d2800182    mov x2, #0xc                    // #12                        <== NOT EXECUTED
    4002a548:   940051fd    bl  4003ed3c <strncmp>                                        <== NOT EXECUTED
    4002a54c:   35000620    cbnz    w0, 4002a610 <rtems_rfs_rtems_initialise+0x130>       <== NOT EXECUTED
      flags |= RTEMS_RFS_FS_BITMAPS_HOLD;                                                 
    4002a550:   32000294    orr w20, w20, #0x1                                            <== NOT EXECUTED
    options = strchr (options, ',');                                                      
    4002a554:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    4002a558:   52800581    mov w1, #0x2c                   // #44                        <== NOT EXECUTED
    4002a55c:   94004fff    bl  4003e558 <strchr>                                         <== NOT EXECUTED
    if (options)                                                                          
    4002a560:   b4000080    cbz x0, 4002a570 <rtems_rfs_rtems_initialise+0x90>            <== NOT EXECUTED
      ++options;                                                                          
    4002a564:   91000413    add x19, x0, #0x1                                             <== NOT EXECUTED
      if (*options == '\0')                                                               
    4002a568:   39400400    ldrb    w0, [x0, #1]                                          <== NOT EXECUTED
    4002a56c:   35fffe20    cbnz    w0, 4002a530 <rtems_rfs_rtems_initialise+0x50>        <== NOT EXECUTED
  rtems = malloc (sizeof (rtems_rfs_rtems_private));                                      
    4002a570:   d2800021    mov x1, #0x1                    // #1                         
    4002a574:   d2800500    mov x0, #0x28                   // #40                        
    4002a578:   9400201a    bl  400325e0 <calloc>                                         
    4002a57c:   aa0003f3    mov x19, x0                                                   
  if (!rtems)                                                                             
    4002a580:   b4000bc0    cbz x0, 4002a6f8 <rtems_rfs_rtems_initialise+0x218>           <== NEVER TAKEN
  rc = rtems_rfs_mutex_create (&rtems->access);                                           
    4002a584:   9400372f    bl  40038240 <rtems_rfs_mutex_create>                         
    4002a588:   2a0003f5    mov w21, w0                                                   
  if (rc > 0)                                                                             
    4002a58c:   710002bf    cmp w21, #0x0                                                 
    free (rtems);                                                                         
    4002a590:   aa1303e0    mov x0, x19                                                   
  if (rc > 0)                                                                             
    4002a594:   54000a8c    b.gt    4002a6e4 <rtems_rfs_rtems_initialise+0x204>           <== NEVER TAKEN
  _Mutex_recursive_Acquire( mutex );                                                      
    4002a598:   94000922    bl  4002ca20 <_Mutex_recursive_Acquire>                       
  rc = rtems_rfs_fs_open (mt_entry->dev, rtems, flags, max_held_buffers, &fs);            
    4002a59c:   f9403b20    ldr x0, [x25, #112]                                           
    4002a5a0:   2a1403e2    mov w2, w20                                                   
    4002a5a4:   2a1703e3    mov w3, w23                                                   
    4002a5a8:   910163e4    add x4, sp, #0x58                                             
    4002a5ac:   aa1303e1    mov x1, x19                                                   
    4002a5b0:   9400323c    bl  40036ea0 <rtems_rfs_fs_open>                              
    4002a5b4:   2a0003f4    mov w20, w0                                                   
  if (rc)                                                                                 
    4002a5b8:   35000520    cbnz    w0, 4002a65c <rtems_rfs_rtems_initialise+0x17c>       <== NEVER TAKEN
  mt_entry->fs_info                          = fs;                                        
    4002a5bc:   f9402fe0    ldr x0, [sp, #88]                                             
  mt_entry->ops                              = &rtems_rfs_ops;                            
    4002a5c0:   f00000e1    adrp    x1, 40049000 <IMFS_node_control_sym_link+0x640>       
    4002a5c4:   912ca021    add x1, x1, #0xb28                                            
  mt_entry->mt_fs_root->location.node_access = (void*) RTEMS_RFS_ROOT_INO;                
    4002a5c8:   d2800023    mov x3, #0x1                    // #1                         
    4002a5cc:   f9402722    ldr x2, [x25, #72]                                            
  rtems_rfs_rtems_private* rtems = rtems_rfs_fs_user (fs);                                
    4002a5d0:   f9407c13    ldr x19, [x0, #248]                                           
  mt_entry->ops                              = &rtems_rfs_ops;                            
    4002a5d4:   a9010720    stp x0, x1, [x25, #16]                                        
  mt_entry->mt_fs_root->location.handlers    = &rtems_rfs_rtems_dir_handlers;             
    4002a5d8:   f00000e1    adrp    x1, 40049000 <IMFS_node_control_sym_link+0x640>       
    4002a5dc:   91314021    add x1, x1, #0xc50                                            
  mt_entry->mt_fs_root->location.node_access = (void*) RTEMS_RFS_ROOT_INO;                
    4002a5e0:   f9000843    str x3, [x2, #16]                                             
  mt_entry->mt_fs_root->location.handlers    = &rtems_rfs_rtems_dir_handlers;             
    4002a5e4:   f9001041    str x1, [x2, #32]                                             
  rtems_rfs_buffers_release (fs);                                                         
    4002a5e8:   97fff3c6    bl  40027500 <rtems_rfs_buffers_release>                      
  _Mutex_recursive_Release( mutex );                                                      
    4002a5ec:   aa1303e0    mov x0, x19                                                   
    4002a5f0:   94000930    bl  4002cab0 <_Mutex_recursive_Release>                       
}                                                                                         
    4002a5f4:   2a1403e0    mov w0, w20                                                   
    4002a5f8:   a94153f3    ldp x19, x20, [sp, #16]                                       
    4002a5fc:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    4002a600:   a94363f7    ldp x23, x24, [sp, #48]                                       
    4002a604:   a9446bf9    ldp x25, x26, [sp, #64]                                       
    4002a608:   a8c67bfd    ldp x29, x30, [sp], #96                                       
    4002a60c:   d65f03c0    ret                                                           
    else if (strncmp (options, "no-local-cache",                                          
    4002a610:   aa1803e1    mov x1, x24                                                   <== NOT EXECUTED
    4002a614:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    4002a618:   d28001c2    mov x2, #0xe                    // #14                        <== NOT EXECUTED
    4002a61c:   940051c8    bl  4003ed3c <strncmp>                                        <== NOT EXECUTED
    4002a620:   35000060    cbnz    w0, 4002a62c <rtems_rfs_rtems_initialise+0x14c>       <== NOT EXECUTED
      flags |= RTEMS_RFS_FS_NO_LOCAL_CACHE;                                               
    4002a624:   321f0294    orr w20, w20, #0x2                                            <== NOT EXECUTED
    4002a628:   17ffffcb    b   4002a554 <rtems_rfs_rtems_initialise+0x74>                <== NOT EXECUTED
    else if (strncmp (options, "max-held-bufs",                                           
    4002a62c:   aa1a03e1    mov x1, x26                                                   <== NOT EXECUTED
    4002a630:   d28001a2    mov x2, #0xd                    // #13                        <== NOT EXECUTED
    4002a634:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    4002a638:   940051c1    bl  4003ed3c <strncmp>                                        <== NOT EXECUTED
      max_held_buffers = strtoul (options + sizeof ("max-held-bufs"), 0, 0);              
    4002a63c:   52800002    mov w2, #0x0                    // #0                         <== NOT EXECUTED
    else if (strncmp (options, "max-held-bufs",                                           
    4002a640:   2a0003e3    mov w3, w0                                                    <== NOT EXECUTED
      max_held_buffers = strtoul (options + sizeof ("max-held-bufs"), 0, 0);              
    4002a644:   d2800001    mov x1, #0x0                    // #0                         <== NOT EXECUTED
    4002a648:   91003a60    add x0, x19, #0xe                                             <== NOT EXECUTED
    else if (strncmp (options, "max-held-bufs",                                           
    4002a64c:   35000303    cbnz    w3, 4002a6ac <rtems_rfs_rtems_initialise+0x1cc>       <== NOT EXECUTED
      max_held_buffers = strtoul (options + sizeof ("max-held-bufs"), 0, 0);              
    4002a650:   94005287    bl  4003f06c <strtoul>                                        <== NOT EXECUTED
    4002a654:   2a0003f7    mov w23, w0                                                   <== NOT EXECUTED
    4002a658:   17ffffbf    b   4002a554 <rtems_rfs_rtems_initialise+0x74>                <== NOT EXECUTED
    4002a65c:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    4002a660:   94000914    bl  4002cab0 <_Mutex_recursive_Release>                       <== NOT EXECUTED
    rtems_rfs_mutex_destroy (&rtems->access);                                             
    4002a664:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    4002a668:   940036fe    bl  40038260 <rtems_rfs_mutex_destroy>                        <== NOT EXECUTED
    free (rtems);                                                                         
    4002a66c:   aa1303e0    mov x0, x19                                                   <== NOT EXECUTED
    4002a670:   97ffe050    bl  400227b0 <free>                                           <== NOT EXECUTED
    return rtems_rfs_rtems_error ("initialise: open", errno);                             
    4002a674:   94004c86    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    4002a678:   aa0003f3    mov x19, x0                                                   <== NOT EXECUTED
    4002a67c:   94004c84    bl  4003d88c <__errno>                                        <== NOT EXECUTED
}                                                                                         
    4002a680:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    return rtems_rfs_rtems_error ("initialise: open", errno);                             
    4002a684:   b9400261    ldr w1, [x19]                                                 <== NOT EXECUTED
    4002a688:   b9000001    str w1, [x0]                                                  <== NOT EXECUTED
    4002a68c:   7100003f    cmp w1, #0x0                                                  <== NOT EXECUTED
    4002a690:   5a9f03f4    csetm   w20, ne  // ne = any                                  <== NOT EXECUTED
}                                                                                         
    4002a694:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    4002a698:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    4002a69c:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    4002a6a0:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    4002a6a4:   a8c67bfd    ldp x29, x30, [sp], #96                                       <== NOT EXECUTED
    4002a6a8:   d65f03c0    ret                                                           <== NOT EXECUTED
      return rtems_rfs_rtems_error ("initialise: invalid option", EINVAL);                
    4002a6ac:   94004c78    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    4002a6b0:   12800014    mov w20, #0xffffffff                // #-1                    <== NOT EXECUTED
    4002a6b4:   528002c1    mov w1, #0x16                   // #22                        <== NOT EXECUTED
    4002a6b8:   b9000001    str w1, [x0]                                                  <== NOT EXECUTED
}                                                                                         
    4002a6bc:   2a1403e0    mov w0, w20                                                   <== NOT EXECUTED
    4002a6c0:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    4002a6c4:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    4002a6c8:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    4002a6cc:   a9446bf9    ldp x25, x26, [sp, #64]                                       <== NOT EXECUTED
    4002a6d0:   a8c67bfd    ldp x29, x30, [sp], #96                                       <== NOT EXECUTED
    4002a6d4:   d65f03c0    ret                                                           <== NOT EXECUTED
  uint32_t                 max_held_buffers = RTEMS_RFS_FS_MAX_HELD_BUFFERS;              
    4002a6d8:   528000b7    mov w23, #0x5                       // #5                     
  uint32_t                 flags = 0;                                                     
    4002a6dc:   52800014    mov w20, #0x0                       // #0                     
    4002a6e0:   17ffffa4    b   4002a570 <rtems_rfs_rtems_initialise+0x90>                
    free (rtems);                                                                         
    4002a6e4:   97ffe033    bl  400227b0 <free>                                           <== NOT EXECUTED
    return rtems_rfs_rtems_error ("initialise: cannot create mutex", rc);                 
    4002a6e8:   12800014    mov w20, #0xffffffff                // #-1                    <== NOT EXECUTED
    4002a6ec:   94004c68    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    4002a6f0:   b9000015    str w21, [x0]                                                 <== NOT EXECUTED
    4002a6f4:   17ffffc0    b   4002a5f4 <rtems_rfs_rtems_initialise+0x114>               <== NOT EXECUTED
    return rtems_rfs_rtems_error ("initialise: local data", ENOMEM);                      
    4002a6f8:   94004c65    bl  4003d88c <__errno>                                        <== NOT EXECUTED
    4002a6fc:   12800014    mov w20, #0xffffffff                // #-1                    <== NOT EXECUTED
    4002a700:   52800181    mov w1, #0xc                    // #12                        <== NOT EXECUTED
    4002a704:   b9000001    str w1, [x0]                                                  <== NOT EXECUTED
    4002a708:   17ffffbb    b   4002a5f4 <rtems_rfs_rtems_initialise+0x114>               <== NOT EXECUTED
    4002a70c:   00000000    udf #0                                                        
                                                                                          

000000004002a970 <rtems_rfs_rtems_set_handlers>: */ bool rtems_rfs_rtems_set_handlers (rtems_filesystem_location_info_t* loc, rtems_rfs_inode_handle* inode) {
    4002a970:   aa0003e2    mov x2, x0                                                    
    4002a974:   f9400c20    ldr x0, [x1, #24]                                             
    4002a978:   39400803    ldrb    w3, [x0, #2]                                          
    4002a97c:   39400c01    ldrb    w1, [x0, #3]                                          
  uint16_t mode = rtems_rfs_inode_get_mode (inode);                                       
  loc->handlers = NULL;                                                                   
    4002a980:   f900105f    str xzr, [x2, #32]                                            
    4002a984:   aa012061    orr x1, x3, x1, lsl #8                                        
    4002a988:   5ac00421    rev16   w1, w1                                                
    4002a98c:   12140c23    and w3, w1, #0xf000                                           
  if (RTEMS_RFS_S_ISDIR (mode))                                                           
    4002a990:   7140107f    cmp w3, #0x4, lsl #12                                         
    4002a994:   54000280    b.eq    4002a9e4 <rtems_rfs_rtems_set_handlers+0x74>  // b.none
    loc->handlers = rtems_rfs_rtems_handlers (dir);                                       
  else if (RTEMS_RFS_S_ISCHR (mode) || RTEMS_RFS_S_ISBLK(mode))                           
    4002a998:   12003c21    and w1, w1, #0xffff                                           
    4002a99c:   1289ffe0    mov w0, #0xffffb000             // #-20480                    
    4002a9a0:   0a000020    and w0, w1, w0                                                
    4002a9a4:   7140081f    cmp w0, #0x2, lsl #12                                         
    4002a9a8:   54000140    b.eq    4002a9d0 <rtems_rfs_rtems_set_handlers+0x60>  // b.none<== NEVER TAKEN
    loc->handlers = rtems_rfs_rtems_handlers (device);                                    
  else if (RTEMS_RFS_S_ISLNK (mode))                                                      
    4002a9ac:   7140287f    cmp w3, #0xa, lsl #12                                         
    4002a9b0:   54000340    b.eq    4002aa18 <rtems_rfs_rtems_set_handlers+0xa8>  // b.none<== NEVER TAKEN
    loc->handlers = rtems_rfs_rtems_handlers (link);                                      
  else if (RTEMS_RFS_S_ISREG (mode))                                                      
    4002a9b4:   7140207f    cmp w3, #0x8, lsl #12                                         
    4002a9b8:   54000201    b.ne    4002a9f8 <rtems_rfs_rtems_set_handlers+0x88>  // b.any<== NEVER TAKEN
    loc->handlers = rtems_rfs_rtems_handlers (file);                                      
    4002a9bc:   b0000101    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          
    4002a9c0:   91186021    add x1, x1, #0x618                                            
  else                                                                                    
  {                                                                                       
    printf ("rtems-rfs: mode type unknown: %04x\n", mode);                                
    return false;                                                                         
  }                                                                                       
  return true;                                                                            
    4002a9c4:   52800020    mov w0, #0x1                    // #1                         
    loc->handlers = rtems_rfs_rtems_handlers (file);                                      
    4002a9c8:   f9001041    str x1, [x2, #32]                                             
}                                                                                         
    4002a9cc:   d65f03c0    ret                                                           
    loc->handlers = rtems_rfs_rtems_handlers (device);                                    
    4002a9d0:   b0000101    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    4002a9d4:   91166021    add x1, x1, #0x598                                            <== NOT EXECUTED
  return true;                                                                            
    4002a9d8:   52800020    mov w0, #0x1                    // #1                         <== NOT EXECUTED
    loc->handlers = rtems_rfs_rtems_handlers (device);                                    
    4002a9dc:   f9001041    str x1, [x2, #32]                                             <== NOT EXECUTED
    4002a9e0:   d65f03c0    ret                                                           <== NOT EXECUTED
    loc->handlers = rtems_rfs_rtems_handlers (dir);                                       
    4002a9e4:   f00000e1    adrp    x1, 40049000 <IMFS_node_control_sym_link+0x640>       
    4002a9e8:   91314021    add x1, x1, #0xc50                                            
  return true;                                                                            
    4002a9ec:   52800020    mov w0, #0x1                    // #1                         
    loc->handlers = rtems_rfs_rtems_handlers (dir);                                       
    4002a9f0:   f9001041    str x1, [x2, #32]                                             
    4002a9f4:   d65f03c0    ret                                                           
{                                                                                         
    4002a9f8:   a9bf7bfd    stp x29, x30, [sp, #-16]!                                     <== NOT EXECUTED
    printf ("rtems-rfs: mode type unknown: %04x\n", mode);                                
    4002a9fc:   f00000e0    adrp    x0, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    4002aa00:   91334000    add x0, x0, #0xcd0                                            <== NOT EXECUTED
{                                                                                         
    4002aa04:   910003fd    mov x29, sp                                                   <== NOT EXECUTED
    printf ("rtems-rfs: mode type unknown: %04x\n", mode);                                
    4002aa08:   97ffde82    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    return false;                                                                         
    4002aa0c:   52800000    mov w0, #0x0                    // #0                         <== NOT EXECUTED
}                                                                                         
    4002aa10:   a8c17bfd    ldp x29, x30, [sp], #16                                       <== NOT EXECUTED
    4002aa14:   d65f03c0    ret                                                           <== NOT EXECUTED
    loc->handlers = rtems_rfs_rtems_handlers (link);                                      
    4002aa18:   f00000e1    adrp    x1, 40049000 <IMFS_node_control_sym_link+0x640>       <== NOT EXECUTED
    4002aa1c:   912f4021    add x1, x1, #0xbd0                                            <== NOT EXECUTED
  return true;                                                                            
    4002aa20:   52800020    mov w0, #0x1                    // #1                         <== NOT EXECUTED
    loc->handlers = rtems_rfs_rtems_handlers (link);                                      
    4002aa24:   f9001041    str x1, [x2, #32]                                             <== NOT EXECUTED
    4002aa28:   d65f03c0    ret                                                           <== NOT EXECUTED
    4002aa2c:   00000000    udf #0                                                        
                                                                                          

0000000040037d60 <rtems_rfs_symlink>: const char* link, int link_length, uid_t uid, gid_t gid, rtems_rfs_ino parent) {
    40037d60:   d104c3ff    sub sp, sp, #0x130                                            <== NOT EXECUTED
    40037d64:   a9017bfd    stp x29, x30, [sp, #16]                                       <== NOT EXECUTED
    40037d68:   910043fd    add x29, sp, #0x10                                            <== NOT EXECUTED
    40037d6c:   a90253f3    stp x19, x20, [sp, #32]                                       <== NOT EXECUTED
    40037d70:   aa0003f4    mov x20, x0                                                   <== NOT EXECUTED
  rtems_rfs_inode_handle inode;                                                           
  rtems_rfs_ino          ino;                                                             
  int                    rc;                                                              
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_SYMLINK))                                          
    40037d74:   d2c00040    mov x0, #0x200000000            // #8589934592                <== NOT EXECUTED
{                                                                                         
    40037d78:   a9035bf5    stp x21, x22, [sp, #48]                                       <== NOT EXECUTED
    40037d7c:   aa0103f6    mov x22, x1                                                   <== NOT EXECUTED
    40037d80:   2a0403f5    mov w21, w4                                                   <== NOT EXECUTED
    40037d84:   a90463f7    stp x23, x24, [sp, #64]                                       <== NOT EXECUTED
    40037d88:   aa0303f8    mov x24, x3                                                   <== NOT EXECUTED
    40037d8c:   2a0703f7    mov w23, w7                                                   <== NOT EXECUTED
    40037d90:   a9056bf9    stp x25, x26, [sp, #80]                                       <== NOT EXECUTED
    40037d94:   12003cb9    and w25, w5, #0xffff                                          <== NOT EXECUTED
    40037d98:   12003cda    and w26, w6, #0xffff                                          <== NOT EXECUTED
    40037d9c:   f90033fb    str x27, [sp, #96]                                            <== NOT EXECUTED
    40037da0:   2a0203fb    mov w27, w2                                                   <== NOT EXECUTED
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_SYMLINK))                                          
    40037da4:   97ffcb2b    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40037da8:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037dac:   540008e1    b.ne    40037ec8 <rtems_rfs_symlink+0x168>  // b.any          <== NOT EXECUTED
    printf (" link:");                                                                    
    for (c = 0; c < link_length; c++)                                                     
      printf ("%c", link[c]);                                                             
  }                                                                                       
                                                                                          
  if (link_length >= rtems_rfs_fs_block_size (fs))                                        
    40037db0:   f9400a80    ldr x0, [x20, #16]                                            <== NOT EXECUTED
    40037db4:   93407ebb    sxtw    x27, w21                                              <== NOT EXECUTED
    return ENAMETOOLONG;                                                                  
    40037db8:   52800b73    mov w19, #0x5b                      // #91                    <== NOT EXECUTED
  if (link_length >= rtems_rfs_fs_block_size (fs))                                        
    40037dbc:   eb00037f    cmp x27, x0                                                   <== NOT EXECUTED
    40037dc0:   54000222    b.cs    40037e04 <rtems_rfs_symlink+0xa4>  // b.hs, b.nlast   <== NOT EXECUTED
                                                                                          
  rc = rtems_rfs_inode_create (fs, parent, name, strlen (name),                           
    40037dc4:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    40037dc8:   94001bcc    bl  4003ecf8 <strlen>                                         <== NOT EXECUTED
    40037dcc:   9101e3e1    add x1, sp, #0x78                                             <== NOT EXECUTED
    40037dd0:   f90003e1    str x1, [sp]                                                  <== NOT EXECUTED
    40037dd4:   aa0003e3    mov x3, x0                                                    <== NOT EXECUTED
    40037dd8:   2a1a03e7    mov w7, w26                                                   <== NOT EXECUTED
    40037ddc:   2a1903e6    mov w6, w25                                                   <== NOT EXECUTED
    40037de0:   aa1603e2    mov x2, x22                                                   <== NOT EXECUTED
    40037de4:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40037de8:   2a1703e1    mov w1, w23                                                   <== NOT EXECUTED
    40037dec:   52800025    mov w5, #0x1                    // #1                         <== NOT EXECUTED
    40037df0:   128bc004    mov w4, #0xffffa1ff             // #-24065                    <== NOT EXECUTED
    40037df4:   97ffc547    bl  40029310 <rtems_rfs_inode_create>                         <== NOT EXECUTED
    40037df8:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
                               RTEMS_RFS_S_SYMLINK,                                       
                               1, uid, gid, &ino);                                        
  if (rc > 0)                                                                             
    40037dfc:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40037e00:   5400014d    b.le    40037e28 <rtems_rfs_symlink+0xc8>                     <== NOT EXECUTED
  rtems_rfs_inode_set_block_offset (&inode, link_length);                                 
                                                                                          
  rc = rtems_rfs_inode_close (fs, &inode);                                                
                                                                                          
  return rc;                                                                              
}                                                                                         
    40037e04:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40037e08:   a9417bfd    ldp x29, x30, [sp, #16]                                       <== NOT EXECUTED
    40037e0c:   a94253f3    ldp x19, x20, [sp, #32]                                       <== NOT EXECUTED
    40037e10:   a9435bf5    ldp x21, x22, [sp, #48]                                       <== NOT EXECUTED
    40037e14:   a94463f7    ldp x23, x24, [sp, #64]                                       <== NOT EXECUTED
    40037e18:   a9456bf9    ldp x25, x26, [sp, #80]                                       <== NOT EXECUTED
    40037e1c:   f94033fb    ldr x27, [sp, #96]                                            <== NOT EXECUTED
    40037e20:   9104c3ff    add sp, sp, #0x130                                            <== NOT EXECUTED
    40037e24:   d65f03c0    ret                                                           <== NOT EXECUTED
  rc = rtems_rfs_inode_open (fs, ino, &inode, true);                                      
    40037e28:   b9407be1    ldr w1, [sp, #120]                                            <== NOT EXECUTED
    40037e2c:   910243e2    add x2, sp, #0x90                                             <== NOT EXECUTED
    40037e30:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40037e34:   52800023    mov w3, #0x1                    // #1                         <== NOT EXECUTED
    40037e38:   97ffc3be    bl  40028d30 <rtems_rfs_inode_open>                           <== NOT EXECUTED
    40037e3c:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
  if (rc > 0)                                                                             
    40037e40:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40037e44:   54fffe0c    b.gt    40037e04 <rtems_rfs_symlink+0xa4>                     <== NOT EXECUTED
  if (link_length < RTEMS_RFS_INODE_DATA_NAME_SIZE)                                       
    40037e48:   71004ebf    cmp w21, #0x13                                                <== NOT EXECUTED
    40037e4c:   54000788    b.hi    40037f3c <rtems_rfs_symlink+0x1dc>  // b.pmore        <== NOT EXECUTED
    memset (inode.node->data.name, 0, RTEMS_RFS_INODE_DATA_NAME_SIZE);                    
    40037e50:   f94057e0    ldr x0, [sp, #168]                                            <== NOT EXECUTED
    40037e54:   d2800282    mov x2, #0x14                   // #20                        <== NOT EXECUTED
    40037e58:   52800001    mov w1, #0x0                    // #0                         <== NOT EXECUTED
    40037e5c:   91007000    add x0, x0, #0x1c                                             <== NOT EXECUTED
    40037e60:   94001853    bl  4003dfac <memset>                                         <== NOT EXECUTED
    memcpy (inode.node->data.name, link, link_length);                                    
    40037e64:   f94057e0    ldr x0, [sp, #168]                                            <== NOT EXECUTED
    40037e68:   aa1b03e2    mov x2, x27                                                   <== NOT EXECUTED
    40037e6c:   aa1803e1    mov x1, x24                                                   <== NOT EXECUTED
    40037e70:   91007000    add x0, x0, #0x1c                                             <== NOT EXECUTED
    40037e74:   940017f8    bl  4003de54 <memcpy>                                         <== NOT EXECUTED
  rtems_rfs_write_u32 (&handle->node->block_count, block_count);                          
    40037e78:   f94057e0    ldr x0, [sp, #168]                                            <== NOT EXECUTED
    40037e7c:   3900301f    strb    wzr, [x0, #12]                                        <== NOT EXECUTED
    40037e80:   f94057e0    ldr x0, [sp, #168]                                            <== NOT EXECUTED
    40037e84:   3900341f    strb    wzr, [x0, #13]                                        <== NOT EXECUTED
    40037e88:   f94057e0    ldr x0, [sp, #168]                                            <== NOT EXECUTED
    40037e8c:   3900381f    strb    wzr, [x0, #14]                                        <== NOT EXECUTED
    40037e90:   f94057e0    ldr x0, [sp, #168]                                            <== NOT EXECUTED
    40037e94:   39003c1f    strb    wzr, [x0, #15]                                        <== NOT EXECUTED
  rtems_rfs_write_u16 (&handle->node->block_offset, block_offset);                        
    40037e98:   f94057e3    ldr x3, [sp, #168]                                            <== NOT EXECUTED
    40037e9c:   d3483ea4    ubfx    x4, x21, #8, #8                                       <== NOT EXECUTED
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40037ea0:   52800022    mov w2, #0x1                    // #1                         <== NOT EXECUTED
  rc = rtems_rfs_inode_close (fs, &inode);                                                
    40037ea4:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
    40037ea8:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
  rtems_rfs_write_u16 (&handle->node->block_offset, block_offset);                        
    40037eac:   39002864    strb    w4, [x3, #10]                                         <== NOT EXECUTED
    40037eb0:   f94057e3    ldr x3, [sp, #168]                                            <== NOT EXECUTED
    40037eb4:   39002c75    strb    w21, [x3, #11]                                        <== NOT EXECUTED
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40037eb8:   3902c3e2    strb    w2, [sp, #176]                                        <== NOT EXECUTED
    40037ebc:   97ffc419    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
    40037ec0:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
  return rc;                                                                              
    40037ec4:   17ffffd0    b   40037e04 <rtems_rfs_symlink+0xa4>                         <== NOT EXECUTED
    printf ("rtems-rfs: symlink: parent:%" PRIu32 " name:", parent);                      
    40037ec8:   2a1703e1    mov w1, w23                                                   <== NOT EXECUTED
    40037ecc:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037ed0:   91150000    add x0, x0, #0x540                                            <== NOT EXECUTED
    40037ed4:   97ffa94f    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    for (c = 0; c < length; c++)                                                          
    40037ed8:   7100037f    cmp w27, #0x0                                                 <== NOT EXECUTED
    40037edc:   5400012d    b.le    40037f00 <rtems_rfs_symlink+0x1a0>                    <== NOT EXECUTED
    40037ee0:   5100077b    sub w27, w27, #0x1                                            <== NOT EXECUTED
    40037ee4:   910006c0    add x0, x22, #0x1                                             <== NOT EXECUTED
    40037ee8:   8b00037b    add x27, x27, x0                                              <== NOT EXECUTED
    40037eec:   aa1603f3    mov x19, x22                                                  <== NOT EXECUTED
      printf ("%c", name[c]);                                                             
    40037ef0:   38401660    ldrb    w0, [x19], #1                                         <== NOT EXECUTED
    40037ef4:   94001843    bl  4003e000 <putchar>                                        <== NOT EXECUTED
    for (c = 0; c < length; c++)                                                          
    40037ef8:   eb1b027f    cmp x19, x27                                                  <== NOT EXECUTED
    40037efc:   54ffffa1    b.ne    40037ef0 <rtems_rfs_symlink+0x190>  // b.any          <== NOT EXECUTED
    printf (" link:");                                                                    
    40037f00:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037f04:   9115a000    add x0, x0, #0x568                                            <== NOT EXECUTED
    40037f08:   97ffa942    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    for (c = 0; c < link_length; c++)                                                     
    40037f0c:   710002bf    cmp w21, #0x0                                                 <== NOT EXECUTED
    40037f10:   54fff50d    b.le    40037db0 <rtems_rfs_symlink+0x50>                     <== NOT EXECUTED
    40037f14:   510006bb    sub w27, w21, #0x1                                            <== NOT EXECUTED
    40037f18:   91000700    add x0, x24, #0x1                                             <== NOT EXECUTED
    40037f1c:   8b00037b    add x27, x27, x0                                              <== NOT EXECUTED
    40037f20:   aa1803f3    mov x19, x24                                                  <== NOT EXECUTED
    40037f24:   d503201f    nop                                                           <== NOT EXECUTED
      printf ("%c", link[c]);                                                             
    40037f28:   38401660    ldrb    w0, [x19], #1                                         <== NOT EXECUTED
    40037f2c:   94001835    bl  4003e000 <putchar>                                        <== NOT EXECUTED
    for (c = 0; c < link_length; c++)                                                     
    40037f30:   eb13037f    cmp x27, x19                                                  <== NOT EXECUTED
    40037f34:   54ffffa1    b.ne    40037f28 <rtems_rfs_symlink+0x1c8>  // b.any          <== NOT EXECUTED
    40037f38:   17ffff9e    b   40037db0 <rtems_rfs_symlink+0x50>                         <== NOT EXECUTED
    rc = rtems_rfs_block_map_open (fs, &inode, &map);                                     
    40037f3c:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
    40037f40:   910343e2    add x2, sp, #0xd0                                             <== NOT EXECUTED
    40037f44:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40037f48:   97ffef6e    bl  40033d00 <rtems_rfs_block_map_open>                       <== NOT EXECUTED
    40037f4c:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
    if (rc > 0)                                                                           
    40037f50:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40037f54:   5400052c    b.gt    40037ff8 <rtems_rfs_symlink+0x298>                    <== NOT EXECUTED
    rc = rtems_rfs_block_map_grow (fs, &map, 1, &block);                                  
    40037f58:   9101f3e3    add x3, sp, #0x7c                                             <== NOT EXECUTED
    40037f5c:   910343e1    add x1, sp, #0xd0                                             <== NOT EXECUTED
    40037f60:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40037f64:   d2800022    mov x2, #0x1                    // #1                         <== NOT EXECUTED
    40037f68:   97fff0b2    bl  40034230 <rtems_rfs_block_map_grow>                       <== NOT EXECUTED
    40037f6c:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
    if (rc > 0)                                                                           
    40037f70:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40037f74:   540004ac    b.gt    40038008 <rtems_rfs_symlink+0x2a8>                    <== NOT EXECUTED
    rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, false);                     
    40037f78:   b9407fe2    ldr w2, [sp, #124]                                            <== NOT EXECUTED
    40037f7c:   910203e1    add x1, sp, #0x80                                             <== NOT EXECUTED
    40037f80:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40037f84:   52800003    mov w3, #0x0                    // #0                         <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40037f88:   390203ff    strb    wzr, [sp, #128]                                       <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    40037f8c:   b90087ff    str wzr, [sp, #132]                                           <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40037f90:   f90047ff    str xzr, [sp, #136]                                           <== NOT EXECUTED
    40037f94:   97ffbc0f    bl  40026fd0 <rtems_rfs_buffer_handle_request>                <== NOT EXECUTED
    40037f98:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
    if (rc > 0)                                                                           
    40037f9c:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40037fa0:   5400034c    b.gt    40038008 <rtems_rfs_symlink+0x2a8>                    <== NOT EXECUTED
    data = rtems_rfs_buffer_data (&buffer);                                               
    40037fa4:   f94047e0    ldr x0, [sp, #136]                                            <== NOT EXECUTED
    memset (data, 0xff, rtems_rfs_fs_block_size (fs));                                    
    40037fa8:   52801fe1    mov w1, #0xff                   // #255                       <== NOT EXECUTED
    40037fac:   f9400a82    ldr x2, [x20, #16]                                            <== NOT EXECUTED
    data = rtems_rfs_buffer_data (&buffer);                                               
    40037fb0:   f9401c03    ldr x3, [x0, #56]                                             <== NOT EXECUTED
    memset (data, 0xff, rtems_rfs_fs_block_size (fs));                                    
    40037fb4:   aa0303e0    mov x0, x3                                                    <== NOT EXECUTED
    40037fb8:   940017fd    bl  4003dfac <memset>                                         <== NOT EXECUTED
    memcpy (data, link, link_length);                                                     
    40037fbc:   aa1b03e2    mov x2, x27                                                   <== NOT EXECUTED
    40037fc0:   aa1803e1    mov x1, x24                                                   <== NOT EXECUTED
    40037fc4:   940017a4    bl  4003de54 <memcpy>                                         <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40037fc8:   910203e1    add x1, sp, #0x80                                             <== NOT EXECUTED
    40037fcc:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40037fd0:   97ffbcb0    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40037fd4:   390203ff    strb    wzr, [sp, #128]                                       <== NOT EXECUTED
    rc = rtems_rfs_block_map_close (fs, &map);                                            
    40037fd8:   910343e1    add x1, sp, #0xd0                                             <== NOT EXECUTED
    40037fdc:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    40037fe0:   b90087ff    str wzr, [sp, #132]                                           <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    40037fe4:   f90047ff    str xzr, [sp, #136]                                           <== NOT EXECUTED
    40037fe8:   97ffefaa    bl  40033e90 <rtems_rfs_block_map_close>                      <== NOT EXECUTED
    40037fec:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
    if (rc > 0)                                                                           
    40037ff0:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40037ff4:   54fff52d    b.le    40037e98 <rtems_rfs_symlink+0x138>                    <== NOT EXECUTED
      rtems_rfs_inode_close (fs, &inode);                                                 
    40037ff8:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
    40037ffc:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40038000:   97ffc3c8    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
      return rc;                                                                          
    40038004:   17ffff80    b   40037e04 <rtems_rfs_symlink+0xa4>                         <== NOT EXECUTED
      rtems_rfs_block_map_close (fs, &map);                                               
    40038008:   910343e1    add x1, sp, #0xd0                                             <== NOT EXECUTED
    4003800c:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40038010:   97ffefa0    bl  40033e90 <rtems_rfs_block_map_close>                      <== NOT EXECUTED
    40038014:   17fffff9    b   40037ff8 <rtems_rfs_symlink+0x298>                        <== NOT EXECUTED
    ...                                                                                   
                                                                                          

0000000040038020 <rtems_rfs_symlink_read>: rtems_rfs_symlink_read (rtems_rfs_file_system* fs, rtems_rfs_ino link, char* path, size_t size, size_t* length) {
    40038020:   a9b07bfd    stp x29, x30, [sp, #-256]!                                    <== NOT EXECUTED
    40038024:   910003fd    mov x29, sp                                                   <== NOT EXECUTED
    40038028:   a90153f3    stp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    4003802c:   aa0003f4    mov x20, x0                                                   <== NOT EXECUTED
    40038030:   2a0103f3    mov w19, w1                                                   <== NOT EXECUTED
  rtems_rfs_inode_handle inode;                                                           
  int                    rc;                                                              
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_SYMLINK_READ))                                     
    40038034:   d2c00080    mov x0, #0x400000000            // #17179869184               <== NOT EXECUTED
{                                                                                         
    40038038:   a9025bf5    stp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    4003803c:   aa0203f6    mov x22, x2                                                   <== NOT EXECUTED
    40038040:   aa0403f5    mov x21, x4                                                   <== NOT EXECUTED
    40038044:   f9001bf7    str x23, [sp, #48]                                            <== NOT EXECUTED
    40038048:   aa0303f7    mov x23, x3                                                   <== NOT EXECUTED
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_SYMLINK_READ))                                     
    4003804c:   97ffca81    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40038050:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40038054:   54000c41    b.ne    400381dc <rtems_rfs_symlink_read+0x1bc>  // b.any     <== NOT EXECUTED
    printf ("rtems-rfs: symlink-read: link:%" PRIu32 "\n", link);                         
                                                                                          
  rc = rtems_rfs_inode_open (fs, link, &inode, true);                                     
    40038058:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    4003805c:   910183e2    add x2, sp, #0x60                                             <== NOT EXECUTED
    40038060:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40038064:   52800023    mov w3, #0x1                    // #1                         <== NOT EXECUTED
    40038068:   97ffc332    bl  40028d30 <rtems_rfs_inode_open>                           <== NOT EXECUTED
    4003806c:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
  if (rc)                                                                                 
    40038070:   35000400    cbnz    w0, 400380f0 <rtems_rfs_symlink_read+0xd0>            <== NOT EXECUTED
  return rtems_rfs_read_u16 (&handle->node->mode);                                        
    40038074:   f9403fe1    ldr x1, [sp, #120]                                            <== NOT EXECUTED
    return rc;                                                                            
                                                                                          
  if (!RTEMS_RFS_S_ISLNK (rtems_rfs_inode_get_mode (&inode)))                             
    40038078:   39400822    ldrb    w2, [x1, #2]                                          <== NOT EXECUTED
    4003807c:   39400c20    ldrb    w0, [x1, #3]                                          <== NOT EXECUTED
    40038080:   aa002040    orr x0, x2, x0, lsl #8                                        <== NOT EXECUTED
    40038084:   5ac00400    rev16   w0, w0                                                <== NOT EXECUTED
    40038088:   12140c00    and w0, w0, #0xf000                                           <== NOT EXECUTED
    4003808c:   7140281f    cmp w0, #0xa, lsl #12                                         <== NOT EXECUTED
    40038090:   54000be1    b.ne    4003820c <rtems_rfs_symlink_read+0x1ec>  // b.any     <== NOT EXECUTED
  {                                                                                       
    rtems_rfs_inode_close (fs, &inode);                                                   
    return EINVAL;                                                                        
  }                                                                                       
                                                                                          
  *length = rtems_rfs_inode_get_block_offset (&inode);                                    
    40038094:   39402822    ldrb    w2, [x1, #10]                                         <== NOT EXECUTED
    40038098:   39402c25    ldrb    w5, [x1, #11]                                         <== NOT EXECUTED
    4003809c:   aa052045    orr x5, x2, x5, lsl #8                                        <== NOT EXECUTED
    400380a0:   5ac004a5    rev16   w5, w5                                                <== NOT EXECUTED
    400380a4:   92403ca5    and x5, x5, #0xffff                                           <== NOT EXECUTED
    400380a8:   eb1700bf    cmp x5, x23                                                   <== NOT EXECUTED
    400380ac:   9a9790a2    csel    x2, x5, x23, ls  // ls = plast                        <== NOT EXECUTED
    400380b0:   f90002a2    str x2, [x21]                                                 <== NOT EXECUTED
  return rtems_rfs_read_u32 (&handle->node->block_count);                                 
    400380b4:   39403025    ldrb    w5, [x1, #12]                                         <== NOT EXECUTED
    400380b8:   39403424    ldrb    w4, [x1, #13]                                         <== NOT EXECUTED
    400380bc:   39403823    ldrb    w3, [x1, #14]                                         <== NOT EXECUTED
    400380c0:   39403c20    ldrb    w0, [x1, #15]                                         <== NOT EXECUTED
    400380c4:   aa0420a4    orr x4, x5, x4, lsl #8                                        <== NOT EXECUTED
    400380c8:   aa034083    orr x3, x4, x3, lsl #16                                       <== NOT EXECUTED
    400380cc:   aa006060    orr x0, x3, x0, lsl #24                                       <== NOT EXECUTED
  if (size < *length)                                                                     
  {                                                                                       
    *length = size;                                                                       
  }                                                                                       
                                                                                          
  if (rtems_rfs_inode_get_block_count (&inode) == 0)                                      
    400380d0:   b50001c0    cbnz    x0, 40038108 <rtems_rfs_symlink_read+0xe8>            <== NOT EXECUTED
  {                                                                                       
    memcpy (path, inode.node->data.name, *length);                                        
    400380d4:   91007021    add x1, x1, #0x1c                                             <== NOT EXECUTED
    400380d8:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    400380dc:   9400175e    bl  4003de54 <memcpy>                                         <== NOT EXECUTED
      rtems_rfs_inode_close (fs, &inode);                                                 
      return rc;                                                                          
    }                                                                                     
  }                                                                                       
                                                                                          
  rc = rtems_rfs_inode_close (fs, &inode);                                                
    400380e0:   910183e1    add x1, sp, #0x60                                             <== NOT EXECUTED
    400380e4:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    400380e8:   97ffc38e    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
    400380ec:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
                                                                                          
  return rc;                                                                              
}                                                                                         
    400380f0:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    400380f4:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    400380f8:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    400380fc:   f9401bf7    ldr x23, [sp, #48]                                            <== NOT EXECUTED
    40038100:   a8d07bfd    ldp x29, x30, [sp], #256                                      <== NOT EXECUTED
    40038104:   d65f03c0    ret                                                           <== NOT EXECUTED
    rc = rtems_rfs_block_map_open (fs, &inode, &map);                                     
    40038108:   910183e1    add x1, sp, #0x60                                             <== NOT EXECUTED
    4003810c:   910283e2    add x2, sp, #0xa0                                             <== NOT EXECUTED
    40038110:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40038114:   97ffeefb    bl  40033d00 <rtems_rfs_block_map_open>                       <== NOT EXECUTED
    40038118:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
    if (rc > 0)                                                                           
    4003811c:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40038120:   540004cc    b.gt    400381b8 <rtems_rfs_symlink_read+0x198>               <== NOT EXECUTED
    rc = rtems_rfs_block_map_seek (fs, &map, 0, &block);                                  
    40038124:   910133e3    add x3, sp, #0x4c                                             <== NOT EXECUTED
    40038128:   910283e1    add x1, sp, #0xa0                                             <== NOT EXECUTED
    4003812c:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40038130:   d2800002    mov x2, #0x0                    // #0                         <== NOT EXECUTED
    40038134:   97fff023    bl  400341c0 <rtems_rfs_block_map_seek>                       <== NOT EXECUTED
    40038138:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
    if (rc > 0)                                                                           
    4003813c:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    40038140:   5400058c    b.gt    400381f0 <rtems_rfs_symlink_read+0x1d0>               <== NOT EXECUTED
    rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, false);                     
    40038144:   b9404fe2    ldr w2, [sp, #76]                                             <== NOT EXECUTED
    40038148:   910143e1    add x1, sp, #0x50                                             <== NOT EXECUTED
    4003814c:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40038150:   52800003    mov w3, #0x0                    // #0                         <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40038154:   390143ff    strb    wzr, [sp, #80]                                        <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    40038158:   b90057ff    str wzr, [sp, #84]                                            <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    4003815c:   f9002fff    str xzr, [sp, #88]                                            <== NOT EXECUTED
    40038160:   97ffbb9c    bl  40026fd0 <rtems_rfs_buffer_handle_request>                <== NOT EXECUTED
    40038164:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
    if (rc > 0)                                                                           
    40038168:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    4003816c:   5400042c    b.gt    400381f0 <rtems_rfs_symlink_read+0x1d0>               <== NOT EXECUTED
    data = rtems_rfs_buffer_data (&buffer);                                               
    40038170:   f9402fe1    ldr x1, [sp, #88]                                             <== NOT EXECUTED
    memcpy (path, data, *length);                                                         
    40038174:   aa1603e0    mov x0, x22                                                   <== NOT EXECUTED
    40038178:   f94002a2    ldr x2, [x21]                                                 <== NOT EXECUTED
    4003817c:   f9401c21    ldr x1, [x1, #56]                                             <== NOT EXECUTED
    40038180:   94001735    bl  4003de54 <memcpy>                                         <== NOT EXECUTED
  rtems_rfs_buffer_handle_release (fs, handle);                                           
    40038184:   910143e1    add x1, sp, #0x50                                             <== NOT EXECUTED
    40038188:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    4003818c:   97ffbc41    bl  40027290 <rtems_rfs_buffer_handle_release>                <== NOT EXECUTED
  handle->dirty = false;                                                                  
    40038190:   390143ff    strb    wzr, [sp, #80]                                        <== NOT EXECUTED
    rc = rtems_rfs_block_map_close (fs, &map);                                            
    40038194:   910283e1    add x1, sp, #0xa0                                             <== NOT EXECUTED
    40038198:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
  handle->bnum  = 0;                                                                      
    4003819c:   b90057ff    str wzr, [sp, #84]                                            <== NOT EXECUTED
  handle->buffer = NULL;                                                                  
    400381a0:   f9002fff    str xzr, [sp, #88]                                            <== NOT EXECUTED
    400381a4:   97ffef3b    bl  40033e90 <rtems_rfs_block_map_close>                      <== NOT EXECUTED
    400381a8:   2a0003f3    mov w19, w0                                                   <== NOT EXECUTED
    if (rc > 0)                                                                           
    400381ac:   7100001f    cmp w0, #0x0                                                  <== NOT EXECUTED
    400381b0:   54fff98d    b.le    400380e0 <rtems_rfs_symlink_read+0xc0>                <== NOT EXECUTED
    400381b4:   d503201f    nop                                                           <== NOT EXECUTED
      rtems_rfs_inode_close (fs, &inode);                                                 
    400381b8:   910183e1    add x1, sp, #0x60                                             <== NOT EXECUTED
    400381bc:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    400381c0:   97ffc358    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
}                                                                                         
    400381c4:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    400381c8:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    400381cc:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    400381d0:   f9401bf7    ldr x23, [sp, #48]                                            <== NOT EXECUTED
    400381d4:   a8d07bfd    ldp x29, x30, [sp], #256                                      <== NOT EXECUTED
    400381d8:   d65f03c0    ret                                                           <== NOT EXECUTED
    printf ("rtems-rfs: symlink-read: link:%" PRIu32 "\n", link);                         
    400381dc:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    400381e0:   f0000080    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    400381e4:   9115c000    add x0, x0, #0x570                                            <== NOT EXECUTED
    400381e8:   97ffa88a    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    400381ec:   17ffff9b    b   40038058 <rtems_rfs_symlink_read+0x38>                    <== NOT EXECUTED
      rtems_rfs_block_map_close (fs, &map);                                               
    400381f0:   910283e1    add x1, sp, #0xa0                                             <== NOT EXECUTED
    400381f4:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    400381f8:   97ffef26    bl  40033e90 <rtems_rfs_block_map_close>                      <== NOT EXECUTED
      rtems_rfs_inode_close (fs, &inode);                                                 
    400381fc:   910183e1    add x1, sp, #0x60                                             <== NOT EXECUTED
    40038200:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40038204:   97ffc347    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
      return rc;                                                                          
    40038208:   17ffffef    b   400381c4 <rtems_rfs_symlink_read+0x1a4>                   <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &inode);                                                   
    4003820c:   910183e1    add x1, sp, #0x60                                             <== NOT EXECUTED
    40038210:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    return EINVAL;                                                                        
    40038214:   528002d3    mov w19, #0x16                      // #22                    <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &inode);                                                   
    40038218:   97ffc342    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
}                                                                                         
    4003821c:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40038220:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40038224:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40038228:   f9401bf7    ldr x23, [sp, #48]                                            <== NOT EXECUTED
    4003822c:   a8d07bfd    ldp x29, x30, [sp], #256                                      <== NOT EXECUTED
    40038230:   d65f03c0    ret                                                           <== NOT EXECUTED
    ...                                                                                   
                                                                                          

00000000400378f0 <rtems_rfs_unlink>: rtems_rfs_unlink (rtems_rfs_file_system* fs, rtems_rfs_ino parent, rtems_rfs_ino target, uint32_t doff, rtems_rfs_unlink_dir dir_mode) {
    400378f0:   a9b37bfd    stp x29, x30, [sp, #-208]!                                    
    400378f4:   910003fd    mov x29, sp                                                   
    400378f8:   a90153f3    stp x19, x20, [sp, #16]                                       
    400378fc:   aa0003f4    mov x20, x0                                                   
  rtems_rfs_inode_handle target_inode;                                                    
  uint16_t               links;                                                           
  bool                   dir;                                                             
  int                    rc;                                                              
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))                                           
    40037900:   d2a04000    mov x0, #0x2000000              // #33554432                  
{                                                                                         
    40037904:   a9025bf5    stp x21, x22, [sp, #32]                                       
    40037908:   2a0203f6    mov w22, w2                                                   
    4003790c:   a90363f7    stp x23, x24, [sp, #48]                                       
    40037910:   2a0103f7    mov w23, w1                                                   
    40037914:   2a0403f8    mov w24, w4                                                   
    40037918:   f90023f9    str x25, [sp, #64]                                            
    4003791c:   2a0303f9    mov w25, w3                                                   
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))                                           
    40037920:   97ffcc4c    bl  4002aa50 <rtems_rfs_trace>                                
    40037924:   72001c1f    tst w0, #0xff                                                 
    40037928:   54000a61    b.ne    40037a74 <rtems_rfs_unlink+0x184>  // b.any           <== NEVER TAKEN
    printf ("rtems-rfs: unlink: parent(%" PRIu32 ") -X-> (%" PRIu32 ")\n", parent, target);
                                                                                          
  rc = rtems_rfs_inode_open (fs, target, &target_inode, true);                            
    4003792c:   910243e2    add x2, sp, #0x90                                             
    40037930:   2a1603e1    mov w1, w22                                                   
    40037934:   aa1403e0    mov x0, x20                                                   
    40037938:   52800023    mov w3, #0x1                    // #1                         
    4003793c:   97ffc4fd    bl  40028d30 <rtems_rfs_inode_open>                           
    40037940:   2a0003f3    mov w19, w0                                                   
  if (rc)                                                                                 
    40037944:   350008a0    cbnz    w0, 40037a58 <rtems_rfs_unlink+0x168>                 <== NEVER TAKEN
  return rtems_rfs_read_u16 (&handle->node->mode);                                        
    40037948:   f94057e0    ldr x0, [sp, #168]                                            
    4003794c:   39400801    ldrb    w1, [x0, #2]                                          
    40037950:   39400c15    ldrb    w21, [x0, #3]                                         
    40037954:   aa152035    orr x21, x1, x21, lsl #8                                      
    40037958:   5ac006b5    rev16   w21, w21                                              
    4003795c:   12140eb5    and w21, w21, #0xf000                                         
  /*                                                                                      
   * If a directory process the unlink mode.                                              
   */                                                                                     
                                                                                          
  dir = RTEMS_RFS_S_ISDIR (rtems_rfs_inode_get_mode (&target_inode));                     
  if (dir)                                                                                
    40037960:   714012bf    cmp w21, #0x4, lsl #12                                        
    40037964:   54000081    b.ne    40037974 <rtems_rfs_unlink+0x84>  // b.any            
  {                                                                                       
    switch (dir_mode)                                                                     
    40037968:   34001118    cbz w24, 40037b88 <rtems_rfs_unlink+0x298>                    <== NEVER TAKEN
    4003796c:   7100071f    cmp w24, #0x1                                                 
    40037970:   54000aa0    b.eq    40037ac4 <rtems_rfs_unlink+0x1d4>  // b.none          <== ALWAYS TAKEN
      default:                                                                            
        break;                                                                            
    }                                                                                     
  }                                                                                       
                                                                                          
  rc = rtems_rfs_inode_open (fs, parent, &parent_inode, true);                            
    40037974:   2a1703e1    mov w1, w23                                                   
    40037978:   910143e2    add x2, sp, #0x50                                             
    4003797c:   aa1403e0    mov x0, x20                                                   
    40037980:   52800023    mov w3, #0x1                    // #1                         
    40037984:   97ffc4eb    bl  40028d30 <rtems_rfs_inode_open>                           
    40037988:   2a0003f3    mov w19, w0                                                   
  if (rc)                                                                                 
    4003798c:   35000800    cbnz    w0, 40037a8c <rtems_rfs_unlink+0x19c>                 <== NEVER TAKEN
              rc, strerror (rc));                                                         
    rtems_rfs_inode_close (fs, &target_inode);                                            
    return rc;                                                                            
  }                                                                                       
                                                                                          
  rc = rtems_rfs_dir_del_entry (fs, &parent_inode, target, doff);                         
    40037990:   2a1903e3    mov w3, w25                                                   
    40037994:   2a1603e2    mov w2, w22                                                   
    40037998:   910143e1    add x1, sp, #0x50                                             
    4003799c:   aa1403e0    mov x0, x20                                                   
    400379a0:   97fff670    bl  40035360 <rtems_rfs_dir_del_entry>                        
    400379a4:   2a0003f3    mov w19, w0                                                   
  if (rc > 0)                                                                             
    400379a8:   7100001f    cmp w0, #0x0                                                  
    400379ac:   540012ec    b.gt    40037c08 <rtems_rfs_unlink+0x318>                     <== NEVER TAKEN
  links = rtems_rfs_read_u16 (&handle->node->links);                                      
    400379b0:   f94057e0    ldr x0, [sp, #168]                                            
  if (links == 0xffff)                                                                    
    400379b4:   529fffe1    mov w1, #0xffff                 // #65535                     
    400379b8:   39400002    ldrb    w2, [x0]                                              
    400379bc:   39400413    ldrb    w19, [x0, #1]                                         
    return rc;                                                                            
  }                                                                                       
                                                                                          
  links = rtems_rfs_inode_get_links (&target_inode);                                      
                                                                                          
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))                                           
    400379c0:   d2a04000    mov x0, #0x2000000              // #33554432                  
    400379c4:   aa132053    orr x19, x2, x19, lsl #8                                      
    400379c8:   5ac00673    rev16   w19, w19                                              
    400379cc:   12003e73    and w19, w19, #0xffff                                         
    400379d0:   6b01027f    cmp w19, w1                                                   
    400379d4:   540009c0    b.eq    40037b0c <rtems_rfs_unlink+0x21c>  // b.none          <== NEVER TAKEN
    400379d8:   97ffcc1e    bl  4002aa50 <rtems_rfs_trace>                                
    400379dc:   72001c1f    tst w0, #0xff                                                 
    400379e0:   54001541    b.ne    40037c88 <rtems_rfs_unlink+0x398>  // b.any           <== NEVER TAKEN
    printf ("rtems-rfs: unlink: target:%" PRIu32 " links:%u\n", target, links);           
                                                                                          
  if (links > 1)                                                                          
    400379e4:   7100067f    cmp w19, #0x1                                                 
    400379e8:   54000989    b.ls    40037b18 <rtems_rfs_unlink+0x228>  // b.plast         <== ALWAYS TAKEN
  rtems_rfs_write_u16 (&handle->node->links, links);                                      
    400379ec:   f94057e1    ldr x1, [sp, #168]                                            <== NOT EXECUTED
  {                                                                                       
    links--;                                                                              
    400379f0:   51000673    sub w19, w19, #0x1                                            <== NOT EXECUTED
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    400379f4:   52800020    mov w0, #0x1                    // #1                         <== NOT EXECUTED
  rtems_rfs_write_u16 (&handle->node->links, links);                                      
    400379f8:   d3483e62    ubfx    x2, x19, #8, #8                                       <== NOT EXECUTED
    400379fc:   39000022    strb    w2, [x1]                                              <== NOT EXECUTED
    40037a00:   f94057e1    ldr x1, [sp, #168]                                            <== NOT EXECUTED
    40037a04:   39000433    strb    w19, [x1, #1]                                         <== NOT EXECUTED
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40037a08:   3902c3e0    strb    w0, [sp, #176]                                        <== NOT EXECUTED
        links--;                                                                          
      rtems_rfs_inode_set_links (&parent_inode, links);                                   
    }                                                                                     
  }                                                                                       
                                                                                          
  rc = rtems_rfs_inode_time_stamp_now (&parent_inode, true, true);                        
    40037a0c:   52800022    mov w2, #0x1                    // #1                         
    40037a10:   910143e0    add x0, sp, #0x50                                             
    40037a14:   2a0203e1    mov w1, w2                                                    
    40037a18:   97ffc5ba    bl  40029100 <rtems_rfs_inode_time_stamp_now>                 
    40037a1c:   2a0003f3    mov w19, w0                                                   
  if (rc > 0)                                                                             
    40037a20:   7100001f    cmp w0, #0x0                                                  
    40037a24:   54000d0c    b.gt    40037bc4 <rtems_rfs_unlink+0x2d4>                     <== NEVER TAKEN
    rtems_rfs_inode_close (fs, &parent_inode);                                            
    rtems_rfs_inode_close (fs, &target_inode);                                            
    return rc;                                                                            
  }                                                                                       
                                                                                          
  rc = rtems_rfs_inode_close (fs, &parent_inode);                                         
    40037a28:   910143e1    add x1, sp, #0x50                                             
    40037a2c:   aa1403e0    mov x0, x20                                                   
    40037a30:   97ffc53c    bl  40028f20 <rtems_rfs_inode_close>                          
    40037a34:   2a0003f3    mov w19, w0                                                   
  if (rc > 0)                                                                             
    40037a38:   7100001f    cmp w0, #0x0                                                  
    40037a3c:   540010ec    b.gt    40037c58 <rtems_rfs_unlink+0x368>                     <== NEVER TAKEN
              rc, strerror (rc));                                                         
    rtems_rfs_inode_close (fs, &target_inode);                                            
    return rc;                                                                            
  }                                                                                       
                                                                                          
  rc = rtems_rfs_inode_close (fs, &target_inode);                                         
    40037a40:   910243e1    add x1, sp, #0x90                                             
    40037a44:   aa1403e0    mov x0, x20                                                   
    40037a48:   97ffc536    bl  40028f20 <rtems_rfs_inode_close>                          
    40037a4c:   2a0003f3    mov w19, w0                                                   
                                                                                          
  if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))                               
    40037a50:   7100001f    cmp w0, #0x0                                                  
    40037a54:   5400126c    b.gt    40037ca0 <rtems_rfs_unlink+0x3b0>                     <== NEVER TAKEN
    printf ("rtems-rfs: link: target inode-close failed: %d: %s\n",                       
            rc, strerror (rc));                                                           
                                                                                          
  return rc;                                                                              
}                                                                                         
    40037a58:   2a1303e0    mov w0, w19                                                   
    40037a5c:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40037a60:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40037a64:   a94363f7    ldp x23, x24, [sp, #48]                                       
    40037a68:   f94023f9    ldr x25, [sp, #64]                                            
    40037a6c:   a8cd7bfd    ldp x29, x30, [sp], #208                                      
    40037a70:   d65f03c0    ret                                                           
    printf ("rtems-rfs: unlink: parent(%" PRIu32 ") -X-> (%" PRIu32 ")\n", parent, target);
    40037a74:   2a1603e2    mov w2, w22                                                   <== NOT EXECUTED
    40037a78:   2a1703e1    mov w1, w23                                                   <== NOT EXECUTED
    40037a7c:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037a80:   910dc000    add x0, x0, #0x370                                            <== NOT EXECUTED
    40037a84:   97ffaa63    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40037a88:   17ffffa9    b   4003792c <rtems_rfs_unlink+0x3c>                          <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))                                         
    40037a8c:   d2a04000    mov x0, #0x2000000              // #33554432                  <== NOT EXECUTED
    40037a90:   97ffcbf0    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40037a94:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037a98:   54000d01    b.ne    40037c38 <rtems_rfs_unlink+0x348>  // b.any           <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &target_inode);                                            
    40037a9c:   910243e1    add x1, sp, #0x90                                             
    40037aa0:   aa1403e0    mov x0, x20                                                   
    40037aa4:   97ffc51f    bl  40028f20 <rtems_rfs_inode_close>                          
}                                                                                         
    40037aa8:   2a1303e0    mov w0, w19                                                   
    40037aac:   a94153f3    ldp x19, x20, [sp, #16]                                       
    40037ab0:   a9425bf5    ldp x21, x22, [sp, #32]                                       
    40037ab4:   a94363f7    ldp x23, x24, [sp, #48]                                       
    40037ab8:   f94023f9    ldr x25, [sp, #64]                                            
    40037abc:   a8cd7bfd    ldp x29, x30, [sp], #208                                      
    40037ac0:   d65f03c0    ret                                                           
        rc = rtems_rfs_dir_empty (fs, &target_inode);                                     
    40037ac4:   910243e1    add x1, sp, #0x90                                             
    40037ac8:   aa1403e0    mov x0, x20                                                   
    40037acc:   97fff7f9    bl  40035ab0 <rtems_rfs_dir_empty>                            
    40037ad0:   2a0003f3    mov w19, w0                                                   
        if (rc > 0)                                                                       
    40037ad4:   7100001f    cmp w0, #0x0                                                  
    40037ad8:   54fff4ed    b.le    40037974 <rtems_rfs_unlink+0x84>                      
          if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))                                   
    40037adc:   d2a04000    mov x0, #0x2000000              // #33554432                  
    40037ae0:   97ffcbdc    bl  4002aa50 <rtems_rfs_trace>                                
    40037ae4:   72001c1f    tst w0, #0xff                                                 
    40037ae8:   54fffda0    b.eq    40037a9c <rtems_rfs_unlink+0x1ac>  // b.none          <== ALWAYS TAKEN
            printf ("rtems-rfs: dir-empty: %d: %s\n", rc, strerror (rc));                 
    40037aec:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40037af0:   94001c4b    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40037af4:   900000a1    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037af8:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40037afc:   910f0020    add x0, x1, #0x3c0                                            <== NOT EXECUTED
    40037b00:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40037b04:   97ffaa43    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
          rtems_rfs_inode_close (fs, &target_inode);                                      
    40037b08:   17ffffe5    b   40037a9c <rtems_rfs_unlink+0x1ac>                         <== NOT EXECUTED
  if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))                                           
    40037b0c:   97ffcbd1    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40037b10:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037b14:   540010e1    b.ne    40037d30 <rtems_rfs_unlink+0x440>  // b.any           <== NOT EXECUTED
    rc = rtems_rfs_inode_delete (fs, &target_inode);                                      
    40037b18:   910243e1    add x1, sp, #0x90                                             
    40037b1c:   aa1403e0    mov x0, x20                                                   
    40037b20:   97ffc528    bl  40028fc0 <rtems_rfs_inode_delete>                         
    40037b24:   2a0003f3    mov w19, w0                                                   
    if (rc > 0)                                                                           
    40037b28:   7100001f    cmp w0, #0x0                                                  
    40037b2c:   54000d2c    b.gt    40037cd0 <rtems_rfs_unlink+0x3e0>                     <== NEVER TAKEN
    if (dir)                                                                              
    40037b30:   714012bf    cmp w21, #0x4, lsl #12                                        
    40037b34:   54fff6c1    b.ne    40037a0c <rtems_rfs_unlink+0x11c>  // b.any           
  links = rtems_rfs_read_u16 (&handle->node->links);                                      
    40037b38:   f94037e1    ldr x1, [sp, #104]                                            
  if (links == 0xffff)                                                                    
    40037b3c:   529fffe2    mov w2, #0xffff                 // #65535                     
    40037b40:   39400023    ldrb    w3, [x1]                                              
    40037b44:   39400420    ldrb    w0, [x1, #1]                                          
    40037b48:   aa002060    orr x0, x3, x0, lsl #8                                        
    40037b4c:   5ac00400    rev16   w0, w0                                                
    40037b50:   12003c00    and w0, w0, #0xffff                                           
    40037b54:   6b02001f    cmp w0, w2                                                    
    40037b58:   54000f80    b.eq    40037d48 <rtems_rfs_unlink+0x458>  // b.none          <== NEVER TAKEN
      if (links > 1)                                                                      
    40037b5c:   7100041f    cmp w0, #0x1                                                  
    40037b60:   54000fa9    b.ls    40037d54 <rtems_rfs_unlink+0x464>  // b.plast         <== NEVER TAKEN
        links--;                                                                          
    40037b64:   51000400    sub w0, w0, #0x1                                              
  rtems_rfs_write_u16 (&handle->node->links, links);                                      
    40037b68:   12001c02    and w2, w0, #0xff                                             
    40037b6c:   d3483c00    ubfx    x0, x0, #8, #8                                        
    40037b70:   39000020    strb    w0, [x1]                                              
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40037b74:   52800020    mov w0, #0x1                    // #1                         
  rtems_rfs_write_u16 (&handle->node->links, links);                                      
    40037b78:   f94037e1    ldr x1, [sp, #104]                                            
    40037b7c:   39000422    strb    w2, [x1, #1]                                          
  rtems_rfs_buffer_mark_dirty (&handle->buffer);                                          
    40037b80:   3901c3e0    strb    w0, [sp, #112]                                        
}                                                                                         
    40037b84:   17ffffa2    b   40037a0c <rtems_rfs_unlink+0x11c>                         
        if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))                                     
    40037b88:   d2a04000    mov x0, #0x2000000              // #33554432                  <== NOT EXECUTED
    40037b8c:   97ffcbb1    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40037b90:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037b94:   54000b61    b.ne    40037d00 <rtems_rfs_unlink+0x410>  // b.any           <== NOT EXECUTED
        rtems_rfs_inode_close (fs, &target_inode);                                        
    40037b98:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
    40037b9c:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
        return EISDIR;                                                                    
    40037ba0:   528002b3    mov w19, #0x15                      // #21                    <== NOT EXECUTED
        rtems_rfs_inode_close (fs, &target_inode);                                        
    40037ba4:   97ffc4df    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
}                                                                                         
    40037ba8:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40037bac:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40037bb0:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40037bb4:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40037bb8:   f94023f9    ldr x25, [sp, #64]                                            <== NOT EXECUTED
    40037bbc:   a8cd7bfd    ldp x29, x30, [sp], #208                                      <== NOT EXECUTED
    40037bc0:   d65f03c0    ret                                                           <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))                                         
    40037bc4:   d2a04000    mov x0, #0x2000000              // #33554432                  <== NOT EXECUTED
    40037bc8:   97ffcba2    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40037bcc:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037bd0:   54000a01    b.ne    40037d10 <rtems_rfs_unlink+0x420>  // b.any           <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &parent_inode);                                            
    40037bd4:   910143e1    add x1, sp, #0x50                                             <== NOT EXECUTED
    40037bd8:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40037bdc:   97ffc4d1    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &target_inode);                                            
    40037be0:   910243e1    add x1, sp, #0x90                                             <== NOT EXECUTED
    40037be4:   aa1403e0    mov x0, x20                                                   <== NOT EXECUTED
    40037be8:   97ffc4ce    bl  40028f20 <rtems_rfs_inode_close>                          <== NOT EXECUTED
}                                                                                         
    40037bec:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40037bf0:   a94153f3    ldp x19, x20, [sp, #16]                                       <== NOT EXECUTED
    40037bf4:   a9425bf5    ldp x21, x22, [sp, #32]                                       <== NOT EXECUTED
    40037bf8:   a94363f7    ldp x23, x24, [sp, #48]                                       <== NOT EXECUTED
    40037bfc:   f94023f9    ldr x25, [sp, #64]                                            <== NOT EXECUTED
    40037c00:   a8cd7bfd    ldp x29, x30, [sp], #208                                      <== NOT EXECUTED
    40037c04:   d65f03c0    ret                                                           <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))                                         
    40037c08:   d2a04000    mov x0, #0x2000000              // #33554432                  <== NOT EXECUTED
    40037c0c:   97ffcb91    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40037c10:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037c14:   54fffe00    b.eq    40037bd4 <rtems_rfs_unlink+0x2e4>  // b.none          <== NOT EXECUTED
      printf ("rtems-rfs: unlink: dir-del failed: %d: %s\n",                              
    40037c18:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40037c1c:   94001c00    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40037c20:   900000a1    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037c24:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40037c28:   91104020    add x0, x1, #0x410                                            <== NOT EXECUTED
    40037c2c:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40037c30:   97ffa9f8    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &parent_inode);                                            
    40037c34:   17ffffe8    b   40037bd4 <rtems_rfs_unlink+0x2e4>                         <== NOT EXECUTED
      printf ("rtems-rfs: link: inode-open failed: %d: %s\n",                             
    40037c38:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40037c3c:   94001bf8    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40037c40:   900000a1    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037c44:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40037c48:   910f8020    add x0, x1, #0x3e0                                            <== NOT EXECUTED
    40037c4c:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40037c50:   97ffa9f0    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    rtems_rfs_inode_close (fs, &target_inode);                                            
    40037c54:   17ffff92    b   40037a9c <rtems_rfs_unlink+0x1ac>                         <== NOT EXECUTED
    if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))                                         
    40037c58:   d2a04000    mov x0, #0x2000000              // #33554432                  <== NOT EXECUTED
    40037c5c:   97ffcb7d    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40037c60:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037c64:   54fff1c0    b.eq    40037a9c <rtems_rfs_unlink+0x1ac>  // b.none          <== NOT EXECUTED
      printf ("rtems-rfs: link: parent inode-close failed: %d: %s\n",                     
    40037c68:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40037c6c:   94001bec    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40037c70:   900000a1    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037c74:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40037c78:   91134020    add x0, x1, #0x4d0                                            <== NOT EXECUTED
    40037c7c:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40037c80:   97ffa9e4    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40037c84:   17ffff86    b   40037a9c <rtems_rfs_unlink+0x1ac>                         <== NOT EXECUTED
    printf ("rtems-rfs: unlink: target:%" PRIu32 " links:%u\n", target, links);           
    40037c88:   2a1603e1    mov w1, w22                                                   <== NOT EXECUTED
    40037c8c:   2a1303e2    mov w2, w19                                                   <== NOT EXECUTED
    40037c90:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037c94:   91110000    add x0, x0, #0x440                                            <== NOT EXECUTED
    40037c98:   97ffa9de    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40037c9c:   17ffff52    b   400379e4 <rtems_rfs_unlink+0xf4>                          <== NOT EXECUTED
  if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))                               
    40037ca0:   d2a04000    mov x0, #0x2000000              // #33554432                  <== NOT EXECUTED
    40037ca4:   97ffcb6b    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40037ca8:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037cac:   54ffed60    b.eq    40037a58 <rtems_rfs_unlink+0x168>  // b.none          <== NOT EXECUTED
    printf ("rtems-rfs: link: target inode-close failed: %d: %s\n",                       
    40037cb0:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40037cb4:   94001bda    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40037cb8:   900000a1    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037cbc:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40037cc0:   91142020    add x0, x1, #0x508                                            <== NOT EXECUTED
    40037cc4:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40037cc8:   97ffa9d2    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40037ccc:   17ffff63    b   40037a58 <rtems_rfs_unlink+0x168>                         <== NOT EXECUTED
      if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))                                       
    40037cd0:   d2a04000    mov x0, #0x2000000              // #33554432                  <== NOT EXECUTED
    40037cd4:   97ffcb5f    bl  4002aa50 <rtems_rfs_trace>                                <== NOT EXECUTED
    40037cd8:   72001c1f    tst w0, #0xff                                                 <== NOT EXECUTED
    40037cdc:   54fff7c0    b.eq    40037bd4 <rtems_rfs_unlink+0x2e4>  // b.none          <== NOT EXECUTED
        printf ("rtems-rfs: unlink: inode-del failed: %d: %s\n",                          
    40037ce0:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40037ce4:   94001bce    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40037ce8:   900000a1    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037cec:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40037cf0:   9111a020    add x0, x1, #0x468                                            <== NOT EXECUTED
    40037cf4:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40037cf8:   97ffa9c6    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
      rtems_rfs_inode_close (fs, &parent_inode);                                          
    40037cfc:   17ffffb6    b   40037bd4 <rtems_rfs_unlink+0x2e4>                         <== NOT EXECUTED
          printf ("rtems-rfs: link is a directory\n");                                    
    40037d00:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037d04:   910e8000    add x0, x0, #0x3a0                                            <== NOT EXECUTED
    40037d08:   97ffa9e6    bl  400224a0 <__wrap_puts>                                    <== NOT EXECUTED
    40037d0c:   17ffffa3    b   40037b98 <rtems_rfs_unlink+0x2a8>                         <== NOT EXECUTED
      printf ("rtems-rfs: link: inode-time-stamp failed: %d: %s\n",                       
    40037d10:   2a1303e0    mov w0, w19                                                   <== NOT EXECUTED
    40037d14:   94001bc2    bl  4003ec1c <strerror>                                       <== NOT EXECUTED
    40037d18:   900000a1    adrp    x1, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037d1c:   aa0003e2    mov x2, x0                                                    <== NOT EXECUTED
    40037d20:   91126020    add x0, x1, #0x498                                            <== NOT EXECUTED
    40037d24:   2a1303e1    mov w1, w19                                                   <== NOT EXECUTED
    40037d28:   97ffa9ba    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
    40037d2c:   17ffffaa    b   40037bd4 <rtems_rfs_unlink+0x2e4>                         <== NOT EXECUTED
    printf ("rtems-rfs: unlink: target:%" PRIu32 " links:%u\n", target, links);           
    40037d30:   2a1603e1    mov w1, w22                                                   <== NOT EXECUTED
    40037d34:   900000a0    adrp    x0, 4004b000 <IMFS_LIMITS_AND_OPTIONS+0xbb8>          <== NOT EXECUTED
    40037d38:   52800002    mov w2, #0x0                    // #0                         <== NOT EXECUTED
    40037d3c:   91110000    add x0, x0, #0x440                                            <== NOT EXECUTED
    40037d40:   97ffa9b4    bl  40022410 <__wrap_printf>                                  <== NOT EXECUTED
  if (links > 1)                                                                          
    40037d44:   17ffff75    b   40037b18 <rtems_rfs_unlink+0x228>                         <== NOT EXECUTED
    40037d48:   52800002    mov w2, #0x0                    // #0                         <== NOT EXECUTED
    40037d4c:   52800000    mov w0, #0x0                    // #0                         <== NOT EXECUTED
    40037d50:   17ffff88    b   40037b70 <rtems_rfs_unlink+0x280>                         <== NOT EXECUTED
  rtems_rfs_write_u16 (&handle->node->links, links);                                      
    40037d54:   12001c02    and w2, w0, #0xff                                             <== NOT EXECUTED
    40037d58:   52800000    mov w0, #0x0                    // #0                         <== NOT EXECUTED
    40037d5c:   17ffff85    b   40037b70 <rtems_rfs_unlink+0x280>                         <== NOT EXECUTED